Skip to main content

xSuite Cube Release Notes

IDoc-Verarbeitung

Die Eingangsdaten für das Interface OC können aus einer EDI-Strecke kommend verarbeitet werden. Dabei wird der EDI-Prozess INPUT_ORDRSP durchlaufen.

Funktionsbeschreibung

Die hier beschriebene Lösung setzt direkt auf dem eingehenden IDoc vom Typ "ORDERS05" auf. Das heißt, das IDoc wird von xSuite unmittelbar ausgelesen und weiterverarbeitet. Die erforderlichen technischen Validierungen orientieren sich dabei am SAP-Standard. Die Verarbeitung des IDocs kann projektspezifisch angepasst oder erweitert werden.

Nach erfolgreichem Abschluss der technischen Validierungen werden die IDoc-Daten in xSuite-Strukturen überführt und für den FP-Import aufbereitet. Die Daten werden außerdem einem SmartForms-Formular übergeben und dadurch in eine lesbare Form gebracht.

Im Anschluss daran wird der FP-Import durchgeführt und somit ein Interface-Beleg vom Typ "Auftragsbestätigung" erzeugt. Sollten bis zu diesem Zeitpunkt Fehler auftreten, welche die Erzeugung eines Interface-Belegs verhindern (wozu die vorhergehende technische Validierung ebenso zählt), wird ein IDoc-Statussatz mit Fehlermeldung erzeugt und die Verarbeitung abgebrochen.

Nachdem der Interface-Beleg erzeugt worden ist, wird er mit dem zuvor angelegten SmartForms-Formular verknüpft. Danach erfolgt die Toleranzprüfung der Daten. Je nach Ergebnis der Toleranzprüfung und abhängig von den Customizing-Einstellungen der Interface-Satzart wird der Beleg entweder durchgebucht und auf den Status Abgeschlossen gesetzt, oder er behält den Status Offen und wird im Order Confirmation Monitor angezeigt, wo dann eine weitere Nachbearbeitung erfolgen kann.

Ablauf und Komponenten

Die im folgenden aufgeführten Funktionsbausteine gehören zur Funktionsgruppe /WMD/FP_OC_IDOC.

Funktionsbaustein /WMD/FP_IDOC_INPUT_ORDRSP

Dieser Funktionsbaustein ist der Einstieg in die IDoc-Verarbeitung. Er besitzt dieselbe Signatur wie der Standard-Funktionsbaustein IDOC_INPUT_ORDRSP. Damit dieser Funktionsbaustein anstelle des Standard-Funktionsbausteins verwendet wird, muss er im EDI-Customizing eingetragen werden, siehe EDI-Customizing).

Der Funktionsbaustein dient als Rahmen für die weitere Verarbeitung und Schnittstelle zum SAP-IDoc-Framework.

ABAP-Klasse /WMD/CL_FP_OC_IDOC_ORDRSP

Diese Klasse wird vom Funktionsbaustein /WMD/FP_IDOC_INPUT_ORDRSP aufgerufen. Sie führt die eigentliche Verarbeitung des IDocs durch. Dazu zählt:

  • Mapping der IDoc-Sätze in xSuite-Zwischenstrukturen

  • Durchführen der technischen Validierung, wie z. B. Prüfen der Feldlängen

  • Mapping der Daten in die FP-Import-Strukturen

  • Erzeugen eines PDF-Formulars

  • Durchführen des FP-Imports

  • Rückgabe von Statussätzen an den FB /WMD/FP_IDOC_INPUT_ORDRSP

Darüber hinaus kann die Klasse auch zu Testzwecken eingesetzt werden, siehe Formular /WMD/FP_IDOC_INPUT_ORDRSP und Funktionsbaustein /WMD/FP_OC_INPUT_ORDRSP_TEST.

Die Klasse implementiert das Interface /WMD/IF_FP_OC_IDOC_ORDRSP und ist eine Exit-Klasse, also projektspezifisch übersteuerbar.

Formular /WMD/FP_IDOC_INPUT_ORDRSP

Dieser Funktionsbaustein dient zum Testen des Formulars /WMD/FP_IDOC_INPUT_ORDRSP und zum Testen der IDoc-Verarbeitung.

Beim Testen eines Formulars aus der Transaktion SMARTFORMS heraus bekommt das Formular keine Daten von außen. Die für die Verarbeitung erforderlichen Daten müssen anderweitig beschafft werden. Das erledigt der Funktionsbaustein /WMD/FP_IDOC_INPUT_ORDRSP, der über eine Weiche im Formular aufgerufen wird. Dazu muss der Eingabeparameter I_TESTMODE den Wert "X" haben und I_DOCNUM den Wert "<IDoc-Nummer>". Der Funktionsbaustein ruft die Klasse /WMD/CL_FP_OC_IDOC_ORDRSP im Testmodus auf, sodass keine Nachverarbeitung des IDocs stattfindet.

Beispiel: Wird das Formular im Testmodus mit F8F8 aufgerufen, erscheint die Schnittstelle des Formular-Funktionsbausteins. Hier müssen die beiden erwähnten Parameter gesetzt werden.

Import-Parameter

Wert

I_TESTMODE

X

I_DOCNUM

0000000000836819

Auf diese Weise kann die Verarbeitung des IDocs getestet und das Ergebnis visualisiert werden, ohne die Nachverarbeitung durch den FP-Import und die Erzeugung eines Interface-Datensatzes durchlaufen zu müssen.

Funktionsbaustein /WMD/FP_OC_INPUT_ORDRSP_TEST

Dieser Funktionsbaustein dient zum Testen der gesamten Strecke:

  • IDoc-Verarbeitung mit der IDoc-Klasse

  • Durchführen des FP-Imports

  • Nachverarbeitung im Programm /WMD/FP_OCB

Der Funktionsbaustein dient der Fehlersuche innerhalb der gesamten Verarbeitungsstrecke. Die beteiligten Programme, Funktionsbausteine und Klassen werden im Normalfall im Hintergrund ausgeführt. Das macht die Suche nach einem Verarbeitungsfehler schwierig.

Mit diesem Funktionsbaustein kann die Verarbeitung hingegen im Dialogmodus erfolgen, sodass die Fehlersuche mit dem ABAP-Debugger möglich ist.

EDI-Customizing

Die im Folgenden beschriebenen Einstellungen sind exemplarisch und an die Projektsituation anzupassen. Insbesondere sollte der Namensraum /WMD/ durch einen geeigneten Kundennamensraum ersetzt werden.

Portdefinition

Transaktion WE21

Beispielhaft wird hier ein Port vom Typ "Datei" (File) verwendet. Dabei empfiehlt sich die Verwendung eines logischen Verzeichnisses, das zuvor mit der TA FILE eingerichtet worden ist. Der Dateiport ist beim ersten Einrichten der EDI-Strecke hilfreich, um die Verarbeitung eines einzelnen IDocs testen zu können. Für den Produktivbetrieb ist die Verwendung eines anderen Porttyps geeigneter, wie z. B. XML über HTTP.

image18.png
Logische Nachrichtenart anlegen

Transaktion WE81

image19.png
Zuordnung Nachrichtenart/IDoc-Typen

Transaktion WE82

image20.png
Zuordnung Nachrichtenart/Anwendungsobjekt

Transaktion WE57

image21.png
Vorgangscode Eingang

Transaktion WE42

image22.png
  • Detailsicht:

    image23.png
  • Logische Nachricht:

    image24.png
Vorschläge Eingang

Transaktion WE27

image25.png
Partnervereinbarung

Transaktion WE20

image26.png