Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2009, 13:45   #1
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
Смущение экспорт набора данных из бд в word

Помогите, пожалуйста!Допустим на форме есть опр.набор данных (dbgrid, sql server, ado). Как сделать экспорт этих данных в мс ворд?

Последний раз редактировалось kate158; 18.01.2009 в 13:49.
kate158 вне форума Ответить с цитированием
Старый 18.01.2009, 13:49   #2
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

Экспорт информации из базы данных в Word
--------------------------------------------------------------------------------


Автор: Uncle B.

Если используешь шаблон, то вариант такой:
1. В шаблоне Word'a в нужные места расставляешь Bookmark (Insert->Bookmark).
2. В проге позиционируешь на этот букмарк и пишешь данные.



(WrdApp - TWordApplication)

procedure TfrmPToClient.bbCreateClick(Sender: TObject);
var
InvoiceTemplate: OleVariant;
begin
// Соединение с OLE-сервером
WrdApp.Connect;
WrdApp.Visible := True;
// выбор шаблона
if not FileExists(dlgOpen.FileName) then
Exit;
InvoiceTemplate := edFileName.Text;
// открытие выбраного шаблона в Word'e
WrdApp.Documents.Add(InvoiceTemplat e, EmptyParam);
WordGotoBookmark('PDate');
WordInsertText(' ' + DateToStr(dtpPDate.Date));
WordGotoBookmark('PNr');
WordInsertText(' ' + edPNr.Text);
WordGotoBookmark('PClientName');
WordInsertText(' ' +
dmIB_TOIS.tblProject.FieldByName('P rojectClientName').asString);
WordGotoBookmark('ContractNr');
WordInsertText(' ' + dmIB_TOIS.tblProject.FieldByName('C LWordGotoBookmark('
ContractDate');
WordInsertText(' ' +
dmIB_TOIS.tblProject.FieldByName('C L_ContractDate').asString);
WordGotoBookmark('PCargoName');
WordInsertText(' ' +
dmIB_TOIS.tblProjectCargo.FieldByNa me('CargoName').asString);
WordGotoBookmark('PProjectYear');
WordInsertText(' ' +
dmIB_TOIS.tblProject.FieldByName('P ROJECTNOTICEYEAR').asString);
WordGotoBookmark('PProjectMonth');
WordInsertText(' ' +
arMonths[dmIB_TOIS.tblProject.FieldByName('P ROJECTNOTICEMonth').asInteger]);
end;

procedure TfrmPToClient.WordGotoBookmark(Book mark: string);
var
What: OLEVariant;
Which: OLEVariant;
Count: OLEVariant;
Name: OLEVariant;
begin
What := wdGoToBookmark;
Which := unAssigned;
Count := unAssigned;
Name := Bookmark;
WrdApp.Selection.GoTo_(What, Which, Count, Name);
end;

procedure TfrmPToClient.WordInsertText(Text: string);
begin
WrdApp.Selection.TypeText(Text);
end;




В случае, если нужно вывести набор записей (например в вордовскую таблицу), то вариант такой :
1. В шаблоне Ворда рисуешь "болванку" таблицы, делаешь макрос вставки новой строки в таблицу и можно ещё простые макросы перехода по ячейкам таблицы.
2. В проге позиционируешь через Bookmark на первую ячейку, далее в цикле вызываешь вордовский макрос создания новой строки и с помощью макросов перехода по ячейкам вбиваешь данные из набора.

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



Проект Delphi World © Выпуск 2002 - 2004
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 18.01.2009, 14:09   #3
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
По умолчанию

спасибо, буду творить.)
kate158 вне форума Ответить с цитированием
Старый 03.06.2010, 20:50   #4
vovka_sp
Новичок
Джуниор
 
Регистрация: 03.06.2010
Сообщений: 1
По умолчанию Экспорт информации из базы данных в Word

Доброго времени суток!
У меня схожая проблема.Текст то вывести получилось, а вот изображение никак...((
Может кто что подскажет, буду благодарен....
vovka_sp вне форума Ответить с цитированием
Старый 06.11.2013, 16:47   #5
undead92
Пользователь
 
Регистрация: 26.12.2009
Сообщений: 95
По умолчанию

а можно пример кода на конкретном шаблоне. данные из эдитов в таблицу, самое главное что количество строк не фиксировано, а могут быть больше или меньше, остальной текст заменяется закладками
Вложения
Тип файла: doc obrazec.doc (67.5 Кб, 30 просмотров)
undead92 вне форума Ответить с цитированием
Старый 22.11.2013, 14:08   #6
munhauz
Пользователь
 
Регистрация: 07.10.2010
Сообщений: 47
По умолчанию

Народ помогите
нусно изменить цвет строки в таблице в WORD
не могу найти параметр
munhauz вне форума Ответить с цитированием
Старый 22.11.2013, 15:00   #7
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию

Я же вроде тебе уже помогал с добавлением строк? С цветом аналогично. Выделаешь нужную ячейку и меняешь цвет. Скинь где и что нужно поменять. Помогу чем смогу.
FaTaL вне форума Ответить с цитированием
Старый 22.11.2013, 15:12   #8
munhauz
Пользователь
 
Регистрация: 07.10.2010
Сообщений: 47
По умолчанию

Код:
      dm.WD.Tables.Item(3).Rows.Item(NRow).Select;
      dm.WA.Selection.Font.Size:=12;
      dm.WA.Selection.Font.Bold:=1;
не могу понять как поменять заливку ячейки
параметр найти не могу
munhauz вне форума Ответить с цитированием
Старый 22.11.2013, 15:23   #9
Toxa
Форумчанин Подтвердите свой е-майл
 
Аватар для Toxa
 
Регистрация: 01.12.2006
Сообщений: 514
По умолчанию

я обычно чтобы найти параметр для Word/Excel, запускаю Word/Excel, включаю макросы - запись, делаю руками в самом Word/Excel то что мне надо,
затем стоп макроса и редактирование, и в макросах будет показаны все действия
Пишу на Delphi за еду
Toxa вне форума Ответить с цитированием
Старый 22.11.2013, 15:27   #10
munhauz
Пользователь
 
Регистрация: 07.10.2010
Сообщений: 47
По умолчанию

клево, я и не знал такое )))
спасибо
офигеть как полезно
munhauz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Экспорт в Word из Memo Jene4ka Общие вопросы Delphi 5 20.10.2016 10:42
Экспорт в Word? как сделать? KingSize БД в Delphi 13 08.12.2008 12:51
экспорт в word AD_min Общие вопросы Delphi 4 05.12.2008 14:17
копирование определенного набора данных из dbgrid в clipboard kate158 Общие вопросы Delphi 9 15.10.2008 18:20
Экспорт в Word Constellation БД в Delphi 5 15.04.2008 18:47