Трудности выбора систем интеграции

25.09.25

Интеграция - WEB-интеграция

Почему в 1С стандартом для WEB-сервисов стал XML, а для HTTP – JSON? Можно ли грамотно комбинировать XDTO, XML, JSON, WEB и HTTP? Зачем нужен WSDL и почему это удобно? Разбираем безопасность, нагрузку, надежность передаваемых данных, простоту реализации – и помогаем определить, какой формат обмена подойдет именно вам. Кейсы из практики, сравнения и выводы, которые сэкономят время и нервы.

Меня зовут Карен Мелконян, я ведущий разработчик компании СИТЕК и реализовал более двадцати интеграционных проектов.

В нашей работе часто возникает вопрос: какую интеграцию выбрать под конкретные задачи клиента? Этот выбор далек от однозначного решения. Сегодня я предлагаю подробно рассмотреть плюсы и минусы разных способов интеграции.

 

Что такое интеграция?

 

Интеграция – это процесс объединения отдельных систем и компонентов в единое целое. Например, при внедрении решения «1C:WMS Логистика. Управление складом» (Warehouse Management System) автоматизируются многие складские операции. При необходимости расширения функциональности, например, для работы с роботизированными участками, задача интеграции новых устройств с 1C:WMS становится особенно актуальной. В такой архитектуре система формирует и отправляет задачи роботам, получает их ответы и на основании полученной информации принимает решения о дальнейших действиях

 

 

Интеграцию можно условно разделить на два основных направления: интеграция с оборудованием и интеграция с информационными системами.

 

Интеграция с оборудованием

 

Современный склад использует множество устройств: терминалы сборов данных, принтеры, RFID-считыватели, весы, торговые сканеры, а также роботов, что делает задачи интеграции довольно сложными.

 

Способы интеграции с оборудованием

 

Первый подход – это использование библиотеки подключаемого оборудования, однако она покрывает далеко не все возможные устройства.

Если в комплекте с оборудованием есть готовый системный драйвер, можно напрямую подключиться через CкOM-объекты или редактировать файлы на Unix-системах.

Многие производители предлагают API, которые обычно позволяют обмениваться данными через HTTP-запросы: система посылает команду, устройство ее выполняет и возвращает ответ.

Если ни системного драйвера, ни API нет, можно использовать TCP или UDP протоколы, но 1С не поддерживает их напрямую. Здесь на помощь приходят либо внешние компоненты, либо прокси-серверы – отдельные сервисы, выполняющие конвертацию и передачу сообщений.

 

 

Прокси-серверы удобны тем, что не зависят от платформы 1С, гибко масштабируются и обеспечивают мультиплатформенность.

Внешние компоненты, встроенные в 1С, требуют внимания к качеству кода, так как ошибка может привести к нестабильной работе всей системы. Важно учитывать платформу, разрядность и тип клиента (тонкий, толстый, веб).

 

Интеграция с информационными системами

 

 

Интеграция включает объединение систем 1С, веб-сайтов, документооборота и других систем в единую экосистему. При передаче структурированных данных популярны форматы:

  • JSON – удобен с точки зрения чтения и работы через HTTP;

  • XML – традиционный для 1С, поддерживает строгую типизацию;

  • Fast Info Set – бинарный формат для сокращения объемов данных и ускорения обработки.

 

Транспорт передачи данных

 

Наиболее распространенные варианты:

  • Файловый доступ – обмен файлами по локальным папкам;

  • FTP – для обмена на удаленных системах;

  • WEB-сервисы и HTTP-сервисы – синхронный обмен по протоколу HTTP, популярный и удобный;

  • Прямое подключение к СУБД – самый быстрый вариант, но требующий высокой квалификации.

Для крупномасштабных систем с множеством интеграций используются брокеры сообщений и шины данных, которые обеспечивают маршрутизацию и управление нагрузкой.

 

WEB-сервисы и HTTP-сервисы: в чем разница?

 

WEB HTTP
Сервисно-ориентированный Ресурсно-ориентированный
Описание процедур (WSDL) Нет описания
Проверка типов (XDTO) Нет проверки
Преимущественно XML Преимущественно JSON
Самодокументирующийся Документация через OpenAPI/Swagger

На сегодняшний день веб-сервисы чаще применяются в интеграциях с клиентскими системами, поскольку их использование обычно более экономично. Тем не менее, если необходимо реализовать нестандартные обмены данными оперативно и с минимальными затратами, чаще выбирают HTTP-сервисы. Они характеризуются меньшими требованиями к реализации, что ускоряет внедрение.

Для лучшего понимания различий приведу пример из практики. В одном из проектов у меня состоялся диалог с коллегой – разработчиком PHP, часто работающим с обменами данными. В ходе беседы мы около получаса обсуждали различия между веб-сервисами и HTTP-сервисами, не сразу понимая друг друга. Коллега спросил: «Что ты подразумеваешь под веб-сервисами и HTTP-сервисами?» Я пытался объяснить суть, но осознал, что терминология в окружении 1С существенно отличается от общепринятой. Впоследствии поиск информации показал, что различение веб- и HTTP-сервисов характерно преимущественно для платформы 1С.

