Экосистема 1С - комплекс прикладных решений для автоматизации процессов на базе платформы 1С: Предприятие. Систему используют более 1,5 млн компаний России.Информация из 1С представляет ценность для бизнес-аналитики, так как конфигурации платформы хранят данные по разным направлениям бизнеса:1С: Бухгалтерия - данные бухгалтерского и налогового учёта1С: ERP Управление – данные о производственных процессах1С: УТ - об оптовой, оптово-розничной или дистанционной торговлеДалион и Астор – данные учета в торговых сетях1С: WMS – информация о процессах логистики и складских процессахПри загрузке этих данных во внешнюю BI-платформу возникают трудности. 1C – закрытая проприетарная система, подключиться к которой напрямую и просто выгрузить данные без нарушения лицензионной политики нельзя.1С предлагает собственный продукт для бизнес-аналитики – BI-систему 1С: Аналитика. Однако, встроенная конфигурация имеет существенные ограничения в функциональных возможностях, гибкости настроек и разнообразии визуализаций.К тому же, для анализа будут доступны только данные из 1С, и, если для отчетов нужна информация из других источников, подгрузить ее в 1С: Аналитику нельзя.Подробно сравнили 1С:Аналитику и PIX BIПолучите доступ к обзору и узнайте, какая платформа обеспечивает более широкую функциональность, и какие лицензии выгоднее.В статье рассматриваем 7 самых популярных способов извлечения данных из 1С для бизнес-аналитики и выбираем лучший.1. Подключиться напрямую к SQL-базе в 1СИнформация в 1С хранится в связанных таблицах СУБД MS SQL или PostgreSQL. Если разобраться в структуре таблиц, то в дальнейшем можно получать метаданные из 1С с помощью подключения к рабочей базе без использования стороннего ПО.У способа есть ряд минусов:Способ запрещен действующей лицензионной политикой 1СПодключение может привести к изменениям в нормальной работе платформы, разрушению БД и отказу 1С в техподдержке.Физические таблицы и поля в рабочей базе закодированы, и для дальнейшей работы нужно "перевести" их названия в читаемый форматДля этого существуют бесплатные разработки и платные коннекторы-генераторы представлений (view), или придется искать программиста 1С с такими навыками.Невозможно отследить изменения данныхКаждый раз при внесении изменений придется повторять запрос к БД и выгружать все целиком2. Построить свою аналитическую SQL-базуДанные выгружаются в SQL-таблицы в промежуточной БД с помощью предварительно созданных запросов к базе 1С.Способ подходит для обработки больших данных, к тому же, аналитическая база позволяет объединить данные из разных источников и проводить над ними расчеты любой сложности.Минусы способа:Как и первый способ, нарушает действующую лицензионную политику 1СНужны специалисты 1С и аналитики, которые смогут написать уникальные запросы и подготовить SQL-таблицы для каждого объекта - документа, регистра, справочникаТребует постоянной поддержки и изменений при обновлении структуры данных или версий 1СВысокий риск ошибок и некорректных результатов в BI-системе из-за большого объема ручного труда и изменения типов данных в промежуточной БДСамый сложный технически и затратный финансово способ, бюджеты для крупных компаний с большим объемом данных могут быть миллионнымиИспользовать ли первые два способа, нарушающих лицензионную политику 1С, или нет – самостоятельный выбор каждого, но Qlever Solutions призывает подходить к вопросу, учитывая все перечисленные риски.3. Вручную выгрузить файлы XLS/CSV/XMLСпособ поможет быстро и просто получить данные из 1С, в этом поможет функция «Рассылка отчетов». Для выгрузки формируется Универсальный отчет, где настраиваются все нужные поля и период.В инструменте Рассылка отчётов указывается нужный отчет, формат (Excel, CSV или XML), расписание рассылки и место выгрузки: локальная папка или FTP-сервер.Минусы способа:Ручной труд, занимающий время сотрудника и повышающий вероятность ошибок, связанных с форматированием и потерей данныхЕсли нужного отчета в 1С нет, придется привлекать программиста 1С, чтобы он сформировал его в системе перед выгрузкойПри обновлении информации в 1С придется каждый раз выгружать Excel-файл, который перезаписывается поверх старого. Архивные версии не сохраняются, становится невозможно обеспечить версионность данныхИнкрементальная загрузка при таком способе невозможна, выгружается сразу большой объем данных, и приходится отдельно организовывать расписание выгрузки для разных периодовТакой способ может подойти как временное решение для небольших объемов данных. С ростом количества и разнообразия отчетов он с большой вероятностью приведет к ошибкам.4. Загрузить данные по протоколу ODataOData (Open Data Protocol) — это протокол, который позволяет выполнять операции с данными с помощью HTTP-команд видаhttp://<имя сервера>:<порт>/<имя публикации>/odata/standard.odata/<имя ресурса><формат полученных данных>и получать файлы в форматах ХМL или JSON со всеми реквизитами и значениями справочника.Способ подойдет для оперативных задач, выгрузки небольших объемов данных. При достаточном знании 1С можно применять специальные команды (преобразовать ссылки в значения) или задавать в запросах фильтры (например, когда нужно выгрузить данные за определенный период).Минусы способа:Нужно опубликовать базу 1С на веб-сервереПри публикации данных в интернете всегда существует риск их утечки, способ не подойдет компаниям с жесткой политикой безопасностиВ длине запросов есть ограниченияСервис не позволит обработать запросы со сложной логикой или большим количеством фильтровСкорость подключения небольшая, работа сервиса нестабильнаяИ чем больше объем данных, тем медленнее работает инструмент. При большом объеме данных и количестве отчетов способ не будет эффективным.5. Использовать COM-соединениеПодключиться к базам 1С можно с помощью COM-соединения (COMConnector) - программного сервиса, изначально предназначенного для переноса данных из одной конфигурации 1С в другую.Минусы способа:Привязка сервиса к ОС WindowsНа каждое COM-соединение тратится 1 клиентская лицензия 1С, что критично при ограниченном количестве лицензийПри внесении изменений в данные или обновлениях конфигураций 1С нужно перерегистрировать COM-объектДля подключения к базе данных необходима установка клиента 1С той же разрядности, что и разрядность приложения/сервера источникаДля написания кода нужны специалисты с навыками программирования на языке 1С и пониманием синтаксиса языка, который используется в BIВремя соединения и выгрузки зависит от объема базы 1С, так как в момент соединения база подгружается полностью6. Внедрить 1C:Шину1С предлагает собственное программное решение класса «Сервисная шина предприятия» (Enterprise Service Bus, ESB) для обмена сообщениями между различными информационными системами - 1C:Шину.Основной компонент 1С:Шины — сервер, который исполняет приложения. Каждое приложение передает сообщения от информационных систем-источников к информационным системам-приемниками.Шина содержит интерфейсы для взаимодействия с разными информационными системами по различным протоколам: SOAP, AMQP, JDBC, FTP, HTTP, JMS, RabbitMQ.Шина может удешевить управление и поддержку большого количества интеграций в компании, так как все они собраны в одном месте.Минусы использования 1С:Шины:Интеграция возможна только с теми системами, к которым в Шине предусмотрены коннекторы1С Шина не является готовым источником данных для BI-системЗатраты на приобретение, внедрение и поддержку Шины довольно высоки и оправданы только в случае, если количество интеграций в компании более десяткаШина не обладает волшебной кнопкой "Интегрировать все!". Всю механику обмена и нюансы перетекания данных из одной системы в другие все равно реализуют и поддерживают разработчики, что требует дополнительных затрат времени и бюджетов7. Использовать коннектор или экстрактор для 1СНа рынке существуют и сторонние готовые решения для автоматической выгрузки данных из 1С в базу данных ClickHouse, PostgreSQL или Microsoft SQL, которые ускоряют интеграцию и снижают затраты на поддержку баз.ATK BIViewКоннектор для генерации модели данных из 1С и дальнейшего использования в BI-системах и хранилищах данных.Предоставляет автоматическую генерацию SQL-представлений с нужными для BI преобразованиями (переименованием полей, разрешением ссылочных полей, преобразованием дат и тд).Работает с не файловыми версиями 1С от 8.1 и выше и с любой BI-системой с возможностью подключения к SQL-серверуЗа счет прямого чтения базы данных SQL и режима инкрементальной загрузки не тормозит работу 1С и BI-системуЭкономит время на поиск соответствий названий таблиц и полей 1С и SQL и их переименование, что особенно удобно при необходимости выгрузки из нескольких баз 1СПочти не требует поддержки, так как в повседневной работе используются уже созданные SQL-представления, запуск нужен только при внесении изменений в 1ССтоимость зависит от количества баз 1С для подключенияКоннектор нарушает действующую лицензионную политику 1С, так как взаимодействует с корневой рабочей базой системы.Единственное внешнее ПО, не нарушающее политику - Экстрактор от Денвик.Экстрактор 1С в BI от ДенвикИнструмент, который автоматизирует получение всех данных из 1С и их доставку в таблицы БД ClickHouse или MS SQL.Экстрактор достает данные из 1С и выгружает их во внешнюю базу без использования таблиц Excel или внешних сервисов.Преимущества экстрактора:Работает как с клиент-серверными, так и с файловыми базами 1С версий 8.2 и 8.3 и любыми BI-системами: PIX BI, Visology, Power BI, Qlik Sense, Yandex Datalens, Apache SuperSetПозволяет манипулировать не только запросами 1С, но и дополнительными вычислениями над набором данныхНадстройка в привычном интерфейсе 1С, self-service решение, которое не требует навыков программирования, опыта работы с БД и привлечения ИТ-специалистовПредоставляет возможность инкрементальной загрузки - отслеживает и регистрирует все изменения в базе 1С, автоматически выгружает их во внешнее хранилище. Можно настроить выгрузку по расписаниюРаботает в режиме многопоточности (12 параллельных потоков) и обеспечивает быструю выгрузку объемных данных - 4346 записей в секундуВключен в Реестр Российского ПО, реестровая запись №18295 от 12.07.2023С помощью коннектора можно получить из 1С любые данные, в том числе:Проводки по плану счетов в разрезе субконтоОстатки на произвольную датуДополнительные реквизитыТекстовые представления документов-регистраторов в регистрах сведений, регистрах накопления и бухгалтерских регистрахПроизвольные запросы (СКД) с использованием вложенных запросов, виртуальных таблиц и т. д.Можно добавить вычисляемые поля (на языке 1С), пред- и постобработчикиQlever Solutions - авторизированный партнер ДенвикИтак, мы рассмотрели основные способы извлечения данных из 1С для их использования в BI.Выгрузки в формате Excel или подключение по протоколу OData – хорошие и простые для реализации способы, но они не закроют проблему при использовании разных конфигураций 1С, большом количестве баз 1С, большом объеме данных и разнообразии отчетов.Для крупных компаний оптимальным вариантом становится использование экстрактора, который поможет настроить и автоматизировать непрерывную выгрузку данных и сократить затраты на поддержку БД.Qlever Solutions обладает одной из самых обширных в России практик разработки и поддержки BI-решений. Мы проектируем и строим DWH, наводим порядок в данных, помогаем в интеграции систем бизнес-аналитики с внешними платформами, в том числе, с 1С.Не знаете, как проще реализовать выгрузку данных из 1С?Обратитесь к надежному партнеру с опытом внедрения систем бизнес-аналитики. Поможем вам загрузить в BI все, что угодно.