О системах планирования ресурсов предприятия Scala, iScala
“ Если у вас большое количество отчётов, построенных на разных технологиях, этакий "зоопарк" - это и отчёты Crystal, и отчёты, загружаемые с помощью VBA кода в Excel, и RGW, и Access, то можно ли их заменить на новые технологии и насколько это трудоёмко?
  • Главная
    • О проекте
      • Разъяснение о проекте и его участниках
      • Заявление / Memorandum
    • Новости проекта
    • Список опубликованных материалов основного раздела
    • Информация, перенесённая из старых форумов
    • Подписаться на новостную рассылку
  • Наши услуги
  • Статьи
    • Статьи
    • Избранное
    • Мысли вслух
  • Процедуры
  • Доходчиво о сложном
    • Обучение
    • Как сделать?
    • iScala «для чайников»
    • Оч.умелые ручки
  • Структура таблиц
    • Scala 5.1 SR13
    • iScala 2.2 HF 2.3318
    • Tables structure changes history from iScala 2.2 SR2 to iScala 3.0 FSP4
    • Epicor iScala 2.3 — 2.03.3363
    • Epicor iScala 2.3 SR1
    • Epicor iScala 2.3 SR2
    • Epicor iScala 2.3 SR3
    • Epicor iScala 3.00 FSP 2 — 3.00.02254
    • Epicor iScala 3.0 FSP4 — 3.0.4267
    • Изменение структуры таблиц iScala 3.1 по сравнению с iScala 3.0 FSP4 / Table structure changes between iScala 3.0 FSP4 and iScala 3.1
    • Epicor iScala 3.1 — 3.1.0511
    • Epicor iScala 3.2 — 3.2.0317
    • Epicor iScala 3.3 — 3.3.0419
    • Epicor iScala 3.4 — 3.4.0399
    • Epicor iScala 3.5 — 3.5.0.0429
    • Изменение полей в таблицах БД iScala 3.4 по сравнению с iScala 3.2 / Difference between DB structure of iScala 3.4 and iScala 3.2
    • Изменение полей в таблицах БД iScala 3.5 по сравнению с iScala 2.2 / Difference between DB structure of iScala 3.5 and iScala 2.2
  • Материалы по модулям iScala
    • Главная Книга
    • Основные Средства
    • Книга Закупок
    • Книга Продаж
    • Заказы на Закупку
      • Требования
    • Заказы на Продажу
    • Управление Запасами
    • Установка, Администрирование
      • Настройка определений документов MSRS
    • Заработная плата
    • Структура базы данных
    • Отчётность SSRS
    • Отчётность AFR
    • Примеры отчётов
    • Примеры отчётов AFR
    • Интеграция с другими системами
    • Epicor Service Connect
  • English
  • Контакты
  • Поиск
Главная  »»»  Отчётность SSRS  »»»  Насколько сложно перенести старые отчёты на Reporting Services?

Насколько сложно перенести старые отчёты на Reporting Services?

07.10.2019 Автор Алексей Васильев

Дано: есть большое количество отчётов, построенных на разных технологиях, этакий «зоопарк» — это и отчёты Crystal, и отчёты, загружаемые с помощью VBA кода в Excel, и RGW, и Access и т.д. и т.п. Важна не конкретная технология, а именно разнородность.

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

Начнём с того, что больше 80% отчётов являются табличными, т.е. такими, где количество и структура столбцов заранее определены, а количество строк переменно.

Оставшиеся (менее 20%) отчётов — это либо матричные отчёты (с переменным количеством и строк, и столбцов), либо (чаще всего) отчёты фиксированной формы, классический пример — это российский баланс, где фиксированным являются не только столбцы, но и строки. Другим, чуть менее классическим примером, являются документы, например, счет-фактура или накладная, или УПД. Они, конечно, тоже имеют переменное количество строк, но я решил отделить их от обычных табличных отчётов из-за трудоёмкости «рисования» формы самого отчёта:

Универсальный передаточный документ (УПД) в дизайнере отчётов

Здесь я буду вести речь про табличные отчёты. Возьмём, например, вот такой:

Или вот такой:

Получение списка покупателей в RGW

Если рассматривать вопрос трудоёмкости создания подобного рода (табличных) отчётов, то самое сложное при их создании — получить правильный запрос к базе данных. А если запрос к базе данных уже есть, создать отчёт MS SQL Server Reporting Services дело нескольких минут или десятков минут (зависит от количества параметров, необходимости слегка «подкирпичить» запрос для совместимости с типами переменных, иногда нужно задать имя выводимого поля, вот, например, на картинке выше можно заметить такой фрагмент «isnull(GL53002,’’)» — в RGW это будет работать, а для SSRS желательно в явном виде указать имя поля в возвращаемом наборе данных, например, вот так: «isnull(GL53002,’’) as AccountName» и т.п.). Иногда на всё это, включая первичное тестирование, может уйти полчаса, иногда 2 часа, но, как правило, не больше 4-х.

Именно поэтому любые разговоры относительно того, что невозможно переделать 100 существующих отчётов я всегда воспринимаю скептически, как говорится: «Дорогу осилит идущий». Ну, предположим, что в среднем, на каждый отчёт требуется 2 часа. Умножим на 100 отчётов. 200 часов. Ну, да, это месяц работы. Но далеко не в каждой компании имеется 100 отчётов, в одной 10, в другой 25, редко где 50. Зато вы получите возможности, которых раньше не было. Не поленитесь и прочтите всё-таки статью «Что Вы сможете выжать из Вашей Скалы с помощью новых технологий?» или «Почему мы выбрали в качестве инструмента построения системы корпоративной отчетности MS SQL Server Reporting Services?»
Разумеется, иногда приходится полностью переписывать запрос, так, например, я встречал аксессовские отчёты, построенные не на исходных таблицах, а на представлениях (views), когда в одном представлении идёт обращение к другому, а из него, в свою очередь, к третьему и так до 10 вложений. Смотрится это ужасно, абсолютно непрозрачно и непонятно, а выполняется мучительно долго. Поэтому перед человеком, переносящим такого рода старый отчёт на новую платформу, встаёт вопрос: «оставить всё как есть, или всё переделать?». Но это уже другая история 🙂

Рубрика: Отчётность SSRS Метки: Reporting Services, отчёт
VK Telegram Про канал в WhatsApp

Copyright © 2025 О системах планирования ресурсов предприятия Scala, iScala.

Gammapolis WordPress Theme by ERP & Business Consulting

Прокрутка вверх