Если говорить языком программистов вне 1С, веб-сервис – это обмен на базе HTTP с использованием протокола SОAP. HTTP-сервис – это обмен через «голый» HTTP-протокол без дополнительного регламентирования. Для веб-сервисов традиционным форматом является XML, регулируемый SОAP-протоколом. Напротив, HTTP-сервисы не накладывают жестких правил на формат данных и чаще используют JSON, который прост, компактен и удобочитаем.

В веб-сервисах 1С широко применяются XDTO-пакеты, обеспечивающие типизацию и автоматическую валидацию данных. В настройках можно указать обязательность полей и их типы. Если передаваемые данные не соответствуют требованиям, XML-пакет не будет сформирован. Такая валидация предотвращает ошибки, например, передачу вместо логического значения некорректных символов.

Публикация веб-сервиса сопровождается автоматической генерацией WSDL-документации, в которой описываются все методы и типы данных. Это облегчает интеграцию и поддержание сервисов.

В случае HTTP-сервисов XDTO не используется, а ответственность за проверку данных ложится на разработчиков. Документация для HTTP-сервисов составляется согласно стандарту OpenAPI и преобразуется в читаемый формат с помощью инструментов, что снижает трудозатраты на документацию.

HTTP-сервисы поддерживают стандартные методы REST API: GET, POST, DELETE, PUT и другие.

Следует отметить, что в 1С и за ее пределами использование метода DELETE не ограничивается только удалением объектов. Технически через него можно реализовать и другие действия, включая создание объектов. Тем не менее, для корректной реализации REST API лучше придерживаться стандартов: DELETE должен удалять объект, а не выполнять другие операции. Это значительно упрощает логику и повышает прозрачность API.

 

Шина данных

 

Шина данных представляет собой следующий этап в развитии интеграционных решений. В различных интерпретациях ее часто сравнивают с потоком данных, подобно автомобилям, движущимся по магистрали к своим пунктам назначения. Другие аналогии сравнивают шину с локальной сетью, где все устройства подключены к одному общему кабелю. Тем не менее, такое представление является неполным.

В действительности, шина данных – это клиент-серверная система для обмена сообщениями между информационными системами предприятия. Технология не является чем-то новым: подобный механизм применяется в популярных мессенджерах, таких как Telegram или WhatsApp. Разница состоит лишь в том, что здесь получателями сообщений являются не конечные пользователи, а именно информационные системы.

Применение шины данных рационально при интеграции более чем двух информационных систем. Для двух систем ее использование зачастую избыточно и ведет к усложнению архитектуры и увеличению издержек.

 

 

Для примера, интеграция четырех систем по схеме «каждый с каждым» требует наличия шести соединений. При увеличении числа систем до восьми количество таких связей возрастает в геометрической прогрессии. В отличие от этого, при использовании шины данных количество соединений сокращается до количества самих систем: четыре базы требуют четыре соединения, восемь – восемь. Шина данных выступает в роли посредника, через который осуществляется маршрутизация и передача сообщений.

 

Ключевые преимущества шин данных

 

  • Гибкость маршрутизации: Возможность настройки связей «один к одному» и «один ко многим».

  • Автоматическая маршрутизация сообщений: Сообщение, отправленное на шину, автоматически перенаправляется всем необходимым системам, независимо от их количества (будь то 4, 10 или 20 и более).

  • Масштабируемость: Упрощение управления и поддержки интеграционной инфраструктуры при росте числа систем.

 

 

Обзор популярных решений шин данных в экосистеме 1С

 

Решение Описание Лицензирование и особенности
1С:Шина Разрабатывается компанией 1С, обладает глубокой интеграцией с ее продуктами. Обеспечивает множество готовых коннекторов для разнообразных систем. Лицензирование пакетное, например, 100 или 1000 подключений.
Datarеon Обеспечивает удобный интерфейс настройки обменов, значительно упрощая работу с интеграцией. Лицензии оплачиваются за каждое подключение.
RabbitMQ Бесплатный открытый брокер сообщений с возможностью модификации исходного кода. Для работы с 1С требуется коннектор. Бесплатные коннекторы существуют, однако их надежность не гарантирована. Стоимость платных – около 300 тыс. руб.
Kafka Высокопроизводительный и эффективный брокер сообщений, все чаще выбираемый крупными предприятиями. Реже применяется в 1С-проектах, требует особой настройки и поддержки.

На основании опыта, наиболее перспективным решением является 1С:Шина. Этот продукт обеспечивает передачу и прием файлов, может работать в роли FTP-клиента, поддерживает интеграцию по веб- и HTTP-протоколам, взаимодействует с RabbitMQ и Kafka, а также с различными СУБД и системами SAP. Таким образом, 1С:Шина включает в себя большинство необходимых инструментов для полноценной и гибкой интеграции.

 

