Табличные формы
Табличные формы – наиболее мощный инструмент создания печатных форм. Табличная форма содержит последовательность разделов, которые могут быть:
- регулярными таблицами с одинаковой структурой столбцов во всех строках;
- нерегулярными наборами строк без общей структуры столбцов.
Геометрические параметры для строк и столбцов задаются в сантиметрах, что обеспечивает строгое соблюдение размеров документа при печати. Высота строк может увеличиваться для обеспечения отображения текста. Табличная форма старается произвести разбивку на страницы, размещая разрывы на границах строк и столбцов. Для управления разбивкой формы на страницы имеется набор специальных средств: принудительные разрывы, неразрывные области, повторяющиеся шапки и др.
Пример табличной формы, открытой в редакторе форм:
Столбцы и строки табличной формы образуют ячейки. Ячейкам назначается тип (строка, число и т.п.) и могут быть установлены соответствующие типу данные. Границам ячеек могут быть назначены толщина и цвет линии. Вся совокупность разделов, строк, ячеек и других данных сохраняется в файл табличной формы с расширением *.ibf.
Для работы с табличными формами во внутреннем языке модуль FC объявляет тип ТАБ_ФОРМА. Этот тип содержит большое количество методов для получения и изменения данных формы. Для удобного программного доступа ячейкам могут быть назначены строковые идентификаторы. В общем случае программный доступ к любой ячейке может быть осуществлен по имени раздела, номеру строки и номеру столбца.
Программно заполненная табличная форма может быть сохранена в ibf-файл, что позволяет создавать архивы сформированных форм. Заполненную и сохраненную форму можно открыть позже для правки, печати или извлечения данных. Таким образом, ibf-файл выступает в двух ролях: как шаблон незаполненной формы и как средство для долговременного хранения заполненных форм.
Для создания нового проекта табличной формы в мастере создания проекта выберите шаблон "Табличная форма". В открывшемся окне проекта вызовете редактор форм и введите имя ibf-файла. После сохранения изменений получим следующий исходный текст:
ТИП ТабФорма1(ТАБ_ФОРМА) [ СТРОКА: файл = "ТабФорма1.ibf"; ] ВЫЧИСЛИТЬ ПЕРЕМ ТабФорма1: тф // тф <- данные тф.ПОКАЗАТЬ КОНЕЦ
Переменная тф связывается с файлом "ТабФорма1.ibf", что позволяет произвести обработку и заполнение формы перед показом. В процессе показа форма может интерактивно взаимодействовать с пользователем, о чем подробнее рассказывается в подразделе Реализация интерактивного поведения.
В Инфо-Бухгалтер 8 отдаленные аналогии с табличными формами можно проводить для бланков. Хранение значений граф ввода в архивах бланков, выбор архивной записи по полям-идентификаторам – это ограниченный случай неполного сохранения состояния формы. Для табличных форм сохраняется состояние полностью, со всем оформлением, входными и выходными полями. Метки табличных форм – это ключевые значения, хранящиеся в заголовке ibf-файла – близкие родственники идентификаторов архивов в Инфо-Бухгалтер 8. |