Смекни!
smekni.com

Документация на основе RTF-шаблона (стр. 2 из 2)

Dim res As Boolean ' результат выполнения функций

' заполняем "шапку документа" - номер и получатель

' - закладки 'ndoc' и 'name' соответственно

res = In_Zakl1(pth, "ndoc", Str_ndoc)

res = In_Zakl1(pth, "name", Str_name)

' вставляем нужное кол-во строк-1

' (т.к. одна уже есть в шаблоне)

res = In_TStr (pth, 1, 2, NumStr - 1)

' для каждой строки в каждую ячейку вставляем

' нужные данные из массива

For i = 1 To NumStr

For j = 1 To 5

res = In_Tcell1(pth, 1, i + 1, j, NewData (j, i))

Next j

Next i

res = In_Tcell1(pth, 1, NumStr + 2, 5, Itog)

' проставляем сумму "Всего"

Заключение

Каковы преимущества и недостатки предложенной технологии? Начнем с достоинств. Во-первых, это более гибкая технология для формирования отчетов - даже если часть пользователей работает с OpenOffice, а часть с MS Office, программа создания отчетных документов универсальна. Во-вторых, несмотря на многоразовую перезапись файла шаблона во время работы, эта программа работает быстрее, чем связка OLE+Word. Тем более что приведенные выше алгоритмы могут совершенствоваться. Один из примеров кардинального повышения производительности приведен в листингах варианта для PascalDelphi. В-третьих, пользуясь свободным ПО, вы экономите деньги.

Теперь о проблемах. Основная из них - это недостаточная стандартизация формата RTF. Производители ПО, в целом придерживаясь единого стандарта, допускают несколько свободную трактовку частных моментов. Результат - проблемы с использованием "чужих" RTF-файлов, подготовленных в других редакторах. Например, MS Word сохраняет графические изображения внутри RTF-файла в виде последовательности шестнадцатеричных кодов, а OOWriter - как внешний файл.

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