Предложенное решение предлагается как реализованная идея и не претендует на продукт покрывающий все потребности, со своими достоинствами и недостатками, которые будут описаны ниже.
История:
Приходило достаточно много запросов от заказчиков по переносу данных из отчетов 1C в PowerBI или в Excel. Было множество идей как это сделать, например:
- через OData, но у этого механизма есть большой недостаток - сложно компоновать и объединять данные (объясните заказчику страшное слово GUID :) ),
- через файлики - но думается это уже рудимент
- и т.д.
В итоге родилась предлагаемая идея, на мой взгляд современная и удобная для пользователей.
Исходные вводные:
- Используется типовая Демонстрационная конфигурация "Библиотека стандартных подсистем", редакция 3.1 (3.1.4.434).
- Сервис добавляется как есть.
- Вопросы безопасности передачи данных не рассматриваются - т.к. не о безопастности статья.
- Поднята IIS.
- Опубликована база DemoSSL.
Описание сценария работы:
Пользователь заходит в необходимый ему отчет 1С , настраивает, сохраняет вариант отчета, дальше использует 2 ссылки
что бы получать данные:
- http://localhost/DemoSSL/hs/BI/Report/НазваниеВариантаОтчета/XML - сериализованный отчет.
- http://localhost/DemoSSL/hs/BI/Report/НазваниеВариантаОтчета/HTML - страницу HTML.
Подробности ниже...
Ограничения/Недостатки:
- В текущей реализации в HTML не передаются диаграммы.
- Не формирует отчеты с настройками других пользователей.
- Нельзя задавать одинаковые наименования вариантов.
- XLM формируется только для таблиц.
Достоинства:
- Данные большинства отчетов, созданных на СКД, могут быть получены пользователями в Excel или Power BI без привлечения разработчиков.
- Пользователи могут самостоятельно выгружать нужный вид отчета в нужные ему системы.
Как видит пользователь:
Для начала опишу действия, необходимые со стороны пользователя:
- Открыл нужный отчет.
- Настроил отчет, если выгрузка в Excel или Power BI должен быть в ввиде "плоской" таблицы.
- Сохранил вариант отчета:
- Дальше 2 варианта использования:
- Зашел в браузер указал http://localhost/DemoSSL/hs/BI/Report/Key_Report/html , логин, пароль - получил быстрый отчет FlashReport
- Зашел в Excel (PowerBI).
- Указал источник данных http://localhost/DemoSSL/hs/BI/Report/Key_Report/XML
- Ввел логин и пароль
- Получил информацию и загрузил в Excel (PowerBI)
- Операция выполняется 1 раз, затем необходимо лишь нажимать одну кнопку:
- Указал источник данных http://localhost/DemoSSL/hs/BI/Report/Key_Report/XML
- Зашел в браузер указал http://localhost/DemoSSL/hs/BI/Report/Key_Report/html , логин, пароль - получил быстрый отчет FlashReport
Как видит разработчик:
- Сравнением и объединением добавляет сервис в конфигурацию.
- Добавляет разрешения в роли.
- Публикует веб-сервис на web-сервере.
Надеюсь, данная статья будет Вам полезна.
С уважением, Евгений Полупанов.