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

Преимуществом АСУ КТПП 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). Теперь разработчики шаблонов отчетов могут решать нестандартные задачи значительно проще и быстрее, оставаясь в единой среде разработки с возможностью максимально задействовать ее возможности.

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

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

Унификация

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

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

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

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

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

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

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

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

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

Заключение

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

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

Евгений Слинкин
CSoft Development Новосибирск
Тел.: (383) 346−0633
E-mail: e.slinkin@nsk.csoft.ru