При проектировании разработка шаблонов отчетов, имеющих специальный вид, может обуславливаться:
- необходимостью соответствия оформления документов требованиям ГОСТ;
- требованиями к особым многоуровневым группировкам записей об оборудовании при проектировании крупных и сложных промышленных комплексов
На что стоит обратить внимание при разработке шаблонов отчетов на его основе?
Во-первых, это наличие исходных данных для генератора отчётов.
Генератор отчётов не создаёт данные, а лишь их отображает, преобразовывает в информацию (например, вычисляет по исходным данным), использует как условие группировки. Любой отчет — это представление в нужной форме данных, внесённых при разработке чертежей проекта.
Поэтому следует тщательно контролировать внесение данных в поля свойств Plant 3D при размещении оборудования на чертеже. Они вносятся либо проектировщиком, либо автоматически из настроек класса оборудования, пользовательских свойств проекта или чертежа.
Кроме наличия данных, важным вопросом является валидность данных т.е. соответствие предполагаемых типов данных введенным значениям.
Чтобы в графах для ввода числовых данных (например, «масса единицы»), не появлялись случайно введенные текстовые символы, а в графе «единица измерения» не использовались различные обозначения — "шт."/"штук", "п.м."/"пог.м"/"п.метр" и тому подобные — в Plant 3D необходима предварительная настройка свойств классов оборудования: тип данных, списки выбора, значение по умолчанию и прочие. Не касающиеся, казалось бы, напрямую разработки отчета настройки, обеспечивают в дальнейшем правильность формировании спецификаций. Это поможет проектировщику правильно заполнить свойства оборудования при его размещении в чертеже.
К сожалению, обязательность заполнения того или иного свойства в Plant 3D версии 2013 настроить нельзя.
Рис. 1. Настройка свойств классов в Plant 3D
Примеры условий, которые можно задать в фильтрах, приводятся прямо в окне Конфигуратора при «нажатии» кнопки «Показать примеры фильтров». Использование кнопки «Результат проверки запроса» позволяет здесь же просмотреть, что получилось в результате применения фильтрации.
Рис. 2. Конфигуратор запросов Report Creator
Рис. 3. Интерфейс Report Creator
Инструмент «Таблица» позволяет создать табличную строку с требуемым количеством ячеек, разместить в ячейки нужные поля с данными, задать форматирование. Этот объект удобно оформлять, редактировать и управлять. Однако следует иметь в виду, что при стандартном экспорте сформированного отчета в rtf-файл (для корректировки в Word) таблица Report Creator преобразуется не в объект «таблица Word», а в набор подогнанных друг к другу графических объектов по размерам каждой ячейки. Это исключает возможность обработки этого массива на основе технологий работы с таблицами в Word.
Рисунок 4. Инструмент Таблица
Рисунок 5. Инструмент Кросс-линия
Теперь об ограничениях.
Первой проблемой, c которой столкнется разработчик отчетов в Report Creator, будет отсутствие возможности настроить разные колонтитулы для групп страниц. Поэтому основную надпись по ГОСТ, имеющую разный внешний вид для первой и всех остальных страниц, придется реализовывать с помощью скриптов.
Использование скриптов на любом из трех языков программирования: C#, Visual Basic.NET и JScript.NET существенно расширяет возможности стандартного функционала Report Creator.
Однако следует понимать, что Report Creator не является столь полномасштабной системой построения отчетов, как Crystal Reports, XtraReports, Fast Report и тому подобные.
Report Creator разработан с помощью инструментария XtraReports End-User Report Designer компании DevExpress. Для лучшего понимания особенностей разработки форм отчетов на его основе можно пользоваться документацией по DevExpress XtraReports, но учитывать, что возможности Report Creator имеют ограничения, в частности:
- возможен перехват только тех событий, которые предусмотрены в Report Creator;
- нельзя изменить интерфейс окна предварительного просмотра, в частности, добавить свои кнопки или изменить функционал имеющихся;
- в скриптах можно использовать функционал библиотеки .NET Framework Class Library, но при подключении других библиотек, возникают сложности.
Резюмируя сказанное, можно утверждать, что Report Creator позволяет разрабатывать специальные формы отчетов разной степени сложности на основании тех данных, которые содержатся в базе данных проекта Plant 3D.
Если учитывать упомянутые ранее ограничения и не пытаться нагрузить построение отчета более сложным функционалом, как то:
- модернизация интерфейса;
- запуск внешних приложений;
- подключения дополнительных справочников, форм для заполнения и тому подобных источников.
В противном случае, эффективнее будет использовать более крупные системы построения отчетов, приобретая их дополнительно.