7 - 2014

Современный построитель отчетов TechnologiCS 6.3

Евгений Слинкин

Неотъемлемой частью любой автоматизированной системы управления конструкторско­технологической подготовкой производства (АСУ КТПП) является механизм формирования электронной и бумажной документации. Чем больше задач позволяет решить система, тем сложнее структуры данных, которыми она оперирует.

Преимуществом АСУ КТПП TechnologiCS всегда являлось наличие гибкого механизма для проектирования и формирования форм выходных документов. Существующий механизм предоставлял возможность максимально задействовать данные из любого режима системы и представить их в привычном для пользователя виде, то есть позволял получать практически любые виды и комплекты документов. Но за всё необходимо платить — инструментарий оказался довольно громоздким и требовал большого количества времени для освоения.

Разработчики TechnologiCS в очередной раз прислушались к обращениям пользователей и в процессе разработки версии 6.3 решили упростить и унифицировать процедуру проектирования форм выходных документов. В результате появилась новая конфигурация TechnologiCS­RPT — построитель отчетов, который не только стал менее требовательным к дополнительному программному обеспечению, но и приобрел кросс­платформенность.

Кроссплатформенность

В системе TechnologiCS для формирования выходных документов (отчетов) используются пакеты офисных продуктов. Как правило, это MS Excel и MS Access. Решение задействовать эти офисные продукты обусловлено тем, что возможности профессиональных редакторов текста, таблиц и баз данных всегда будут превосходить возможности каких­то «самописных» редакторов. Более того, в наше время офисные продукты всем знакомы, а форматы выходных данных известны и применяются повсеместно. Недостатком такого решения являлось то, что эти продукты платные. Безусловно, в большинстве случаев наличие MS Excel на рабочем месте подразумевается, и часто этот продукт установлен по умолчанию. Но так бывает не всегда. С MS Access ситуация аналогична.

Отличной новостью стало появление семейств бесплатных офисных продуктов OpenOffice, повторяющих основную функциональность продуктов MS. Разработчики TechnologiCS не преминули воспользоваться этим и сделали возможным проектирование и формирование документов с использованием OpenOffice (рис. 1). Расширение возможностей построителя отчетов выражается не только в добавлении новых поддерживаемых форматов данных, но и в упрощении алгоритма работы при проектировании отчетов. Алгоритм работы в новом построителе реализован так, что проектирование как для MS, так и для OpenOffice осуществляется одинаково.

Пользователей, предпочитающих MS, избавили от необходимости задействовать MS Access. Теперь для проектирования и формирования отчетов на рабочем месте достаточно только MS Excel.

Рис. 1. Поддерживаемые семейства OpenOffice

Рис. 1. Поддерживаемые семейства OpenOffice

Удобство и безопасность

Раньше при построении отчетов для решения частных и нетипичных задач в качестве дополнительного инструмента служили VBA­модули. Но идея кроссплатформенности построителя отчетов заставила пересмотреть политику использования дополнительных VBA­модулей — из­за различий в работе Microsoft Office и OpenOffice. Отказаться полностью от возможности решения специфичных задач с помощью языка программирования означало ограничить возможности пользователя. Поэтому функционал VBA­модулей был перенесен в раздел Функции окна редактирования шаблонов отчетов TechnologiCS. Избавление от VBA­модулей не ограничилось одним лишь переносом функциональности отдельных модулей непосредственно в TechnologiCS. Результатом стало изменение среды программирования. Ведь проектировать программные модули внутри TechnologiCS — значит иметь доступ через API к большинству объектов системы. Кроме того, стали доступны такие инструменты, как встроенное автодополнение кода и подсветка синтаксиса, к которым уже успели привыкнуть многие пользователи (рис. 2). Теперь разработчики шаблонов отчетов могут решать нестандартные задачи значительно проще и быстрее, оставаясь в единой среде разработки с возможностью максимально задействовать ее возможности.

Как следствие, уровень безопас­ности при использовании продуктов Office был повышен и не требует, в отличие от предыдущих версий построителя отчетов, отдельного внимания системных администраторов.

Рис. 2. Среда программирования

Рис. 2. Среда программирования

Унификация

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

В новой версии разработчики TechnologiCS решили упростить интерфейс для проектирования форм выходных документов и сделать его более единообразным.

Первым делом процесс проектирования шаблона выходного документа был разделен на два: подготовку данных для передачи в бланк и проектирование бланка, содержащего внешний вид документа (рис. 3).

Рис. 3. Структура данных

Рис. 3. Структура данных

Рис. 4. Использование псевдонимов в бланке

Рис. 4. Использование псевдонимов в бланке

Бланк теперь содержит лишь визуальное представление выходного документа. Поля, которые при формировании отчета должны заполняться данными, содержат только псевдонимы источников данных и дополнительные служебные слова (рис. 4).

Структура данных для передачи теперь полностью формируется в режиме редактирования шаблона отчета. В новой версии построителя отчета к структуре относится не только набор данных для выгрузки из системы, но и описание операций по преобразованию этих данных: SQL­запросы к выгружаемым данным (рис. 5), функции на языке VBScript, дополнительные SQL­команды (рис. 6), переменные и параметры.

Рис. 5. Дополнительный источник данных

Рис. 5. Дополнительный источник данных

Рис. 6. SQL-команды

Рис. 6. SQL-команды

Перенос функциональности, относящейся к структуре передаваемых данных, в единую среду для проектирования позволил представить настройки и взаимосвязи между различными настройками в более удобном для восприятия и логично выстроенном виде. Теперь нет необходимости искать, разбирать и редактировать в бланке длинные тексты запросов и значения параметров. Все настройки ведутся в одном режиме. Запросам, функциям и полям могут быть присвоены псевдонимы на русском языке, отражающие их назначение и позволяющие легко ориентироваться среди них при проектировании бланка. Если появилась необходимость исправить или модифицировать отчет, то, благодаря введению псевдонимов, разработчику шаблона отчета достаточно внести исправления только в описание элемента структуры, а не во все бланки шаблона. Кроме того, встроенная система автодополнения кода TechnologiCS автоматически запомнит созданный псевдоним и поможет задействовать его в рамках текущего шаблона. Так как в новом построителе отчетов описание операций по преобразованию данных ведется в одном режиме, их теперь можно тесно интегрировать между собой.

Еще одно преимущество выделения проектирования визуальной части шаблона выходного документа в отдельный процесс заключается в возможности создавать одинаковые структуры данных
независимо от того, в каком семействе продуктов Office разработаны бланки. Проектирование бланков и структуры данных для их заполнения может быть выполнено независимо друг от друга.

Заключение

Разработчики TechnologiCS постарались сформировать максимально удобный и логичный инструментарий для проектирования форм выходных документов, при этом сохранив его основные достоинства. Соблюдение выработанной годами концепции позволило выстроить процесс проектирования шаблонов отчетов так, что новый построитель отчетов в составе конфигурации TechnologiCS­RPT покажется разработчику шаблонов еще более привычным, чем построители отчетов предыдущих версий.

Безусловно, сохранилась возможность проектировать шаблоны отчетов с использованием построителя предыдущего поколения. В таком случае конфигурация TechnologiCS­RPT не требуется. Но, как говорится, к хорошему привыкаешь быстро — и, создав пару шаблонов c помощью построителя отчетов в составе новой конфигурации TechnologiCS­RPT, редкий пользователь возвращается к старому функционалу. 

САПР и графика 7`2014