пользователям программных продуктов Scala 5.1, iScala 2.1, iScala 2.2, iScala 2.3, iScala 3.0, iScala 3.1, iScala 3.2, iScala 3.3 (и так далее)

Ода RGW

Алексей Васильев, 24.08.2015

Ода RGW

RGW (Report Generator for Windows) — Генератор Финансовых Отчетов для Scala/iScala

Создание отчёта фиксированной формы в RGW

Автор: Рушан Абдряшитов, технический консультант компании Epicor Software

На мой взгляд, RG, а затем RGW – это целая эпоха в мире ERP систем Scala/iScala в России и некоторых других странах Европы и СНГ. Более того, как под словом «ксерокс» мы подразумеваем копировальный аппарат, так и RGW у некоторых клиентов стал чем-то большим, чем просто инструмент, а RG иногда расшифровывают как «Рушан Генератор» (по имени его автора). Первоначально «генератор» задумывался как инструмент, ориентированный исключительно на конечного пользователя, не обладающего какими-либо техническими знаниями. Приведу небольшую выдержку из руководства пользователя:

«Пользователю предоставляется возможность проектировать отчеты в MS Excel – так называемые отчетные формы. Построение отчета начинается с создания его внешнего вида как обычного Workbook в Excel’e, размещения на форме окошек с преобразованиями – интуитивно понятными выражениями-формулами типа «Прибавить обороты по счетам за период: 60*» или «Вычесть остатки на счетах (Дт) на начало: 510002» — и критериями – дополнительными условиями на данные, включаемые в отчет, также имеющими наглядный смысл вроде «Номер проводки < 200012» или «Тип счета Гл. Книги = 2». После запуска отчета окошки замещаются числовыми результатами, полученными обработкой базы данных Scala согласно заданным преобразованиям и критериям, и к исходному Workbook’у добавляется новая Excel-страница (Sheet) с готовым отчетом. При этом сама отчетная форма остается неизменной на отдельной странице с зарезервированным именем Report Form. При необходимости ее можно легко изменить: добавить новые окошки, удалить существующие, откорректировать содержимое окошек (до 32000 на одну форму). В одном отчете можно совмещать данные разных компаний и разных финансовых годов»

В начале истории Scala в России некоторым пользователям, ранее не работавшим с компьютерами, «генератор» из-за его простоты и дружелюбности по отношению к пользователю помог поверить в то, что компьютер и Scala – это совсем не то, что невозможно освоить. Наверное, я не совру, если скажу, что если не было бы RG/RGW, то, возможно, и Scala в своё время не распространилась бы на такое количество компаний в 90-е годы. Рушан не прекращал работать над своим детищем, постоянно совершенствуя его, внося улучшения и новые функции, необходимые пользователям. В результате возможности «генератора» выросли, но одновременно с этим изменились и требования к технической подготовке человека, способного создавать отчёты, не содержащие окошек с преобразованиями. Одновременно менялась и работа самих пользователей, нагрузка на бухгалтеров росла и сейчас очень распространён подход, когда бухгалтер говорит: «некогда мне разбираться, может быть, вы сделаете всё за меня?». Таким образом, появились люди с техническим бэкграундом, умеющие с помощью RGW обращаться к базе данных и производить отчёты из любых модулей системы, не только финансовых.

Ещё небольшая выдержка из руководства пользователя:

«Наряду с отчетными формами в состав Генератора включены стандартные отчеты, написанные на Crystal Reports for Scala. Так же, как и отчетные формы, стандартные отчеты могут разрабатываться самим пользователем и при соблюдении необременительных правил их подготовки могут быть легко добавлены к остальным отчетам Генератора. После того, как отчет подготовлен в Crystal’е, подключение его к общей системе отчетов Генератора практически сводится к простому копированию RPT-файла в служебный каталог с другими стандартными отчетами.

