Разработаем шаблон платежного поручения. Чтобы облегчить себе задачу,
воспользуемся справочно-правовой системой "Гарант" и получим форму
платежного поручения — документ в формате DOC. Отредактируем этот
документ и приведем его к нужному виду (рис. 6.14). Далее сохраним его в
формате DOT для последующего использования в процедуре формирования
выходной формы документа "платежное поручение".
Как видно из рис. 6.14, преобразование документа в шаблон заключается
в том, что в некоторые ячейки внесен текст типа "###Сумма прописью&".
Эти фрагменты текста и представляют собой текстовые константы, которые
будут использованы для подстановки информации из программы.
Рис. 6.14. Вид шаблона документа "Платежное поручение"
Используем этот шаблон для создания документа. Следующий фрагмент
исходного текста демонстрирует, как это сделать.
Формирование платежного поручения
// Данная функция позволяет находить строку FindText
// и подставлять на ее место строку ReplacementText.
//
Function FindAndlnsert(FindText,ReplacementText:string):boolean;
const wdReplaceAll=2;
begin
W.Selection.Find.Text:=FindText;
W.Selection.Find.Replacement.Text:=ReplacementText;
FindAndlnsert:=W.Selection.Find.Execute(Replace:=wdReplaceAll);
end;
/I Данная процедура заполняет шаблон документа.
//
Pocedure TForml.Buttonl4Click(Sender: TObject);
begin
// Создаем новый документ по шаблону
W.documents.Add(ExtractFileDir(Application.ExeName)+'ХШаблон J
платежного'+' поручения.dot');
// Подставляем тектс
FindAndlnsert('###№ П.П.&','!');
FindAndlnsert('###Дата&',datetostr(date));
FindAndlnsert('###Вид платежа&','почтой');
FindAndlnsert('###Сумма прописыо&','Двести пятьдесят рублей сорок копеек');
FindAndlnsert('###Сумма&', '250,40');
FindAndlnsert('###ИНН плателыцика&','0000000000');
FindAndlnsert('###КПП плателыцика&','000000000011');
FindAndlnsert('###Плателыцик&','ЗАО Селена');
FindAndlnsert('###Р/С плателыцика&','00000000000000000000');
FindAndlnsert('###БИК плателыцика&','000000');
FindAndlnsert('###К/С плателыцика&','00000000000000000000');
FindAndlnsert('###ИНН получателя&','1111111111');
FindAndlnsert ('###КШ получателя^, '111111111100');
FindAndlnsert('###БИК получателя&','111111');
FindAndlnsert('###К/С получателя&','11111111111111111111');
FindAndlnsert('###Р/С получателя&','11111111111111111111');
FindAndlnsert('###Получатель&','ЗАО Комета');
FindAndlnsert('###В.О.&', " ) ;
FindAndInsert('###H.n.&', " ) ;
FindAndlnsert('###Код&','');
FindAndlnsert C###C.П. &', " ) ;
FindAndInsert('###O.n.&', " ) ;
FindAndlnsert('###Р.П.&', " ) ;
FindAndlnsert('#Н1&','' ) ;
FindAndlnsert('#Н2&','' ) ;
FindAndlnsert('#НЗ&','' ) ;
FindAndlnsert('#Н4&','' ) ;
FindAndlnsert('#Н5&','' ) ;
FindAndlnsert('#Н6&','' ) ;
FindAndlnsert('#Н7&','' ) ;
FindAndlnsert('###Назначение платежа& ','Оплата за поставку товара');
end;
Результат выполнения данной процедуры отображен на рис. 6.15.
Рис. 6.15. Сформированный документ "Платежное поручение"
Далее можно переходить к печати документа.
Автоматизацию печати рассмотрим в следующей главе. |