Das Ereignis inputErrorOccurred
ALE löst das Ereignis inputErrorOccurred aus, wenn der Import-Parameter Mass_Processing des Funktionsbausteins im Eingang auf "X" gesetzt ist. In diesem Fall behandelt ALE die eingehenden IDoc(s) als Paket, selbst wenn es nur ein IDoc enthält.
Da einige IDocs im Paket erfolgreich verarbeitet werden, andere scheitern könnten, kann der Export-Parameter Workflow_Result nicht zum Setzen des Container-Parameters Result verwendet werden. Der Parameter hat vielmehr unterschiedliche Werte, je nachdem welche Parameter in der Tabelle Return_Variables verwendet werden:
Werte für den Parameter Result, wenn Mass_Processing = "X". Beachten Sie, daß Sie für eine gegebene IDoc-Nummer (im Feld Doc_Number) nur einen der oben genannten Namen verwenden. Achten Sie auf Groß- und Kleinschreibung
Wf_param |
Wert von "Result" im Ereignis-Container |
"Error_IDOCs" |
99999 |
"Retry_IDOCs" |
1 |
"Continue_IDOCs" |
2 |
Man könnte diese drei Werte wie folgt verwenden: inputErrorOccurred könnte einen Workflow auslösen, der je nach Wert des Result-Parameters verzweigt:
Möglicher Einsatz der Variablen Result in einem Workflow
Result |
In Workflow definierte Aktion |
1 |
Versucht IDoc n Minuten später erneut, mit einer neuen Aufgabe, die die Methode InputBackground verwendet. Damit könnten IDocs erneut versucht werden, die gescheitert sind, weil eine Anwendung durch einen Benutzer oder Prozeß vorübergehend gesperrt war. |
2 |
Verarbeitet den IDoc auf andere Art. |
99999 |
Fehlerbehandlung mit der Standard/Kundenaufgabe |
Werte für die Export-Parameter für die Verarbeitung von IDoc-Paketen, wenn IDoc 4711 erfolgreich verarbeitet und Anwendungsobjekt mit der Nummer 1234 angelegt wurde; IDoc 4712 hat einen Fehler verursacht, für den der Ereignisparameter Result = 99999 ist; IDoc 4713 hat einen Fehler verursacht, für den Result = 2 ist; IDoc 4714 hat einen Fehler verursacht, für den Result = 1 ist.
Parameter |
Wert | ||
In_Update_Task |
" " (z.B. Initialwert) - Verbuchungstask nicht verwendet | ||
Call_Transaction_Done |
" " (z.B. Initialwert) | ||
Workflow_Result |
"99999" | ||
Application_Variable |
" " (z.B. Initialwert) | ||
Idoc_Status |
Die Tabelle muß vier Sätze enthalten, deren Felder folgende Werte haben müssen: | ||
|
Docnum |
Status | ||
|
4711 |
53 | ||
|
4712 |
51 | ||
|
4713 |
51 | ||
|
4714 |
51 | ||
|
Die Felder Msgid etc. des Statussatzes für IDocs 4712, 4713 und 4714 müssen die Fehlermeldung enthalten. | |||
Return_Variables |
Die Tabelle muß die folgenden fünf Einträge enthalten: | ||
|
Wf_param |
Doc_Number | ||
|
"Processed_IDOCs" |
4711 | ||
|
"Appl_Objects" |
1234 | ||
|
"Error_IDOCs" |
4712 | ||
|
"Continue_IDOCs" |
4713 | ||
|
"Retry_IDOCs" |
4714 | ||
|
Wenn bei der Verarbeitung des eingegangenen IDocs weder ein Anwendungsobjekt angelegt oder geändert wird, können Sie den Eintrag "Appl_Objects" weglassen - ohne Belegnummer ist er sinnlos. | |||
Serialization_Info |
Leer, falls Serialisierung nicht verwendet wird. | ||