Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.24;
Скачать: CL | DM;

Вниз

Отчет Word   Найти похожие ветки 

 
Gaber ©   (2003-02-05 12:42) [0]

Конечно многие скажут что вопрос избитый, но перерыв не один запрос в Google, вопросы остались, с Вашего позволения задам:

Задача простая создать отчет в Word, точнее даже не отчет а просто разместить строку в Word в заданной позиции.

Прочел статью (позднее, раннее связывание), положить строку в Word оказалось просто:

var
oleWord:TWordApplication;
begin
oleWord:=TWordApplication.Create(Self);
oleWord.Visible:=True;
oleWord.Documents.Add EmptyParam,EmptyParam, EmptyParam,EmptyParam);
oleWord.Selection.TypeText("Hello");
end;

Прочел статью на Королевство Delphi MSWord вместо QReport, обнаружилось свойство Range, которое как я понял отвечает за размещение текста, но это св-во у TWordDocument, а приведенный выше пример работает с TWordApplication, автор второй статьи опустил размещение строки в тексте и сразу перешел в Range.

Подскажите, как все таки разместить строку в заданную позицию.
Какой компонет использовать, или нужны оба, как тогда связать эти 2 статьи.

Заранее благодарен.


 
asmith   (2003-02-05 13:04) [1]

oleWord.Documents.Add как раз и возвращает TWordDocument, у которого есть свойство Range.


 
Tornado ©   (2003-02-05 16:45) [2]

У меня есть пример работы с MSWord из Дельфи (работа с БД Access), перенос данных в отчет Word. Возможно это поможет. Если нужно - пишите.


 
oss ©   (2003-02-05 16:56) [3]

http://www.djpate.freeserve.co.uk/
зайди в раздел OLE


 
Gaber ©   (2003-02-07 14:29) [4]

Огромное спасибо, ссылка очень помогла. Отчеты создаются, точнее создается, а именно при нажатии на кнопку открывается ворд, все заполняется, печать или сохранение, потом ворд закрываем. Нажимаем опять типа создать отчет - ОШИБКА!

The RPC server is unavailable

все пока не перезапустишь приложение отчетов не будет, как побороть, с чем связано? Кстати в примере расположенному по ссылке тоже самое, больше одного отчета не дает.


 
asmith   (2003-02-07 15:30) [5]

Связано с тем, что нужно не только завершить работу COM-сервера, но и разрушить объект, ассоциированный с этим сервером.


 
Gaber ©   (2003-02-07 16:10) [6]

Тоесть, при запуске надо проверить существует ли СОМ обьект, и если да то разрушить его, но не скажите как сделать эту проверку.
Ведь я обьекты не создаю если я вас правильно понял
(WordApplication:=TWordApplication(Self);)?

у меня сразу на форме лажат данные компоненты.


 
Gaber ©   (2003-02-08 20:33) [7]

?


 
Gaber ©   (2003-02-12 13:50) [8]

Сделал перед Connect Dissconnect , все заработало, но правильно ли это?



Страницы: 1 вся ветка

Текущий архив: 2003.02.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
8-76044
cyborg
2002-11-10 13:51
2003.02.24
Проблема с таймером в MMSystem


3-75773
Mihas
2003-02-05 13:28
2003.02.24
Как программно сжать базу данных InterBase


14-76186
MARcoDEN
2003-02-06 10:11
2003.02.24
Delphi 7 vs. Delphi 5


3-75815
Andrushk
2003-02-06 15:02
2003.02.24
Как сделать сортировку в DBGrid е


3-75830
RUSTAM
2003-02-07 08:34
2003.02.24
Связывание таблиц PARADOX