Script-Funktion:Ermittelt mit Filterkriterien Reportzeilen von aktivierbaren Objekten und stellt das Ergebnis als interne Auflistung (Datensequenz) für die weitere Verarbeitung zur Verfügung.
PREP_PROCESS_REPORT([Object type , [RunID], [Report type], [Filter] [, "COL=Definition1], [Definition2]")
Syntax |
Beschreibung/Format |
---|---|
Objekttyp |
Kurzbezeichnung des Typs des Objekts, das der Klasse der aktivierbaren Objekte angehört. Es kann auch der Report des Mandanten, in dem diese Script-Funktion verwendet wird, aufbereitet werden. Die Kurzbezeichnung lautet in diesem Fall "CLNT". Format: AE-Name, Script-Literal oder Script-Variable Optionaler Parameter, da der Objekttyp durch die laufende Nummer (RunID) eindeutig zugeordnet werden kann (kompatibel zur Version 2.6xx). |
RunID |
Laufende Nummer (RunID) der Aufgabe, deren Report bearbeitet werden soll. Soll der Report einer anderen Aufgabe analysiert werden, so muss die Option Generieren zur Laufzeit (Registerkarte Attribute) aktiviert sein. Beim Report des Mandanten ist keine RunID anzugeben. |
Report-Typ |
Kürzel für den Typ des Reports. |
Filter |
Vorgabe für den Zeileninhalt. Groß- und Kleinschreibung wird nicht beachtet. Für den Filter werden die Wildcardzeichen * und ? unterstützt. Bei * handelt es sich um einen Platzhalter für eine beliebige Zeichenanzahl (auch keines) und ? repräsentiert genau ein beliebiges Zeichen. Die Wildcard-Zeichen können dabei mehrfach angegeben werden. Format: Script-Literal oder Script-Variable |
Definition1 |
Legt fest, ob die Zeilen in Spalten unterteilt sein sollen. Erlaubte Werte: "NONE" (Standardwert), "LENGTH", "DELIMITER" "NONE" = Keine Unterteilung in Spalten. |
Definition2 |
Legt Spaltenbreiten und Spaltennamen (optional) oder das Begrenzungszeichen fest. Erlaubte Werte: "LENGTH_TAB" und "DELIMITER"
|
Rückgabewert |
---|
Referenz auf die Datensequenz des Reports. |
Die Script-Funktion stellt den Reportinhalt von aktivierbaren Objekten für eine weitere Verarbeitung mit AE Script bereit. Der Report wird aus der AE Datenbank gelesen und als Datensequenz aufbereitet.
Wird auf einen Report einer Aufgabe zugegriffen, die die Scipt-Funktion aufruft, können die Parameter RunID und Reporttyp weggelassen werden. Die Script-Funktion ermittelt in diesem Fall selbst die RunID. Vergessen Sie jedoch nicht die zu den Parametern gehörenden Kommata zu setzen. Standardmäßig wird bei Jobs der Jobreport ("REP") und bei anderen Aufgaben der Aktivierungsreport ("ACT") verwendet.
Der eigene Jobreport kann in der Registerkarte "Post-Script" analysiert werden. Abhängig vom Ergebnis ist es möglich, mit der Script-Anweisung :MODIFY_STATE das endgültige Ende des Jobs zu definieren.
Wird auf eine Aufgabe zugegriffen, die bereits beendet, aber deren Report noch unvollständig ist, wartet die Script-Funktion darauf.
Die Script-Funktion liest standardmäßig ganze Zeilen des Reports. Es kann aber auch strukturiert zugegriffen werden, wenn die Zeile in Spalten unterteilt ist. Hierbei gelten folgende Bestimmungen:
Mit GET_PROCESS_LINE können Sie auf einzelne Spalten zugreifen.
Der Report wird in der Sprache gespeichert, mit der das Logging der Automation Engine erfolgt.
Der Rückgabewert der Script-Funktion ist eine Datensequenz-Referenz. Sie wird den Script-Anweisungen :PROCESS und :ENDPROCESS als Startparameter übergeben. In Kombination mit der Script-Funktion GET_PROCESS_LINE kann damit jede einzelne Zeile der Datensequenz und deren Spalten bearbeitet werden.
Enthält der Report den gesuchten Inhalt nicht, führt das zu keiner Fehlermeldung. Die Bearbeitung der Datensequenz, definiert zwischen :PROCESS und :ENDPROCESS, wird einfach nicht durchlaufen.
Der Script-Variablen, die die Datensequenz-Referenz enthält, kann kein neuer Wert zugewiesen werden. Erst wenn Sie die Datensequenz mit der Script-Anweisung :CLOSE_PROCESS explizit verwerfen, kann die Variable erneut verwendet werden.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die Datenbank geschrieben werden.
Das erste Beispiel sucht alle Zeilen eines Job-Reports, in denen das Laufwerk C: vorkommt. Die kompletten Zeilen werden in das Aktivierungsprotokoll ausgegeben.
:SET &HND# = PREP_PROCESS_REPORT("JOBS",, "REP", "*C:\*")
:PROCESS &HND#
: SET &RET# = GET_PROCESS_LINE(&HND#)
: PRINT &RET#
:ENDPROCESS
Das zweite Beispiel basiert auf einem Job, welcher Dateinamen für eine Verarbeitung vom Benutzer abfragt hat. Die Dateinamen wurden im Aktivierungsreport gespeichert. Wenn das Hochkomma als Delimiter verwendet wird, können die Dateinamen gelesen werden. Sie werden in das Aktivierungsprotokoll ausgegeben.
:SET &RUNNR# = GET_UC_OBJECT_NR("MM.DAY")
:SET &HND# = PREP_PROCESS_REPORT(, &RUNNR#,
"ACT",,"COL=DELIMITER",
"DELIMITER=*'*")
:PROCESS &HND#
: SET &RET# = GET_PROCESS_LINE(&HND#,1)
: PRINT &RET#
:ENDPROCESS
Im dritten Beispiel wird in der Registerkarte Post-Script eines Jobs dessen eigener Job-Report ausgewertet. Dadurch kann herausgefunden werden, ob ein Fehler beim Kopieren einer Datei unter Windows auftrat. Die Script-Funktion wird lediglich mit dem Parameter Filter aufgerufen. Die Kommas davor stehen für den eigenen Objekttyp, die eigene laufende Nummer (RunID) und den Reporttyp REP.
:SET &HND# = PREP_PROCESS_REPORT(,,,"*file not found*")
:PROCESS &HND#
: SEND_MSG BU,BU,"Error occurred
while copying."
: MODIFY_STATE RETCODE=50
:ENDPROCESS
Siehe auch:
Script-Sprachmittel | Beschreibung |
---|---|
Verwirft eine Datensequenz innerhalb eines Scripts. |
|
Definition einer Schleife zur zeilenweisen Bearbeitung einer Datensequenz, wie beispielsweise den Inhalt einer sequentiellen Datei oder das textmäßige Ergebnis eines Kommandos. |
|
Ermittelt den aktuellen Zeileninhalt einer Datensequenz. |
Script-Sprachmittel - Datensequenzen
Beispielsammlung
Endestatus aufgrund des Reportinhaltes setzen
Aufruf eines MBeans
Allgemeines zum Script
Script-Sprachmittel - Alphabetische Auflistung
Script-Sprachmittel - Funktionelle Gliederung
Automic Documentation - Tutorials - Automic Blog - Resources - Training & Services - Automic YouTube Channel - Download Center - Support |
Copyright © 2016 Automic Software GmbH |