Для формирования печатных форм в системе используются два объекта: «Макет» и «Табличный документ». Следует отметить, что «Макет» является объектом метаданных, чаще всего содержащим внутри себя «Табличный документ».
Табличный документ, как и любая другая таблица, представляет собой совокупность ячеек прямоугольной формы, организованных в строки и колонки. Каждая колонка и каждая строка имеет свой уникальный номер. Столбцы в строках могут иметь индивидуальную ширину (разную в различных строках).
Табличный документ представляет «готовую» печатную форму и используется самостоятельно. Элемент управления типа «Табличный документ» может располагаться в форме. В этом режиме в табличный документ можно вставить другие элементы управления.
Макет предназначен для определения «кирпичиков», на основании которых строится готовая выходная форма. Проектирование макета заключается в «рисовании» этих составных частей: именованных областей. Макет располагается внутри конфигурации.
Определение имени производится через свойство «Имя» после выделения нужной области.
Реализуем возможность печати прайс-листа из формы списка справочника «Номенклатура». Определим макет у формы:
Шапка |
1 |
Прайс лист на дату [РабочаяДата] |
2 |
Код Наименование Цена |
|
Строка |
3 |
|
После определения макета остается задать алгоритм формирования печатной формы. Для этого необходимо в модуле формы прописать следующую процедуру:
Процедура Печать () Макет = Справочники. Номенклатура. ПолучитьМакет ("ПрайсЛист"); ОбластьШапки = Макет. ПолучитьОбласть ("Шапка"); ТабДок = Новый ТабличныйДокумент (); ' ТабДок. Вывести (ОбластьШапки); Выборка = Справочники. Номенклатура. Выбрать (); Пока Выборка. Следующий () Цикл Если Выборка. ЭтоГруппа=Истина Тогда ОбластьТабЧасти= Макет. ПолучитьОбласть ("СтрокаГруппы"); ОбластьТабЧасти. Параметры. Код=Выборка. Код; ОбластьТабЧасти. Параметры. Наименование=Выборка. Наименование; Иначе ОбластьТабЧасти=Макет. ПолучитьОбласть ("Строка"); |