![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выгрузка результатов в Word [D7, WinXP]
ambhtr © (2007-06-09 11:14:00)Результаты запроса вывожу в Word.
Общая схема следующая:
- На форму поместил DDE: TDdeClientConv;
- В процедуре пишем:
try
DDE.OpenLink; { устанавливаем связь }
Tv:=StrAlloc(20000);
Ss:=StrAlloc(300); { выделяем память }
…
qryDBF.First;
while not qryDBF.Eof do
begin
…
// 1 - открываем документ и становимся в начало документа
StrPCopy(Tv, '[FileOpen "'+ sNewFileName + '"][StartOfDocument]');
if not DDE.ExecuteMacro(Tv,false) then
begin
MessageDlg('1 Ошибка связи с Microsoft Word.', mtError, [mbOk], 0);
exit;
end;
…
и далее идет заполнение документа
…
qryDBF.Next;
end; // while not qryDBF.Eof do
finally
DDE.CloseLink; //Разрываем установленную ранее связь
StrDispose(Tv);
StrDispose(Ss);
end;
Но получается так, что каждый раз открывается сам Word и остается открытым и полученный файл приходиться "вручную" записывать и после этого закрывать Word.
Можно ли сделать так, чтобы выгрузка данных в Word, запись созданного файла и закрытие приложения Word, происходила без "визуализации" Worda.
Amoeba (2007-06-09 12:34:00) [1]
> ambhtr (09.06.07 11:14)
>
> Результаты запроса вывожу в Word.
> Общая схема следующая:
> - На форму поместил DDE: TDdeClientConv;
И зачем понадобилось использовать сию давно устаревшую технологию? Ведь для таких задач есть OleAutomation.
http://www.podgoretsky.com/ddp.html
http://www.delphimaster.ru/articles/dbtoword/index.html
clickmaker (2007-06-09 12:06:00) [2]
> не смог найти в DDE: TDdeClientConv;, что-нибудь со свойством
> Visible
а кто сказал, что оно там?
я предлагал TWordApplication с закладки Servers
ambhtr (2007-06-09 11:57:00) [3]К сожалению, я не смог найти в DDE: TDdeClientConv;, что-нибудь со свойством Visible.
Есть DDE.DdeService := 'winword';
Есть DDE.ServiceApplication := 'C:\Program Files\Microsoft Office\Office10\WINWORD.EXE';
Я это взял из примера приведенного в какой-то статье. Давно. Саму статью найти не могу тоже.
clickmaker (2007-06-09 11:31:00) [4]
> запись созданного файла и закрытие приложения Word, происходила
> без "визуализации" Worda
TWordApplication с Visible = false подойдет?