Наконец, в третью группу выделены отчеты по корреспонденции счетов. Подготовка этой разновидности отчетов выполняется в полуавтоматическом режиме и предполагает разрешение сложных (многострочных) проводок модуля Главная Книга на простые – двустрочные проводки, состоящие из дебетуемого и кредитуемого счетов с учетными (аналитическими) измерениями (УИ). Часть проводок разрешается Генератором автоматически – так называемые АР-проводки (автоматически разрешимые). К ним относятся проводки с одним дебетуемым и несколькими кредитуемыми счетами, с одним кредитуемым и несколькими дебетуемыми счетами, а также билинейные проводки, в которых строки с дебетуемыми счетами строго чередуются с соответствующими им кредитуемыми счетами. АР-проводки не могут содержать статистических счетов. Все остальные проводки – не АР-проводки! – разрешаются вручную. При этом однажды разрешенная проводка запоминается в специальной таблице RG_MEMORY в базе данных Scala и при следующем запуске отчета, в котором потребуется данная проводка, Генератор сначала «заглянет» в эту таблицу. Если нужная проводка уже находится там, то оператору не придется ее разрешать вручную: информация по ней сразу будет подставлена в отчет. Внешне все будет выглядеть «автоматически»!»

Разумеется, если вы умеете работать с Crystal’ом или MS SQL Server Reporting Services, то вроде как вам и RGW не требуется. Однако до последнего времени это было не совсем так, если не сказать, «совсем не так». Давайте разберёмся, что делает RGW.

  • Строит отчёты фиксированной формы (Баланс, отчёт о прибыли и убытках и т.п.) – это как раз те самые отчёты, где используются окошки с преобразованиями – интуитивно понятными выражениями-формулами типа «Прибавить обороты по счетам за период: 60*» или «Вычесть остатки на счетах (Дт) на начало: 510002».
  • Исполняет отчёты, написанные на Crystal’е. В комплект поставки входит несколько стандартных отчётов.
  • Позволяет строить отчёты с переменным количеством строк с помощью простого запроса к базе данных или обращению к хранимой процедуре.
  • Позволяет просматривать структуру таблиц базы данных.
  • Выполняет автоматическое или полуавтоматическое преобразование многострочных проводок ГК к виду «один Дебет, один Кредит, сумма» и записывает преобразованные данные в свою таблицу RG_MEMORY. На данных из этой таблицы строится отчёт о корреспонденции счетов («Шахматка»).

А теперь попытаемся выяснить, чем для каждой конкретной задачи его можно заменить:

Номер Краткое описание Чем можно заменить Комментарий
1 Строит отчёты фиксированной формы AFR (Advanced Financial Reporting) Новый продукт
2 Исполняет отчёты, написанные на Crystal’е MS SQL Server Reporting Services Компонент сервера баз данных MS SQL. Входит в стандартную поставку (не требуется приобретать дополнительно).
3 Позволяет строить отчёты с переменным количеством строк с помощью запроса к базе данных MS SQL Server Reporting Services Компонент сервера баз данных MS SQL. Входит в стандартную поставку (не требуется приобретать дополнительно)
4 Позволяет просматривать структуру таблиц базы данных Отчёт MS SQL Server Reporting Services Распространяется свободно
5 Выполняет автоматическое или полуавтоматическое преобразование многострочных проводок ГК к виду «один Дебет, один Кредит, сумма» Новая функциональность iScala 3.0
Строит отчёт о корреспонденции счетов («Шахматка») Отчёт MS SQL Server Reporting Services

Для решения задачи № 5 RGW оставался «незаменяемым» вплоть до недавнего времени, пока не появилась новая функциональность iScala 3.0, касающаяся разнесения многострочных проводок.

Для решения задачи № 1 RGW оставался «не вполне заменяемым» до появления нового отчётного средства Epicor AFR, позволяющего легко создавать отчёты фиксированной формы. AFR построен на новых современных технологиях, что позволяет просматривать отчёты как в Excel’е, так и через веб интерфейс.

В настоящий момент все отчёты, ранее строившиеся с помощью RGW, могут быть построены с помощью современных технологий, с использованием «продвинутой» системы управления доступом, с возможностью просмотра через веб браузер.
Задать вопрос или оставить отзыв:

Ваше имя или псевдоним (обязательно)

Ваш e-mail (обязательно)

Тема (обязательно)

Сообщение

[recaptcha]