Добрый день коллеги!
Работаю над такой задачей - нужно интегрировать BizTalk с САП. Решил начать с малого и для начала скачал готовые примеры пакетов для BizTalk с сайта Мелкософта. Сначала хочу посмотреть как работает отправка сообщений в САП. Для этого я задеплоил на сервер самый первый пакет "Send IDOC", который просто оправляет ORDERS05 в САП и получает отклик от сервера, затем пакет публикует обычный нотификейшн с 'guid' в соотв. xml файле:
The SendIDOC sample demonstrates how to send the ORDERS05 IDOC to the SAP system. This sample performs the following operations:
• Picks up an input file dropped at a pre-defined file location.
• Sends the IDOC to the SAP system.
• Receives the response from the SAP system and copies the output XML at another pre-defined file location.Во время настройки пакета в BizTalk и настройки соединения столкнулся с рядом проблем... что-то решил сам, что-то совсем непонятно. На данный момент при отправке сообщения в САП, я вижу что BizTalk подключается (через Gateway monotor) и ошибок там никаких нет. Ошибка возникает на стороне BizTalk (я так понимаю уже при получение ответа из САП):
"Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException: The segment name is not valid for the IDOCTYP, Release, or CIMTYP. Segment name: E2EDP01006GRP IDOCTYP: ORDERS05 Release: 620 CIMTYP: . Ensure that your message xml validates against the operation schema. Что это означает не совсем понятно, т.к. релиз отправляемого IDOC файла и так 620-й. Хотфиксы для BizTalk не помогли. Если кто сталкивался с такой проблемой - дайте совет как решить...
-----------------
Еще вопросы касательно интеграции - не пойму как настроить RFC в SAP. Я так понимаю что BizTalk должен публиковать некий сервис, к которому как раз и настраивается RFC подключение (или я что-то не понимаю), т.к.
в этой доке создается впечатление что просто создается RFC, каким-то образом регистрируется ProgramID и коннекшн тест проходит успешно... у меня так не выходит, да и как-то противоречит здравому смыслу. Дайте пожалуйста совет как на самом деле настраиваются RFC для таких случаев?
И еще - в этой же статье упоминается некий инструмент COM4ABAP (я так понял это тот-же Net4ABAP). Инфы по ним критически мало и мне не понятно зачем они вообще?
Спасибо!