Основы SAP PI. Часть 7— «Системы всего ландшафта – соединяйся! Адаптеры».

adapters

Сегодня мы с вами поговорим о начальной и конечной точке любого интерфейса – адаптере.


Весь цикл статей:
SAP Process Integration – основы. Часть 1: историческая.
SAP Process Integration – основы. Часть 2 – обзор архитектуры.
SAP Process Integration – основы. Часть 3 – System Landscape Directory.
Основы SAP PI. Часть 4 – “Что такое интерфейс?”.
Основы SAP PI. Часть 5 – “Integration Directory, настройка интерфейса“
Основы SAP PI. Часть 6 – “Правила маршрутизации и pipeline. Почтальон Пиайкин за работой.“
Основы SAP PI. Часть 7 — «Системы всего ландшафта – соединяйся! Адаптеры».


Adapter Framework

Работой всех адаптеров заведует компонент Adapter Framework. В самом общем виде его архитектура выглядит так:

Рис.1: Архитектура Adapters Framework

Рис.1: Архитектура Adapters Framework

Сервис обработки сообщений занимается обменом сообщениями с центральной системой обработки сообщений (Integration Engine для Dual Stack инсталляции, Advanced Adapter Engine Extended – для Single Stack).

Обработчик модулей позволяет расширять адаптеры дополнительными Java-модулями, что позволяет производить действия над сообщением непосредственно до или сразу после (а иногда – и вместо!) работы адаптера.

Адаптеры

Напомню, что у адаптера SAP PI две основных задачи:

  • прием/передача сообщений в формате внешней системы с использованием необходимого технического протокола передачи;
  • перевод сообщений между форматом внешней системы и внутренним форматом SAP PI. Используется ряд названий внутреннего формата сообщений XI/PI – XI-SOAP, PI-SOAP, PI XML).

На данный момент (версия SAP PI 7.4) в стандартную поставку инсталляции Dual Stack (ABAP+J2EE) входят:

    ABAP ->

  • IDoc Adapter
  • HTTP Adapter
  • XI Adapter
  • WS-RM (Web Services Reliable Messaging) Adapter
  •  
    J2EE ->

  • RFC Adapter
  • SAP Business Connector Adapter
  • File/FTP Adapter
  • JDBC Adapter
  • JMS Adapter
  • SOAP Adapter
  • Marketplace Adapter
  • Mail Adapter
  • RNIF Adapter
  • CIDX Adapter
  • IDoc Adapter (AEX)
  • HTTP Adapter (AEX)

При инсталляции Single Stack (J2EE) становятся недоступными адаптеры, разработанные на ABAP: IDoc, HTTP, XI, WS-RM.
Отсутствие IDoc и HTTP компенсируется такими же адаптерами, но разработанными на Java; общение по XI-протоколу можно организовать через SOAP-адаптер с использованием протокола XI 3.0.
Замена адаптера WS-RM на момент публикации статьи в J2EE отсутствует.

Несколько адаптеров из списка являются устаревшими и на данный момент практически не используются – это Marketplace Adapter (был разработан для интеграции с mySAP Marketplace – продукт более не существует) и SAP Business Connector Adapter (был создан для интеграции с интеграционным продуктом – предшественником SAP PI).

RNIF(RosettaNet Implementation Framework) и CIDX(Chemical Industry Data Exchange) – это адаптеры индустриальных стандартов RosettaNet.

Если же в списке адаптеров не найдется необходимого – за дополнительную плату можно воспользоваться адаптерами, разработанными партнерами SAP. Официальными партнерами, поставляющими адаптеры являются компании Seeburger и iWay Software.

Адаптеры также можно разрабатывать самостоятельно.

Модули

Модуль адаптера – это компонент, позволяющий выполнять различные действия с передаваемым сообщением непосредственно внутри Adapter Framework. Примером такого действия может служить архивация сообщения в zip-архив или перевод текста из кодировки в кодировку.
В стандартную поставку PI 7.4 входит ряд стандартных модулей; также существует возможность разрабатывать модули самостоятельно.

———————-
На этом основные теоретические сведения по SAP Process Integration заканчиваются.
Я надеюсь, что после прочтения этого цикла статей у вас возникло понимание принципов построения и работы интеграционной платформы SAP. Хочется верить, что и коллегам-профессионалам было интересно.

