Имитировать транзакции SAP в RFC
Как можно было бы создать SAP RFC, который запускает транзакцию с параметрами и возвращает ее данные?
Я видел, как кто-то использовал PERFORM BDC_DYNPRO
и когда я запускаю код через отладчик, он, кажется, запускает экраны реальных транзакций. Как вы собираетесь настроить это?
1 ответ
В системах SAP есть много RFC, которые делают именно это - они называются функциями BAPI. Параметры заполнения иногда могут быть сложными, и документация для некоторых из них не очень полезна. Посмотрите в транзакции BAPI, чтобы увидеть список.
Вы также можете создавать документы в транзакциях с помощью кода с использованием IDOC, который должен вызываться с использованием встроенных IDOC RFC.
BDC на самом деле не рекомендуется для того, чего вы пытаетесь достичь, поскольку они имитируют поток экрана внутри системы и могут потреблять много ресурсов для некоторых простых задач (например, добавления нового элемента в документ). BDC также зависит от позиционных ссылок, и это может быть проблемой для реализации / поддержки. BAPI всегда предпочтительнее BDC, однако в некоторых случаях у вас нет BAPI для транзакции, и нет другого решения, кроме использования BDC.
Наконец, как я сказал, некоторые BAPI могут быть очень сложны в реализации, поэтому "оболочка" RFC может быть способом упрощения процессов интеграции.