Пришлось наморщить лоб...
В итоге получилось все очень даже симпатично на мой взгляд. Конечно 95% за меня сделали великолепные компоненты FastReport 3. Те кто знаком с ними сразу поймут все вкусности. Ну а кто незнаком, рекомендую посетить офсайт проекта и ознакомится с руководством пользователя http://ns.fast-report.com/pbc_download/FR4.6.UserManual-ru.chm , в котором подробно изложены принципы и тонкости построения отчетов.
Процесс перевода печатных форм 7.7 в формат FR3 заключается в создании с помощью специального редактора макетов с аналогичными секциями и размещения на них полей с переменными. Создание макетов проходит довольно быстро без кардинальных изменений в содержимом исходного прототипа: добавил секцию, накидал на нее текстовых секций и скопипастил в них формулы. У меня создание полной копии одной печатной формы средней тяжести занимало до получаса.
Использование компоненты очень простое:
- свойство "ОбщиеДанные", типа "СписокЗначений", в котором задаются параметры, видимые в любом месте отчета
- свойство "Секции", типа "ТаблицаЗначений" со структурой
ТЗПечать = СоздатьОбъект("ТаблицаЗначений");
ТЗПечать.НоваяКолонка("ИмяСекции","Строка",128);
ТЗПечать.НоваяКолонка("Данные","СписокЗначений");
В которую надо заносить имя выводимой секции и ее данные.
- метод Показать(ИмяФайлаМакета,"Заголовок окна")
В архиве демка, в которой реализованы штатный и нештатный методы печати счета