Глава 1. Устройство PrintWizard (конструктор печатных форм)

Содержание

Информация

При разработке конструктора автор вдохновлялся системой компоновки данных программы 1С. Поэтому вы можете заметить, что некоторые термины и описания очень перекликаются. Однако, при этом они имеют схожее предназначение и функционал.

Здесь и далее

  • (*) - функционал планируемый к разработке
  • “разработчик” - пользователь Конструктора, имеющий доступ к визуальному механизму создания и настройки печатных форм

Конструктор печатных форм (далее Конструктор, PrintWizard) - мощный и гибкий инструмент для создания печатных форм на основе их декларативного описания. Использование декларативного описания макетов печатных форм позволяет реализовать следующие возможности:

  • создание печатной формы без программирования;
  • возможность создания различных вариантов одной печатной формы;
  • возможность задания различных вариантов пользовательских настроек;
  • разбиение исполнения печатной формы на этапы;
  • программное влияние на процесс формирования печатной формы;
  • настройки структуры печатной формы;
  • (*) автоматически генерируемая форма настройки печатной формы;
  • (*) дополнительные объекты-абстракции для упрощения и унификации сбора данных (механизм “Алгоритмы”)

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

Формирование печатной формы на основе конструктора разбивается на этапы. В каждый из этапов разработчик может вмешаться (визуально или программно), (*) а также выполнить различные этапы в режиме отладки и проанализировать полученный результат.


Рис. 1.1 схема взаимодействия объектов конструктора печатных форм

На схеме представлены следующие этапы формирования печатной формы:

  1. Разработчик создает макет конструктора (включая стандартные настройки), которые содержат полную информацию о печатной форме;
  2. Процессор печати PrintWizard в соответствии с макетом печатной формы извлекает данные из информационной базы, агрегирует, оформляет и формирует данные для печати;
  3. Процессор вывода PrintWizard обрабатывает данные для печати и выводит их в различные форматы
    • табличный документ (.mxl)
    • офисный документ (.docx)

Процесс разработки печатной формы с помощью Конструктора и его дальнейшее использование на практике выглядит следующим образом:

Исходя из поставленной задачи, разработчик создает макет конструктора, в котором описывает источники данных, наборы данных, связи между ними, создает макет печатной формы (в табличном или офисном документе), определяет параметры макета, выполняет связь параметров макета с полями наборов. При необходимости описывает алгоритмы дополнительной обработки в процессе формирования печатной формы (на языке 1С), а также настраивает команду для формирования печатной формы.

В пользовательском режиме, у объекта появляется кнопка для формирования печатной формы. При нажатии на которую происходит автоматическое формирование печатной формы и вывод результата через стандартные средства подсистемы “Управление печатью” библиотеки стандартных подсистем 1С.


Table of contents