На этом шаге мы рассмотрим пример создания почтового конверта.
Приведем небольшой фрагмент программы для формирования надписей на почтовых конвертах. Работая в среде Delphi с базами данных, вы с легкостью сможете разработать свою программу для их подготовки.
Сначала создадим документ (как на рисунке 1).
Рис.1. Шаблон документа
Сохраним его в формате "Шаблон документа", чтобы использовать для создания необходимого документа. Текст в этом документе (###обратный индекс& и т. п.) представляет собой текстовые константы, которые будут заменены текстом в процессе формирования документа.
После создания шаблона скопируем файл с расширением DOT (формат "Шаблон документа") в рабочую папку программы или папку MS Office. После этого можно приступить к формированию надписей на конверте. Рассмотрим следующий фрагмент программы.
procedure TForm1.Button1Click(Sender: TObject); const wdReplaceAll=2; begin W:=CreateOleObject('Word.Application'); W.Visible:=True; // Создаем новый документ по шаблону W.Documents.Add('Конверт.dot'); // Прямой адрес W.Selection.Find.Text:='###индекс&'; W.Selection.Find.Replacement.Text:='350049'; W.Selection.Find.Execute(Replace:=wdReplaceAll); W.Selection.Find.Text:='###адрес&'; W.Selection.Find.Replacement.Text:='Краснодар, ул. Севастопольская, д. 3, кв. 1230'; W.Selection.Find.Execute(Replace:=wdReplaceAll); W.Selection.Find.Text:='###получатель&'; W.Selection.Find.Replacement.Text:='Иванов Иван Иванович'; W.Selection.Find.Execute(Replace:=wdReplaceAll); // Обратный адрес W.Selection.Find.Text:= '###обратный индекс&'; W.Selection.Find.Replacement.Text:='198005'; W.Selection.Find.Execute(Replace:=wdReplaceAll); W.Selection.Find.Text:= '###обратный адрес&'; W.Selection.Find.Replacement.Text:='Санкт-Петербург, Измайловский пр., д. 29, кв. 1112'; W.Selection.Find.Execute(Replace:=wdReplaceAll); W.Selection.Find.Text:='###отправитель&'; W.Selection.Find.Replacement.Text:='Петрова Альбина Васильевна'; W.Selection.Find.Execute(Replace:=wdReplaceAll); end;
После выполнения этой процедуры мы получим результат, как на рисунке 2.
Рис.2. Результат работы приложения
Чтобы использовать этот результат, необходимо сохранить полученный документ и распечатать его. Можно выполнять данную процедуру в цикле, получая исходные данные из базы данных и сохраняя документы под уникальными именами или распечатывая их.
Со следующего шага мы начнем рассматривать работу с таблицами.