Активировать IDoc или веб-сервис после создания заявки - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть этот сценарий интеграции из ECC в SAP PI 7.0: когда заявка на покупку создается процессом ППМ, данные PR должны автоматически отправляться другой стороне через веб-службу или IDoc.

1) Каким был бы идеальный сценарий для этой интеграции, я имею в виду IDoc для SOAP, RFC для SOAP и т. Д .?

2) Когда PR создается в ECC, как он может это сделать?быть автоматически переданы в SAP XI / PI?

Ответы [ 2 ]

2 голосов
/ 04 апреля 2019

1) Каков идеальный сценарий для этой интеграции, я имею в виду IDoc для SOAP, RFC для SOAP и т. Д .?

От ECC до PI:

Вы можете использовать IDOC s:

  • Существует стандартная возможность повторной отправки данных.
  • IDOC отправка асинхронная.

Более простой способ (без настройки) - использовать RFC call.

  • Не существует стандартного способа пересылки данных.
  • Вызов может быть синхронным / асинхронным

В качестве ответа на комментарий здесь приведены общие инструкции для RFC альтернатива:

  1. Создать функцию удаленного включения в SE37.
  2. импортируйте его один раз в PI.
  3. Используйте его в отображении.
  4. Вызов с ECC выполняется с синтаксисом: CALL FUNCTION 'your_function_name' DESTINATION 'your_defined_destination'.

Между PI для внешней системы:

В сопоставлении PI после получения данных из RFC / IDOC позвоните в веб-службу (SOAP).

2) Когда PR создается в ECC, как его можно автоматически перенести в SAP XI / PI?

В ECC укажите создание PR от MRP до BADI, например this . Отправить IDOC / Позвонить на RFC внутри BADI, который вы выбрали.

0 голосов
/ 05 апреля 2019

Я абсолютно не эксперт в области, но поиск в Интернете (ответы приходят почти исключительно от SCN ) заставил меня думать, что IDoc не может быть автоматически сгенерирован во время создания,Следовательно, обходной путь заключается в следующем:

  • Реализация пользовательского выхода, инициируемого при создании заявки.Возможно, достаточно BADI MD_* (MD_PURREQ_POST?), Упомянутых Dorad, или, возможно, выход EXIT_SAPLMEREQ_008 расширения MEREQ001 (через проект в транзакции CMOD), или, может быть, BAdI ME_PROCESS_REQ_CUST.
  • При выходе этого пользователя вызовите функциональный модуль ALE_PR_CREATE, чтобы создать IDoc (тип сообщения PREQCR1).
  • Создать партнерское соглашение IDoc в транзакции WE20, чтобы IDocотправляется при его создании или откладывается для последующей отправки (работа с регулярными интервалами).Порт может быть tRFC, XML HTTP и т. Д.

Более подробную информацию о каждом шаге можно найти, выполнив поиск в Интернете.

PS: другой ваш вопрос "каков идеальный сценарий?«невозможно ответить, не зная вашего точного контекста, такого как количество PR, созданных во время каждого процесса ППМ, предпочтения вашей компании в технических решениях, разработка практически на нулевом уровне и т. д.

...