Приведите «IDOCTYPE_READ_COMPLETE» к «RfcRepository» [.Net Connector 3] - PullRequest
0 голосов
/ 09 января 2019

Я работаю над приложением C # для одного из наших клиентов. Мы уже определили некоторые структуры IDOC. Все характеристики приведены в листе Excel.

Итак, вопрос в том, что можно получить всю структуру IDOC из функции 'IDOCTYPE_READ_COMPLETE' и как-то проанализировать / загрузить ее в объект 'RfcStructureMetadata'?

Дополнительная информация: мне разрешено отправлять IDOC в бэкэнд ABAB только с помощью функции 'IDOC_INBOUND_ASYNCHRONOUS'> таблица 'IDOC_DATA_REC_40'> поле 'SDATA'. Но я не могу создать какую-либо структуру, поскольку у меня еще нет метаданных.

Надеюсь, имеет смысл, спасибо в совет

Ответы [ 2 ]

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

Нет простого / сложного способа добиться этого с помощью коннектора SAP NCO 3. Если кто-то хочет связаться с SAP, просто с помощью функции IDOC_INBOUND_ASYNCHRONOU RFC.

  1. Получение структуры IDoc с функцией IDOCTYPE_READ_COMPLETE.
  2. Запись функций, которые могут приводить из поля SDATA и к нему из таблицы IDOC_DATA_REC_40 в ваши собственные бизнес-объекты. Чтобы «вырезать» поле SDATA, вам понадобится поле EXTLEN (таблица IDOCTYPE_READ_COMPLETE function PT_FIELDS). Это что-то вроде смещения символа.
  3. Помните, что IDOC может содержать несколько сегментов и / или список сегментов. И то же самое для сегментов (рекрусия). Ссылки поддерживаются с помощью SEGNUM и PARNO, их необходимо установить в таблице IDOC_INBOUND_ASYNCHRONOUS function IDOC_DATA_REC_40. Вы можете получить эти значения в функции IDOCTYPE_READ_COMPLETE и в таблице PT_SEGMENTS.
0 голосов
/ 09 января 2019

Вам может быть интересна эта тема:
SAP .Net Connector 3.0 - Как я могу отправить idoc из системы не-SAP?
То, что обсуждалось там, все еще действует.

Если у вас есть выбор, я бы рекомендовал переключиться на Java и использовать SAP Java Connector плюс дополнение библиотеки классов IDoc для работы с IDoc. При этом вам больше не нужно разбираться со всеми техническими вещами IDoc, и вы можете непосредственно начать с реализации бизнес-логики для обработки ваших IDoc.

...