Современный построитель отчетов TechnologiCS 6.3
Неотъемлемой частью любой автоматизированной системы управления конструкторскотехнологической подготовкой производства (АСУ КТПП) является механизм формирования электронной и бумажной документации. Чем больше задач позволяет решить система, тем сложнее структуры данных, которыми она оперирует.
Преимуществом АСУ КТПП TechnologiCS всегда являлось наличие гибкого механизма для проектирования и формирования форм выходных документов. Существующий механизм предоставлял возможность максимально задействовать данные из любого режима системы и представить их в привычном для пользователя виде, то есть позволял получать практически любые виды и комплекты документов. Но за всё необходимо платить — инструментарий оказался довольно громоздким и требовал большого количества времени для освоения.
Разработчики TechnologiCS в очередной раз прислушались к обращениям пользователей и в процессе разработки версии 6.3 решили упростить и унифицировать процедуру проектирования форм выходных документов. В результате появилась новая конфигурация TechnologiCSRPT — построитель отчетов, который не только стал менее требовательным к дополнительному программному обеспечению, но и приобрел кроссплатформенность.
Кроссплатформенность
В системе TechnologiCS для формирования выходных документов (отчетов) используются пакеты офисных продуктов. Как правило, это MS Excel и MS Access. Решение задействовать эти офисные продукты обусловлено тем, что возможности профессиональных редакторов текста, таблиц и баз данных всегда будут превосходить возможности какихто «самописных» редакторов. Более того, в наше время офисные продукты всем знакомы, а форматы выходных данных известны и применяются повсеместно. Недостатком такого решения являлось то, что эти продукты платные. Безусловно, в большинстве случаев наличие MS Excel на рабочем месте подразумевается, и часто этот продукт установлен по умолчанию. Но так бывает не всегда. С MS Access ситуация аналогична.
Отличной новостью стало появление семейств бесплатных офисных продуктов OpenOffice, повторяющих основную функциональность продуктов MS. Разработчики TechnologiCS не преминули воспользоваться этим и сделали возможным проектирование и формирование документов с использованием OpenOffice (рис. 1). Расширение возможностей построителя отчетов выражается не только в добавлении новых поддерживаемых форматов данных, но и в упрощении алгоритма работы при проектировании отчетов. Алгоритм работы в новом построителе реализован так, что проектирование как для MS, так и для OpenOffice осуществляется одинаково.
Пользователей, предпочитающих MS, избавили от необходимости задействовать MS Access. Теперь для проектирования и формирования отчетов на рабочем месте достаточно только MS Excel.
Рис. 1. Поддерживаемые семейства OpenOffice
Удобство и безопасность
Раньше при построении отчетов для решения частных и нетипичных задач в качестве дополнительного инструмента служили VBAмодули. Но идея кроссплатформенности построителя отчетов заставила пересмотреть политику использования дополнительных VBAмодулей — изза различий в работе Microsoft Office и OpenOffice. Отказаться полностью от возможности решения специфичных задач с помощью языка программирования означало ограничить возможности пользователя. Поэтому функционал VBAмодулей был перенесен в раздел Функции окна редактирования шаблонов отчетов TechnologiCS. Избавление от VBAмодулей не ограничилось одним лишь переносом функциональности отдельных модулей непосредственно в TechnologiCS. Результатом стало изменение среды программирования. Ведь проектировать программные модули внутри TechnologiCS — значит иметь доступ через API к большинству объектов системы. Кроме того, стали доступны такие инструменты, как встроенное автодополнение кода и подсветка синтаксиса, к которым уже успели привыкнуть многие пользователи (рис. 2). Теперь разработчики шаблонов отчетов могут решать нестандартные задачи значительно проще и быстрее, оставаясь в единой среде разработки с возможностью максимально задействовать ее возможности.
Как следствие, уровень безопасности при использовании продуктов Office был повышен и не требует, в отличие от предыдущих версий построителя отчетов, отдельного внимания системных администраторов.
Рис. 2. Среда программирования
Унификация
Современные тенденции в развитии программного обеспечения предполагают упрощение интерфейса с целью создания интуитивно понятной среды для работы пользователей. Построитель отчетов TechnologiCS развивался по мере поступления новых требований от пользователей и постановки новых специфичных задач на различных предприятиях. За пятнадцать с лишним лет он превратился в монстра, способного удовлетворить любые прихоти пользователей в области формирования документов на основе информации, занесенной в TechnologiCS. С одной стороны, это гибкий и универсальный механизм, с другой — разнообразие настроек, параметров и модулей доставляло разработчикам шаблонов отчетов неудобство и при проектировании новых отчетов, и при анализе существующих.
В новой версии разработчики TechnologiCS решили упростить интерфейс для проектирования форм выходных документов и сделать его более единообразным.
Первым делом процесс проектирования шаблона выходного документа был разделен на два: подготовку данных для передачи в бланк и проектирование бланка, содержащего внешний вид документа (рис. 3).
Рис. 3. Структура данных
Рис. 4. Использование псевдонимов в бланке
Бланк теперь содержит лишь визуальное представление выходного документа. Поля, которые при формировании отчета должны заполняться данными, содержат только псевдонимы источников данных и дополнительные служебные слова (рис. 4).
Структура данных для передачи теперь полностью формируется в режиме редактирования шаблона отчета. В новой версии построителя отчета к структуре относится не только набор данных для выгрузки из системы, но и описание операций по преобразованию этих данных: SQLзапросы к выгружаемым данным (рис. 5), функции на языке VBScript, дополнительные SQLкоманды (рис. 6), переменные и параметры.
Рис. 5. Дополнительный источник данных
Рис. 6. SQL-команды
Перенос функциональности, относящейся к структуре передаваемых данных, в единую среду для проектирования позволил представить настройки и взаимосвязи между различными настройками в более удобном для восприятия и логично выстроенном виде. Теперь нет необходимости искать, разбирать и редактировать в бланке длинные тексты запросов и значения параметров. Все настройки ведутся в одном режиме. Запросам, функциям и полям могут быть присвоены псевдонимы на русском языке, отражающие их назначение и позволяющие легко ориентироваться среди них при проектировании бланка. Если появилась необходимость исправить или модифицировать отчет, то, благодаря введению псевдонимов, разработчику шаблона отчета достаточно внести исправления только в описание элемента структуры, а не во все бланки шаблона. Кроме того, встроенная система автодополнения кода TechnologiCS автоматически запомнит созданный псевдоним и поможет задействовать его в рамках текущего шаблона. Так как в новом построителе отчетов описание операций по преобразованию данных ведется в одном режиме, их теперь можно тесно интегрировать между собой.
Еще одно преимущество выделения проектирования визуальной части шаблона выходного документа в отдельный процесс заключается в возможности создавать одинаковые структуры данных
независимо от того, в каком семействе продуктов Office разработаны бланки. Проектирование бланков и структуры данных для их заполнения может быть выполнено независимо друг от друга.
Заключение
Разработчики TechnologiCS постарались сформировать максимально удобный и логичный инструментарий для проектирования форм выходных документов, при этом сохранив его основные достоинства. Соблюдение выработанной годами концепции позволило выстроить процесс проектирования шаблонов отчетов так, что новый построитель отчетов в составе конфигурации TechnologiCSRPT покажется разработчику шаблонов еще более привычным, чем построители отчетов предыдущих версий.
Безусловно, сохранилась возможность проектировать шаблоны отчетов с использованием построителя предыдущего поколения. В таком случае конфигурация TechnologiCSRPT не требуется. Но, как говорится, к хорошему привыкаешь быстро — и, создав пару шаблонов c помощью построителя отчетов в составе новой конфигурации TechnologiCSRPT, редкий пользователь возвращается к старому функционалу.