Трудности выбора решений для интеграции

 

Основная сложность при подборе интеграционного решения заключается в отсутствии универсального варианта, подходящего для любых условий. В практике чаще всего применяются три основных подхода:

  • Веб-сервисы, используемые преимущественно для стандартных и типовых интеграций.

  • HTTP-сервисы, ориентированные на быструю и гибкую реализацию обменов.

  • Шина данных, актуальная при необходимости интеграции большого количества систем и обеспечивающая масштабируемость.

Выбор технологии должен базироваться на технических требованиях, архитектуре интегрируемых систем и специфике бизнес-процессов.

 

Рассмотрим практические примеры из опыта нашей компании.

 

Кейс 1. Интеграция на оптово-продуктовом складе

 

 

Задача: интеграция системы «1С:Управление торговлей» с системами маркировки и 1С:WMS.

Проблема: заказчик изначально применял COM-соединения по причине ограниченного опыта главного разработчика. Передача данных осуществлялась со скоростью около 4 объектов в секунду, что удовлетворяло потребности на начальном этапе.

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

Решение: внедрение механизма конвертации данных для обмена, позволившее существенно повысить производительность.

Результат: успешное завершение реализации проекта вследствие повышения надежности и масштабируемости системы.

Дальнейшее развитие: на следующей площадке была реализована интеграция посредством веб-сервисов, что обеспечило многократный рост скорости обмена. Аналогичный подход был рекомендован и для первой площадки, где веб-сервисы показали эффективность в 1000 раз выше COM-соединений.

 

Кейс 2. Интеграция на складе алкогольной продукции

 

 

При интеграции с системой «Мастер ЕГАИС» возникла необходимость обработки значительного объема данных, поскольку каждая бутылка и партия имели обязательные акцизные марки.

Решение: использование обмена через СУБД, что гарантировало высокую пропускную способность и надежность хранения и обработки данных.

 

Кейс 3. Интеграция на текстильном дистрибьюторе

 

 

Особенности: широкий спектр информационных систем, включая SAP, WMS, кастомные решения на базе 1С, ERP и RMS.

Сложность: большое количество связей между системами обуславливало необходимость решения задачи с повышенной степенью масштабируемости.

Решение: использование шины данных, которая позволила упростить архитектуру и обеспечить функциональную интеграцию всех систем.

 

Выводы

 

Выбор технологии интеграции всегда индивидуален и зависит от задач и архитектуры бизнеса.

  • Для обменов с высокой надежностью и валидацией оптимальны веб-сервисы.

  • Для быстрой разработки и гибкости подходит HTTP.

  • Для масштабных систем с множеством интеграций – шина данных.

Правильный выбор интеграции позволяет создавать стабильные, эффективные и удобные решения для автоматизации складских процессов.

 

*************

Статья написана по итогам доклада (видео), прочитанного на конференции INFOSTART TECH EVENT.

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Онлайн-заказ - это решение для автоматизации процесса оформления заказов на сайте в торговых организациях. Продукт обеспечивает легкое взаимодействие между компанией и клиентами через веб-интерфейс, интегрированный с 1С:Предприятие. Система позволяет снизить операционные расходы, повысить лояльность клиентов и оптимизировать работу отдела продаж.

57600 руб.

26.11.2024    6457    4    3    

7

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    21550    30    24    

24

SALE! 15%

WEB-интеграция Программист Бизнес-аналитик 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

17280 14688 руб.

20.12.2024    3773    18    2    

20

WEB-интеграция Программист Руководитель проекта 1С v8.3 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки. Основные преимущества: 1. Документация API создаётся автоматически. Удобна для программной обработки. 2. Изменить API столь же просто как настроить отчёт. Можно опубликовать существующий вариант отчёта. 3. Отчёты в API поддерживают параметры (Период, ДатаНачала и др.) 4. При создании простых методов не требуется изменять конфигурацию. 5. Поддерживается работа с планами обмена.<br/> 6. Возможно настроить отправку из 1С данных корреспондирующей системе, для случаев когда 1С сама "знает" какие данные нужно отправить. 7. После записи в 1С Ле Мурр может возвращать соответствие полученных идентификаторов созданным в 1С объектам данных.

36000 руб.

27.09.2024    8287    7    5    

9

WEB-интеграция 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Оптовая торговля, дистрибуция, логистика Россия Платные (руб)

В расширении реализован механизм интеграции между системой поставщика и Личным кабинетом СДТ. Реализован обмен заказами и реализациями (накладными), предусмотрено отслеживание статусов документов. Расширение предназначено для 1С:УТ 11.4.

35856 руб.

27.11.2024    2030    1    0    

1
Для отправки сообщения требуется регистрация/авторизация