В Power Automate нет коннектора SAP Business One: что охватывает коннектор SAP ERP

Коннектор SAP ERP работает только с RFC и BAPI и ориентирован на ECC и S/4HANA. Почему Business One выпадает из этого и какой путь ведет через Service Layer.

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

Нет, стандартного коннектора для SAP Business One в Power Automate не существует. Microsoft поставляет два коннектора SAP: коннектор SAP ERP и коннектор SAP OData. Коннектор SAP ERP работает исключительно с RFC и BAPI и ориентирован на SAP ECC, S/4HANA и продукты на стеке NetWeaver. В Business One таких интерфейсов нет.

Что на самом деле охватывает коннектор SAP ERP?

Коннектор SAP ERP — это RFC-коннектор, а не универсальный коннектор SAP. Microsoft сама указывает эту границу в справочнике коннектора: "The connector supports only RFCs and BAPIs". Все, что система SAP не предоставляет в виде удаленно вызываемого функционального модуля, недоступно этим путем. Это ключевой момент, а не вопрос названия продукта.

  • Охват: SAP ECC, S/4HANA и, согласно FAQ Microsoft, любой продукт SAP, работающий на стеке NetWeaver
  • Требования: локальный шлюз данных (on-premises data gateway) версии не ниже 3000.194 (октябрь 2023 года) и SAP .NET Connector NCo 3.1 в 64-битной версии, 32-битная версия не поддерживается
  • Уровень лицензии: Premium в Power Automate, Power Apps и Copilot Studio
  • Ограничение: 2500 вызовов на соединение за 60 секунд

Для продуктов SAP вне стека NetWeaver Microsoft называет альтернативный путь в той же FAQ: "use custom REST and SOAP connectors". Именно туда попадает Business One.

Почему SAP Business One выпадает из стандарта?

SAP Business One — это отдельная продуктовая линейка со своими интерфейсами. Документированные программные интерфейсы — это Service Layer и DI API, а не RFC и BAPI. В собственном руководстве по Service Layer от SAP есть даже раздел о функциональных различиях между Service Layer и DI API, где оба рассматриваются как пути в систему. Во всей документации Microsoft по коннекторам SAP Business One нигде не упоминается.

Какой путь ведет к Business One?

Через Service Layer — REST-интерфейс SAP Business One, основанный на стандарте OData. По умолчанию он работает через HTTPS и доступен как для варианта на Microsoft SQL Server (начиная с 10.0 PL01), так и для варианта на HANA. Начиная с Feature Package 2405 основным протоколом является OData версии 4: /b1s/v1/ отдает устаревшую версию 3, /b1s/v2/ отдает версию 4.

Момент, определяющий архитектуру решения, — это вход в систему. Service Layer аутентифицирует по сессии: POST-запрос на /b1s/v1/Login с указанием компании, пользователя и пароля возвращает cookie с именем B1SESSION, который, согласно руководству SAP, обязательно нужно передавать в каждом последующем запросе. По умолчанию сессия истекает после 30 минут бездействия. Простой Basic-аутентификации для каждого запроса здесь нет, она явно зарезервирована для Semantic Layer и не должна повторно использоваться для таких ресурсов, как BusinessPartners или Orders.

Поэтому коннектор SAP OData тоже не заработает без доработки. Его документированные способы входа — это Basic, анонимный токен, а также Microsoft Entra ID через Azure API Management или через SuccessFactors. Cookie B1SESSION с истечением срока действия там не предусмотрен. На практике остаются два пути: собственный коннектор на основе Service Layer или прямые HTTP-запросы, в обоих случаях с самостоятельно реализованными входом и обновлением сессии. Оба пути относятся к территории Premium, поскольку доступ к Premium- и пользовательским коннекторам зависит от Premium-лицензии Power Automate.

Мы сначала выстраиваем такие интеграции на тестовой компании, прежде чем через них пойдут реальные документы. О том, чем архитектурно отличаются Service Layer, OData и RFC-middleware, рассказано в нашем сравнении путей подключения. Общие рамки вы найдете на нашей странице консалтинга по SAP Business One.

Часто задаваемые вопросы

Можно ли просто направить коннектор SAP OData на Service Layer?

Технически Service Layer работает по OData, препятствие — во входе в систему. Согласно документации Microsoft, коннектор SAP OData поддерживает Basic, анонимный токен и Microsoft Entra ID через Azure API Management или SuccessFactors. Сессионный вход Business One с cookie B1SESSION среди них не значится. Тот, кто хочет пойти этим путем, обычно вставляет между ними собственный слой.

Нужен ли мне локальный шлюз данных для Business One?

Шлюз — это требование коннектора SAP ERP, то есть RFC-пути. Для Service Layer через HTTPS вместо этого встает вопрос доступности: она обычно работает в собственной сети. Без контролируемого доступа извне ни один облачный поток не сможет до нее достучаться, и этот доступ нужно прояснить до первого потока, а не после.

Затрагивает ли такая интеграция мои лицензии SAP?

Может затронуть, и это нужно обсудить до начала разработки. Business One тарифицируется не по модели Digital Access основной системы SAP, а по именованным пользователям. Что это значит для автоматизированного доступа, мы разобрали в статье RPA или SAP Process Automation. В конечном счете определяющим является ваш договор, а не документ политики.

Симон Гловик, основатель NordFlux
Об авторе

Основатель NordFlux. Семь лет опыта, от веба и SEO до автоматизации в масштабах концерна, сегодня прагматично для среднего бизнеса и с немецким суверенитетом данных.

Сертификаты

  • Сертифицирован Microsoft — PL-900 и AZ-900
  • Сертифицирован UiPath — Automation Developer Associate
Все статьи
Бесплатный первичный анализ

Конкретные вопросы по автоматизации или КИ?

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

Power Automate: нет коннектора SAP Business One