Cmd ei api

Aus SAP Wiki ツ

Die Klasse ist sehr mächtig und es ist schnell ohne weiteres möglich Daten aus dem Geschäftspartner zu löschen. Es ist sehr anzuraten mit einem konkreten Test-Geschäftsparntersatz zu testen, wenn ein Geschäftparnter oder dessen Rollen mit dieser Klasse gepflegt werden.

<syntaxhighlight lang="abap" line start="1">

Klassenmethode maintain_bapi

<sytnaxhighlight lang="abap">

   "Prüfen master_data nicht intial ...
   "Hier sperren mit ENQUEUE_EXKNA1 ...
   cmd_ei_api=>maintain_bapi(
     exporting
        iv_test_run              = iv_test_run
        iv_collect_messages      = abap_true
        is_master_data           = value #( customers = value #( ( lt_master_data ) ) )
     importing
       es_master_data_correct   = data(lt_correct_data)
       es_message_correct       = data(lt_correct_messages)
       es_message_defective     = data(lt_error_messages)
       ).
   IF lt_error_messages-is_error = abap_false AND iv_test_run = abap_false.
     IF error_messages-is_error = abap_false.
      call function 'BAPI_TRANSACTION_COMMIT'
       exporting
        wait = abap_true.
       "Hier entsperren mit DEQUEUE_EXKNA1
       "S-Meldung oder sonstiges
     ELSE.
       CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
       "Hier entsperren mit DEQUEUE_EXKNA1
       "RAISE EXCEPTION TYPE oder oder sonstiges
     ENDIF.
   ELSEIF error_messages-is_error = abap_true.
     IF iv_test_run = abap_false.
       CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
     ENDIF.
     "Hier entsperren mit DEQUEUE_EXKNA1
     "RAISE EXCEPTION TYPE oder sonstiges
   ENDIF.

</sytnaxhighlight>


Dieses Wiki wird privat in Freizeit nach bestem Wissen und Gewissen gepflegt und dient primär als eigene Wissenssammlung für die tägliche Arbeit im SAP-ERP-Umfeld.
Alle dargestellten Softwareprodukte, auch in Form von Screenshots, sind Eigentum der SAP SE. Ihre Marken, vgl. Link, sind u.a.: SAP®, ABAP®, SAP Fiori®, SAP HANA®, SAP S/4HANA®, SAP S/4HANA® Cloud