Я планирую выпустить еще серию статей – с практикой и более углубленным изучением материала.
Следите за новостями!

Ваш Pitroff.

10 thoughts on “Основы SAP PI. Часть 7— «Системы всего ландшафта – соединяйся! Адаптеры».

  1. Николай

    Добрый день!
    Небольшой вопросик: если XI Adapter – ABAP’овский, то почему тогда его настройка syncMessageDeliveryTimeoutMsec находится в Java?
    Спасибо.

    Reply
    1. pitroff.ru Post author

      Добрый день, Николай!

      Это не совсем его настройка. )

      Настройка syncMessageDeliveryTimeoutMsec – это настройка подсистемы обработки сообщений.

      А XI-aдаптер – это адаптер для связи одного Integration Engine с другим, в частности, при работе по ABAP-proxy протоколу.
      В версии 7.4 XI-адаптер есть только в ABAP:
      http://help.sap.com/saphelp_nw74/helpdata/en/48/ce24473a8e5430e10000000a42189b/frameset.htm
      а в AAE его нет:
      http://help.sap.com/saphelp_nw74/helpdata/en/f4/526c4126e1496ba5fba19166c19743/frameset.htm

      Reply
  2. Владимир

    Добрый день, Алексей!

    Большое вам спасибо за набор качественных статей, всё по делу и весьма доступно.
    У меня есть вопрос по продукту SAP MII, знакомы ли вы с ним? (Сразу признаюсь, я — нет.)
    Зачем SAP выпустил ещё одну систему? Для её функций не хватило бы SAP PI?

    Reply
    1. pitroff.ru Post author

      Добрый день, Владимир!

      Спасибо за добрые слова. )

      С SAP MII я немного работал, был один проект.
      Это продукт приобретенный, вместе с компанией Lighthammer в 2005м году, в целях получить продукт для управления производством (PI никогда не позиционировался, как продукт для конкретного бизнеса).
      Ну и отличия соответственно – MII умеет собирать данные с MES-систем, имеет презентационный уровень (у PI уровня взаимодействия с пользователем нет), MII по коннекторам больше ориентирован на промышленные стандарты (через SAP Plant Connectivity). Как-то так, вкратце.

      Reply
  3. Султан

    Добрый день!

    Спасибо большое за статьи, полезно и интересно.
    Но в процессе чтения возникло несколько вопросов:
    1) Если я правильно понял, что SAP PI помогает объединять большое кол-во систем. Допустим у нас есть несколько SAP серверов. На одном SAP NetWeaver (Dual stack), на другом HANA, на третьем BO. И с помощью PI мы можем объединить все 3 сервера и он будет в роли связующего звена. На котором будет реализована логика. Я прав?
    2) Не совсем понял чем отличается бизнес система от технического ландшафта. И там и там есть компоненты ПО.
    3) Допустим мне надо узнать список систем которые подключены к PI. Получается я могу подключиться к PI host:port/sld и что из этого (бизнес система или технический ландшафт) будет являться этим самым списком систем?

    Reply
    1. pitroff.ru Post author

      Добрый день!

      1) SAP PI – это интеграционная шина, основная ее задача – управлять обменом данными между системами.
      Но в Вашем примере есть неточность: SAP HANA – это не система, это технология; SAP BO обычно связан с хранилищем данных напрямую – это средство построение отчетности.
      Более правильным примером будет ландшафт из SAP ERP (их может быть несколько), SAP BI, внешних (не-SAP систем) – и SAP PI, как объединяющее звено.

      2) Бизнес-система – это не ПО, это функция, которую система играет для бизнеса. Техническая система – это ПО и железо, которое лежит под бизнес-системой.

      3) Для этой задачи нужно смотреть список бизнес-систем.

      Reply
      1. Султан

        Спасибо большое за ответ.
        Прочел статьи про PI, очень понравилось. Доступным языком написано. Жду еще статьи по SAP.

        Reply
  4. Андрей

    Добрый день!
    Спасибо большое за замечательные статьи.
    Было бы эпично, если бы появился материал практического подробного примера по настройке и организации обмена, например между SAP и PostgreSQL

    Спасибо.

    Reply
    1. pitroff.ru Post author

      Добрый день, Андрей!

      Спасибо на добром слове. )
      Статьи, к сожалению, писать сейчас не успеваю – работа.

      Reply

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *