Универсальные
программные комплексы
Четверг, 21.11.2024, 16:18
Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: dimuhametov, kostanaysoft, Татьяна  
Часть 1. Редактирование шаблона Excel.
dimuhametovДата: Четверг, 26.12.2019, 08:53 | Сообщение # 1
Группа: Администраторы
Сообщений: 204
Репутация: 1
Статус: Offline
Структура шаблона

Книга
шаблона может содержать от одного до нескольких листов, а каждый лист – от
одного до нескольких блоков (по вертикали листа). Строки перед первым блоком,
между блоками и после последнего блока переносятся из шаблона в отчет без
изменения. Разметка листа на блоки задается управляющими командами в первой
колонке листа, которая удаляется после успешной генерации отчета.

Допускаются
обычные блоки с фиксированным количеством
колонок и перекрестные блоки с переменным количеством колонок (шахматки). Разметка колонок
перекрестного блока задается первой (управляющей) строкой такого блока, которая
также удаляется после успешной генерации отчета.

Каждый
блок связан с определенной таблицей (это может быть свободная таблица, таблица
базы данных, взгляд или курсор). Имя таблицы задается в первой колонке и первой
строке блока. Если таблица не открыта, то генератор ее открывает, а после
генерации отчета закрывает (такая таблица должна находиться в текущем каталоге
или в текущей открытой базе данных). Временная таблица (курсор) должна быть
открыта перед вызовом генератора.



Table – имя таблицы блока,RowGr1, RowGr2, …, RowGrN – имена
полей таблицы, по которым выполняется группировка данных. Каждая полоса может
занимать несколько строк, имя группы (таблицы или поля) задается в ячейке,
соответствующей первой строке полосы и первой колонке листа. Если какая-либо
полоса отсутствует, то ее имя переносится в следующую полосу. Например, если полоса
заголовка группы 1 не нужна, то полоса заголовка группы 2 должна начинаться с [<RowGr1][<RowGr2].

Каждая последующая группа должна быть
вложена в предыдущую группу. Самая внутренняя группа N не имеет полос заголовка
и итогов. Она определяет одну полосу детализации, которая повторяется в отчете
столько раз, сколько записей в таблице Table. Полосы групп от N-1 до 1 выводятся в отчет всякий раз, когда изменяется
значение поля, соответствующего имени группы, что зависит от порядка сортировки
записей таблицы. Наконец, полосы группы 0, если они определены, выводятся в отчет
только один раз.

В имени группы допускается макроподстановка (например, [<&name], …, [&name]], где name
имя переменной, содержащей имя поля таблицы для группировки). Эта возможность
позволяет использовать один шаблон для различных вариантов сортировки записей в
таблице и, соответственно, строк в отчете.

Если полоса детализации (полоса группы N) отсутствует
(то есть, в одной ячейке первой колонки задано [<RowGrN][RowGrN]]), то в отчет выводятся
данные не для всех записей таблицы Table,
а только итоговые данные, определенные полосами других групп от N-1 до 0, включающих в себя группу N.

Имя поля RowGrN, определяющего полосу детализации обычного блока,
может быть именем любого поля таблицы, которое не используется в предыдущих объемлющих
группах. Но для перекрестного блока это имя имеет определенный смысл.
Прикрепления: 4893546.png (12.4 Kb)
 
  • Страница 1 из 1
  • 1
Поиск:

Copyright ТОО "KostanaySoft" © 2024