*&---------------------------------------------------------------------* *& Report Name : /EUTIN/IDOC_CHECK_AND_TEST *& Title : ABAP-Demo: IDOC Configuration and Error Analysis *& Developer : Michael Eutin - 10.12.2025 *& Development Class : $TMP *& Description : *& Display of the IDoc configuration and data flow. *& Provide list of transaction codes for problem alanysis. *& *&---------------------------------------------------------------------* *& CHANGE HISTORY *&---------------------------------------------------------------------* *& Date Description *&---------------------------------------------------------------------* *& *& *& *&---------------------------------------------------------------------* REPORT /eutin/idoc_check_and_test NO STANDARD PAGE HEADING LINE-SIZE 1023. *---------------------------------------------------------------------- * definition of local classes *---------------------------------------------------------------------- CLASS lcl_main DEFINITION FINAL. PUBLIC SECTION. CLASS-METHODS: init, pai_1000 IMPORTING iv_ucomm TYPE syucomm. ENDCLASS. *---------------------------------------------------------------------- * selection screen 1000 *---------------------------------------------------------------------- SELECTION-SCREEN BEGIN OF TABBED BLOCK tbl FOR 16 LINES. SELECTION-SCREEN TAB (25) b00 USER-COMMAND tab1 DEFAULT SCREEN 9000. SELECTION-SCREEN TAB (25) b01 USER-COMMAND tab2 DEFAULT SCREEN 9001. SELECTION-SCREEN TAB (25) b02 USER-COMMAND tab3 DEFAULT SCREEN 9002. SELECTION-SCREEN TAB (25) b10 USER-COMMAND tab4 DEFAULT SCREEN 9010. SELECTION-SCREEN END OF BLOCK tbl. SELECTION-SCREEN BEGIN OF SCREEN 9000 AS SUBSCREEN. "IDoc: Monitoring SELECTION-SCREEN PUSHBUTTON /2(68) wlf_idoc USER-COMMAND $_wlf_idoc. SELECTION-SCREEN PUSHBUTTON /2(68) bd87 USER-COMMAND $_bd87. SELECTION-SCREEN PUSHBUTTON /2(68) we02 USER-COMMAND $_we02. SELECTION-SCREEN PUSHBUTTON /2(68) we03 USER-COMMAND $_we03. SELECTION-SCREEN PUSHBUTTON /2(68) we06 USER-COMMAND $_we06. SELECTION-SCREEN PUSHBUTTON /2(68) we07 USER-COMMAND $_we07. SELECTION-SCREEN PUSHBUTTON /2(68) we09 USER-COMMAND $_we09. SELECTION-SCREEN PUSHBUTTON /2(68) we10 USER-COMMAND $_we10. SELECTION-SCREEN PUSHBUTTON /2(68) sm58 USER-COMMAND $_sm58. SELECTION-SCREEN PUSHBUTTON /2(68) rz20 USER-COMMAND $_rz20. SELECTION-SCREEN PUSHBUTTON /2(68) rz21 USER-COMMAND $_rz21. SELECTION-SCREEN PUSHBUTTON /2(68) bdm2 USER-COMMAND $_bdm2. SELECTION-SCREEN PUSHBUTTON /2(68) bdm7 USER-COMMAND $_bdm7. SELECTION-SCREEN PUSHBUTTON /2(68) sara USER-COMMAND $_sara. SELECTION-SCREEN END OF SCREEN 9000. SELECTION-SCREEN BEGIN OF SCREEN 9001 AS SUBSCREEN. "IDoc: Konfig & Test SELECTION-SCREEN PUSHBUTTON /2(68) sale USER-COMMAND $_sale. SELECTION-SCREEN PUSHBUTTON /2(68) we20 USER-COMMAND $_we20. SELECTION-SCREEN PUSHBUTTON /2(68) we21 USER-COMMAND $_we21. SELECTION-SCREEN PUSHBUTTON /2(68) we19 USER-COMMAND $_we19. SELECTION-SCREEN PUSHBUTTON /2(68) we11 USER-COMMAND $_we11. SELECTION-SCREEN PUSHBUTTON /2(68) we12 USER-COMMAND $_we12. SELECTION-SCREEN PUSHBUTTON /2(68) we14 USER-COMMAND $_we14. SELECTION-SCREEN PUSHBUTTON /2(68) we15 USER-COMMAND $_we15. SELECTION-SCREEN PUSHBUTTON /2(68) we16 USER-COMMAND $_we16. SELECTION-SCREEN PUSHBUTTON /2(68) we17 USER-COMMAND $_we17. SELECTION-SCREEN PUSHBUTTON /2(68) we18 USER-COMMAND $_we18. SELECTION-SCREEN END OF SCREEN 9001. SELECTION-SCREEN BEGIN OF SCREEN 9002 AS SUBSCREEN. "IDoc: Entwicklung SELECTION-SCREEN PUSHBUTTON /2(68) idoc USER-COMMAND $_idoc. SELECTION-SCREEN PUSHBUTTON /2(68) we30 USER-COMMAND $_we30. SELECTION-SCREEN PUSHBUTTON /2(68) we31 USER-COMMAND $_we31. SELECTION-SCREEN PUSHBUTTON /2(68) we60 USER-COMMAND $_we60. SELECTION-SCREEN PUSHBUTTON /2(68) we64 USER-COMMAND $_we64. SELECTION-SCREEN PUSHBUTTON /2(68) we81 USER-COMMAND $_we81. SELECTION-SCREEN PUSHBUTTON /2(68) we82 USER-COMMAND $_we82. SELECTION-SCREEN PUSHBUTTON /2(68) we41 USER-COMMAND $_we41. SELECTION-SCREEN PUSHBUTTON /2(68) bd51 USER-COMMAND $_bd51. SELECTION-SCREEN PUSHBUTTON /2(68) we57 USER-COMMAND $_we57. SELECTION-SCREEN PUSHBUTTON /2(68) we42 USER-COMMAND $_we42. SELECTION-SCREEN PUSHBUTTON /2(68) bd62 USER-COMMAND $_bd62. SELECTION-SCREEN PUSHBUTTON /2(68) bd79 USER-COMMAND $_bd79. SELECTION-SCREEN PUSHBUTTON /2(68) bd55 USER-COMMAND $_bd55. SELECTION-SCREEN PUSHBUTTON /2(68) we70 USER-COMMAND $_we70. SELECTION-SCREEN PUSHBUTTON /2(68) we71 USER-COMMAND $_we71. SELECTION-SCREEN PUSHBUTTON /2(68) we72 USER-COMMAND $_we72. SELECTION-SCREEN PUSHBUTTON /2(68) we73 USER-COMMAND $_we73. SELECTION-SCREEN END OF SCREEN 9002. SELECTION-SCREEN BEGIN OF SCREEN 9010 AS SUBSCREEN. "RFC: Transaktionen SELECTION-SCREEN PUSHBUTTON /2(68) sm59 USER-COMMAND $_sm59. SELECTION-SCREEN PUSHBUTTON /2(68) rsrfcchk USER-COMMAND $_rsrfcchk. SELECTION-SCREEN PUSHBUTTON /2(68) sping USER-COMMAND $_sping. SELECTION-SCREEN PUSHBUTTON /2(68) os01 USER-COMMAND $_os01. SELECTION-SCREEN PUSHBUTTON /2(68) sm49 USER-COMMAND $_sm49. SELECTION-SCREEN PUSHBUTTON /2(68) sm69 USER-COMMAND $_sm69. SELECTION-SCREEN PUSHBUTTON /2(68) rsrfctrc USER-COMMAND $_rsrfctrc. SELECTION-SCREEN PUSHBUTTON /2(68) rsrfcstx USER-COMMAND $_rsrfcstx. SELECTION-SCREEN PUSHBUTTON /2(68) strfctra USER-COMMAND $_strfctrace. SELECTION-SCREEN PUSHBUTTON /2(68) rspfparr USER-COMMAND $_rspfpar_rfc. SELECTION-SCREEN PUSHBUTTON /2(68) rsusraud USER-COMMAND $_rsusr002_audit_rfc. SELECTION-SCREEN PUSHBUTTON /2(68) slg1 USER-COMMAND $_slg1. SELECTION-SCREEN PUSHBUTTON /2(68) st22 USER-COMMAND $_st22. SELECTION-SCREEN END OF SCREEN 9010. *----------------------------------------------------------------------* *--- Event INITIALIZATION *----------------------------------------------------------------------* INITIALIZATION. *----------------------------------------------------------------------* lcl_main=>init( ). *----------------------------------------------------------------------* *--- Event Selection Screen 1000: Process After Input (PAI) *----------------------------------------------------------------------* AT SELECTION-SCREEN. lcl_main=>pai_1000( EXPORTING iv_ucomm = sy-ucomm ). *----------------------------------------------------------------------* *--- Event START-OF-SELECTION *----------------------------------------------------------------------* START-OF-SELECTION. RETURN. *---------------------------------------------------------------------- * implementation of local classes *---------------------------------------------------------------------- CLASS lcl_main IMPLEMENTATION. METHOD init. *--- default texts and valus on generated selection screen 1000 sy-title = 'Demo: IDoc Konfiguration und Fehlersuche'. tbl-activetab = 'TAB1'. tbl-dynnr = 9000. tbl-prog = sy-repid. b00 = 'IDoc: Monitoring'. wlf_idoc = |{ icon_execute_object } IDoc-Verarbeitung (WLF_IDOC)|. bd87 = |{ icon_execute_object } Statusmonitor für ALE-Nachrichten (BD87)|. we02 = |{ icon_execute_object } IDoc anzeigen (WE02)|. we03 = |{ icon_execute_object } IDoc-Listen (WE03)|. we06 = |{ icon_execute_object } Aktives IDoc-Monitoring (WE06)|. we07 = |{ icon_execute_object } IDoc-Statistik (WE07)|. we09 = |{ icon_execute_object } IDocs über Inhalt finden (WE09)|. we10 = |{ icon_execute_object } IDocs über Suche nach Inhalt (WE10)|. sm58 = |{ icon_execute_object } TRFC: Asynchroner RFC Fehlerlog (SM58) |. rz20 = |{ icon_execute_object } CCMS Monitoring - Übersicht Monitorsammlung (RZ20)|. rz21 = |{ icon_execute_object } CCMS Customizing Monitorarchitektur (RZ21)|. bdm2 = |{ icon_execute_object } Monitoring: IDocs beim Empfänger (BDM2)|. bdm7 = |{ icon_execute_object } ALE-Audit: Statistische Auswertungen (BDM3)|. sara = |{ icon_execute_object } Archivverwaltung (SARA)|. b01 = 'IDoc: Konfig & Test'. sale = |{ icon_execute_object } IMG: IDoc Interface / Application Link Enabling (ALE) (SALE)|. we20 = |{ icon_execute_object } Partnervereinbarungen (WE20)|. we21 = |{ icon_execute_object } Portbeschreibung (WE21)|. we19 = |{ icon_execute_object } Testwerkzeug (WE19) |. we11 = |{ icon_execute_object } IDocs löschen (WE11)|. we12 = |{ icon_execute_object } Test geänderte Eingangsdatei (WE12) |. we14 = |{ icon_execute_object } Test Nachrichtenverarbeitung (Ausgang) (WE14) |. we15 = |{ icon_execute_object } Test Nachrichtenverarbeitung aus NAST (WE15) |. we16 = |{ icon_execute_object } Test Eingangsdatei (WE16) |. we17 = |{ icon_execute_object } Test Statusdatei (Eingang) (WE17) |. we18 = |{ icon_execute_object } Statusdatei erzeugen (WE18) |. b02 = 'IDoc: Entwicklung'. idoc = |{ icon_execute_object } IDoc: Übersicht Reparatur- und Testprogramme (IDOC)|. we31 = |{ icon_execute_object } Entwicklung IDoc-Segment (WE31)|. we30 = |{ icon_execute_object } Entwicklung IDoc-Typ (WE30)|. we60 = |{ icon_execute_object } Dokumentation für IDoc-Typen (WE60) |. we64 = |{ icon_execute_object } Dokumentation Nachrichtentypen (WE64) |. we81 = |{ icon_execute_object } Logische Nachrichtentypen pflegen (WE81)|. we82 = |{ icon_execute_object } Zuordnung Nachricht zu IDoc-Typ pflegen (WE82)|. we41 = |{ icon_execute_object } Vorgangscodes Ausgang pflegen (WE41)|. bd51 = |{ icon_execute_object } Pflege Eingangsfunktionsbausteine (BD51)|. we57 = |{ icon_execute_object } Zuordnung Nachricht zu Anwendungs-Objekt (WE57)|. we42 = |{ icon_execute_object } Vorgangscodes Eingang pflegen (WE42)|. bd62 = |{ icon_execute_object } Segmentumsetzregel definieren (BD62)|. bd79 = |{ icon_execute_object } Pflege IDoc-Umsetzregeln (BD79)|. bd55 = |{ icon_execute_object } Pflege IDoc-Umsetzung (Nachrichtentyp) (BD55)|. we70 = |{ icon_execute_object } Umklassifizierung: Basistypen (WE70)|. we71 = |{ icon_execute_object } Umklassifizierung: Erweiterungen (WE71)|. we72 = |{ icon_execute_object } Umklassifizierung: IDoc-Typen (WE72)|. we73 = |{ icon_execute_object } Umklassifizierung: Log. Nachrichten (WE73)|. b10 = 'RFC: Transaktionen'. sm59 = |{ icon_execute_object } RFC Destinations (Display/Edit) (SM59)|. rsrfcchk = |{ icon_execute_object } RFC Destinations mit Anmeldedaten (RSRFCCHK)|. sping = |{ icon_execute_object } Transaktion SPING (SPING)|. os01 = |{ icon_execute_object } LAN-Prüfung mit PING (OS01)|. sm49 = |{ icon_execute_object } Ausführen externer OS-Kommandos "niping" (SAP-Note 2986631) (SM49)|. sm69 = |{ icon_execute_object } Pflegen externer OS-Kommandos "niping" (SAP-Note 2986631) (SM69)|. rsrfctrc = |{ icon_execute_object } RFC-Trace (RSRFCTRC)|. rsrfcstx = |{ icon_execute_object } RFC-Statistik (RSRFCSTX)|. strfctra = |{ icon_execute_object } RFC Statistiksätze auswerten (STRFCTRACE)|. rspfparr = |{ icon_execute_object } RFC Profile-Parameter anzeigen (RSPFPAR_RFC)|. rsusraud = |{ icon_execute_object } Benutzer, die RFCs ausführen dürfen (RSUSR002_AUDIT_RFC)|. slg1 = |{ icon_execute_object } Anwendungs-Log: Protokolle anzeigen (SLG1)|. st22 = |{ icon_execute_object } ABAP-Laufzeitfehler anzeigen (ST22)|. ENDMETHOD. METHOD pai_1000. * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - *--- pai_1000 IMPORTING iv_ucomm TYPE syucomm, * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IF iv_ucomm+0(2) = '$_'. *--- execute transaction including authorization check for requested *--- transaction code zo prevent missusage! DATA lv_tcode TYPE sytcode. lv_tcode = iv_ucomm+2. CALL FUNCTION 'ABAP4_CALL_TRANSACTION' EXPORTING tcode = lv_tcode EXCEPTIONS call_transaction_denied = 1 tcode_invalid = 2 OTHERS = 3. IF sy-subrc IS NOT INITIAL. IF sy-msgty IS NOT INITIAL. MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno DISPLAY LIKE 'E' WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. MESSAGE |Fehler beim Aufruf der Transaktion { iv_ucomm }| TYPE 'S' DISPLAY LIKE 'E'. RETURN. ENDIF. ENDIF. ENDMETHOD. ENDCLASS. *--- The End!