Ansicht
Dokumentation
PARSE_IDOC - Erstellen von Anwendungsbelegen oder -stammdaten aus IDOC's
CL_GUI_FRONTEND_SERVICES - Frontend Services CPI1466 during BackupDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
Der vorliegende Funktionsbaustein stellt einer Anwendung ein Tool zur Verfügung, mit der aus eingehenden IDOC's Anwendungsbelege erzeugt werden können. Dieses Tool wird im folgenden Parser genannt. Der Parser dient NICHT dazu, die IDOC-Segmente inhaltlich zu interpretieren und selbständig Anwendungsbelege aufzubauen, sondern er steuert den Aufbau des Anwendungsbelegs durch die jeweilige Anwendung.
Der Parser stellt der Anwendung folgende Dienste für den IDOC-Eingang zur Verfügung:
- gezielter Aufruf einer Anwendungsfunktion für jedes IDOC-Segment
- Anstoß einer Verbuchungsroutine der Anwendung, wenn:
- ein neuer Belegkopf im IDOC erkannt wird
- die maximale Anzahl erlaubter Belegpositionen erreicht ist
- das IDOC zu Ende ist
- Speichern von IDOC-Bereichen, aus denen die Anwendung keinen Beleg-
bzw. keine Belegposition erzeugen konnte, weil ein Fehler aufgetreten
ist
- Anstoß einer erneuten Verarbeitung der fehlerhaften IDOC-Bereiche
- Wiederaufsetzen an der richtigen IDOC-Position, wenn ein Teil des
IDOC's bereits zu einem Anwendungsbeleg verarbeitet und die
Verarbeitung dann abgebrochen wurde
- Erkennen von Verbuchungsabbrüchen
- Verhinderung des Nachfahrens von Verbuchungsabbrüchen, falls die
Daten zwischenzeitlich erfolgreich verbucht wurden
Somit kann man sich bei der Entwicklung eines IDOC-Eingangs auf die reine Anwendungsseite konzentrieren; die Funktionalität zur Steuerung der Eingangsverarbeitung stellt der Parser bereit.
Der Ablauf der Eingangsverarbeitung eines IDOC's mit Hilfe des Parsers ist folgender:
- Von der EDI/ALE-Schnittstelle wird ein Funktionsbaustein der
jeweiligen Anwendung aufgerufen
- Der Anwendungs-FB stellt die Verarbeitungsregeln für den Parser
zusammen
- Der Anwendungs-FB ruft den Parser auf (FB PARSE_IDOC) und
übergibt diesem die IDOC-Segmenttabelle und die Regeln, nach denen
das IDOC verarbeitet werden soll
- Der Parser liest die IDOC-Tabelle und ruft anhand der Regeln je nach
aktuellem Status die entsprechenden Funktionsbausteine der Anwendung
auf
- Ist das IDOC abgearbeitet, kehrt der Parser mit entsprechenden
Statusinformationen zum Aufrufer zurück
Die Anwendung übergibt dem Parser die Regeln in Form einer Tabelle, die
folgende Struktur hat:
- seg : Name des IDOC-Segments
- fcode : Funktionscode, falls aus einem IDOC unterschiedliche
Typen von Anwendungsbelegen erzeugt werden sollen
- rule_index : laufende Nummer, falls für ein Segment mehrere
Funktionen aufgerufen werden sollen
- pflag : Typ des Segments
- function : Name des Funktionsbausteins, der für das Segment
aufgerufen werden soll
Die Schnittstelle des Parsers zum jeweiligen Funktionsbaustein der
Anwendung hängt vom Typ des Segments ab. Es gibt folgende Möglich-
keiten:
- Erstes Header-Segment; Ausprägung pflag = 'H1'
Dieses Segment kennzeichnet immer den Beginn eines neuen Belegs.
Die Schnittstelle zur Anwendung sieht folgendermaßen aus:
Import-Parameter der Anwendung:
i_segment like edidd - IDOC-Segment
i_parser_info type parser_info_entry - Parser-Informationen
Export-Parameter der Anwendung:
o_application_variables
Exceptions der Anwendung:
error_in_application
- Weitere Header-Segmente; Ausprägung pflag = 'HS'
Dieses Segment kennzeichnet weitere Segmente der Kopfebene.
Die Schnittstelle entspricht der des ersten Header-Segments.
- Erstes Positions-Segment; Ausprägung pflag = 'P1'
Dieses Segment kennzeichnet das erste Segment einer Position.
Die Schnittstelle entspricht der des ersten Header-Segments.
- Weitere Positions-Segmente; Ausprägung pflag = 'PS'
Dieses Segment kennzeichnet weitere Segmente einer Position.
Die Schnittstelle entspricht der des ersten Header-Segments.
- Funktion zum Verarbeiten einer Position; Ausprägung pflag = 'PF'
Diese Funktion wird vom Parser aufgerufen, wenn alle Segmente einer
Position abgearbeitet wurden.
Die Schnittstelle zur Anwendung sieht folgendermaßen aus:
Import-Parameter der Anwendung:
i_parser_info type parser_info_entry - Parser-Informationen
Export-Parameter der Anwendung:
o_line_item_assign - Zeilennummer des Anwendungsbelegs
o_application_variables
Exceptions der Anwendung:
error_in_application
- Funktion zum Verarbeiten eines Belegs; Ausprägung pflag = 'HF'
Diese Funktion wird vom Parser aufgerufen, wenn der Anwendungsbeleg
gebucht werden soll. Wichtig ist, daß die Anwendung die Daten nur
zur Verbuchung einplant, aber keinen COMMIT durchführt. Der Parser
führt einen COMMIT durch, sobald seine eigenen Verbuchungsaufträge
abgesetzt wurden.
Die Schnittstelle zur Anwendung sieht folgendermaßen aus:
i_parser_info type parser_info_entry - Parser-Informationen
Tables-Parameter:
o_t_line_items_with_error - fehlerhafte Positionen
Exceptions der Anwendung:
error_in_application
- Funktion zur Fehlerprotokollierung auf Positionsebene;
Ausprägung pflag = 'PE'
Diese Funktion wird aufgerufen, wenn ein Fehler auf Positionsebene
aufgetreten ist.
Es werden keine Schnittstellen-Parameter benötigt.
- Funktion zur Fehlerprotokollierung auf Kopfebene;
Ausprägung pflag = 'HE'
Diese Funktion wird aufgerufen, wenn ein Fehler auf Kopfebene
aufgetreten ist.
Es werden keine Schnittstellen-Parameter benötigt.
- Funktion zur Initialisierung der Anwendung;
Ausprägung pflag = 'AI'
Diese Funktion wird für jedesmal aufgerufen, wenn ein neues IDOC
beim Parser eintrifft.
Es werden keine Schnittstellen-Parameter benötigt.
Beispiel
Als Beispiel kann der IDOC-Eingang der POS-Schnittstelle für Warenbewegungen verwendet werden.
Der Funktionsbaustein, der von EDI/ALE aufgerufen wird, heißt 'IDOC_INPUT_POS_INV_MANAGEMENT'.
Die Regeln für den Parser werden in der Form-Routine 'SET_GOODS_MOVEMENT_PARS_RULES' der Funktionsgruppe 'WPUE' definiert.
Die Funktionsbausteine der Anwendung, die der Parser aufruft, kann man aus dem Coding der o.g. Form-Routine ermitteln.
Hinweise
Weiterführende Informationen
Parameter
AUTOMATIC_RETRYDOCUMENT_SPLIT
IDOC_CONTRL
IDOC_DATA
IDOC_STATUS
MAX_NUMBER_OF_DOCUMENTS
NUMBER_OF_ERRORS
PARSER_RULES
POST_WITH_GAPS
Ausnahmen
Funktionsgruppe
WPPACL_GUI_FRONTEND_SERVICES - Frontend Services CPI1466 during Backup
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 8299 Date: 20240604 Time: 092945 sap01-206 ( 71 ms )