Блог Effema
Power BI

Как подключиться к 1С

Подключение 1С к Power BI: Миф или суровая реальность?

Не секрет, что практически все организации на территории СНГ для автоматизации бухгалтерского и управленческого учета, а также экономической и организационной деятельности, используют программные продукты 1С Предприятие, совместно с различными конфигурациями такими как бухгалтерия, зарплата и кадры.
Таким образом, перед многими аналитиками встаёт вопрос: каким же образом достать из 1С-ки данные, для последующего анализа.
Наиболее простым решением является создание универсального отчёта, содержащего требуемые данные и настройка рассылки данного отчета в формате xlsx, например на почту или web-server.


Данный вариант безусловно интересен, но имеет некоторые недостатки, такие как:
·         Невозможность менять параметры отчета извне, т.е. сгенерировав отчёт единожды по зарплатам за апрель, вы не сможете из Power BI запросить такой же отчет, но за май, придётся заходить в 1С;
·         Периодичность рассылки меняется также из 1С, и если нужны данные ну прям сейчас и максимально свежие, то придется открыть 1С и выполнить рассылку досрочно.
Безусловно данный вариант имеет право на жизнь, если необходимо настроить отчёт по деятельности один раз и пусть он раз в месяц спокойненько обновляется, но это не наш путь.
Мы пойдём путём тернистым, но более выгодным в перспективе, а именно путём публикации данных на веб-сервере с обменом по протоколу OData. Данный протокол осуществляет взаимодействие с веб-ресурсами для запроса и обновления данных. Данные передаются по HTTP в формате JSON или Atom Syndication Format (основан на XML). Поэтому советую сначала ознакомиться со структурой этих форматов файлов если слышите о них впервые.

ВНИМАНИЕ: ДАННЫЙ МЕТОД НЕ РАБОТАЕТ НА ТОНКОМ КЛИЕНТЕ.

Ну, а мы начинаем.
Итак, для работы нам необходимо развернуть веб-сервер, общаясь с которым по протоколу OData, можно будет получать данные из 1С-ки. В качестве сервера используем IIS так как он входит в комплект поставки операционных систем Windows (как настольных, так и серверных решений), а также обладает понятным графическим интерфейсом, в котором не придётся долго разбираться.
Для установки IIS открываем меню “Пуск” в ней “Панель управления”, выбираем, пункт “Программы”, а в нём “Включение или отключение компонентов Windows”.



Такого же эффекта можно добиться, нажав сочетание клавиш “Win+R” и написав “OptionalFeatures”".


Ищем пункт “Службы IIS”, отмечаем его, затем раскрываем список и отмечаем “FTP-сервер”, затем раскрываем “Службы Интернета”/”Компоненты разработки приложений” и отмечаем “ASP.NET 3.5”, который сразу же отметит необходимые компоненты для успешного функционирования. И жмем “ОК”, чтобы применить изменения. 


После этого через меню “Пуск” открываем “Диспетчер служб IIS” и проверяем, функционирует ли сайт по умолчанию.


Если таковой отсутствует, то создаем новый сайт с IP-адресом как на скриншоте, имя и физический путь можете выбрать на свое усмотрение.


Настройки сайта можно изменять в любой момент, для этого есть панель “Изменение сайта”, с помощью которой можно изменить физическое расположение сайта на диске, а также IP-адрес, по которому можно будет к нему обратиться.


Далее начинается взаимодействие с конфигуратором 1С. Внимание: Конфигуратор необходимо открывать от имени администратора. Выбираем “Администрирование”/”Публикация на веб-сервере”.


В открывшейся форме отмечаем “Публиковать стандартный интерфейс OData”, имя сервера можете выбрать сами, главное не использовать кириллицу в названии. В графе “Каталог” должна быть указана, папка которая указана в настройках сайта IIS. Должно быть похоже на то, что представлено на скриншоте, ну и, собственно, жмём “Публиковать”.


Если откроем указанный ранее каталог, то  увидим файлы “default.vrd” и “web.config”, это файлы конфигурации веб-сервера.


Проверим, работает ли сервер, перейдя в браузере по адресу:

http://localhost/ServerName/odata/standard.odata
где, ServerName - имя сервера, которое указывалось при публикации на веб-сервере.


По указанному выше адресу должен находиться список ресурсов в 1С, разрешённых для публикации, именно поэтому необходимо скачать обработку, например отсюда: тыц.
После того как скачали обработку, открываем 1С Предприятие и жмем “Ctrl+O” ну или следуем инструкции на скриншотах и выбираем скачанный ранее файл с расширением *.epf.



Открывается список ресурсов, которые можно опубликовать, отмечаем нужные. У нас это справочник “Сотрудники”  и жмем “Применить”.


После применения снова проверьте сервер по следующей ссылке. И если вы видите список ресурсов, поздравляю осталось немного.

http://localhost/ServerName/odata/standard.odata


Чтобы посмотреть на содержание ресурсов, берём название и соединяем с предыдущей ссылкой. Вот например так выглядит ссылка на справочник “Сотрудники” (Не забываем исправить ServerName и Catalog_Сотрудники на ваши данные).

http://localhost/ServerName/odata/standard.odata/Catalog_Сотрудники


Стоит отметить, что 1С не особо торопится отдавать данные, особенно если строк много, поэтому можно использовать различные фильтры и вывести, например, только 3 верхних записи.

http://localhost/ServerName/odata/standard.odata/Catalog_Сотрудники?$top=3

Теперь осталось только подключиться из PowerBI.
Выбираем коннектор “Канал OData”, вставляем указанную ниже ссылку в поле ввода.

http://localhost/ServerName/odata/standard.odata/Catalog_Сотрудники



Поздравляю, вы великолепны!


Comments powered by Agentima