Script-Funktion: Ermittelt eine Liste mit Namen von Dateien, die sich in dem angegebenen Verzeichnis eines Rechners befinden, und stellt diese als interne Auflistung (Datensequenz) für die weitere Verarbeitung zur Verfügung.
PREP_PROCESS_FILENAME(Host, File name, [Wildcards], [Subfolder], [Filter] [,"COL=Definition1[, [Definition2]"],["UC_LOGIN=Login object"])
Syntax |
Beschreibung/Format |
---|---|
Host |
Rechner (Name des Agenten), auf dem sich die Dateien befinden. |
Dateiname |
Pfad und Dateiname, nach denen gesucht werden soll. Im Dateinamen können die Wildcardzeichen "*" und "?" verwendet werden. "*" steht dabei für beliebige, "?" für genau ein Zeichen. In Pfaden sind keine Wildcardzeichen erlaubt. Ob die Groß- und Kleinschreibung des Dateinamens berücksichtigt wird, hängt vom Parameter Wildcards ab. |
Wildcards |
Kennzeichen, ob der Dateiname mit Wildcard-Zeichen angegeben wurde. Erlaubte Werte: "Y" (Standardwert) und "N" "Y" = Dateiname mit Wildcardzeichen, Schreibweise wird nicht berücksichtigt |
Unterordner |
Kennzeichen, ob Unterordner bzw. -verzeichnisse in die Suche einbezogen werden sollen. Erlaubter Wert: "Y" und "N" (Standardwert) "Y" = Unterordner bzw. -verzeichnisse einbeziehen. |
Filter |
Zusätzliche Möglichkeit, die Zeilen der Datensequenz zu filtern. Groß- und Kleinschreibung wird nicht beachtet. Die Wildcardzeichen "*" und "?" können verwendet werden. "*" steht dabei für beliebige, "?" für genau ein Zeichen. Standard: "*" |
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"
|
Login-Objekt |
Name eines Login-Objektes. Der gesamte Ausdruck UC_LOGIN=Login-Objekt muss unter Hochkomma gesetzt werden. |
Rückgabewert |
---|
Referenz auf die Datensequenz der Dateiliste. "20240" - Fehlende Login-Information. |
Die Script-Funktion PREP_PROCESS_FILENAME stellt eine Liste von Dateinamen für eine weitere Verarbeitung mit AE-Script bereit. Die Dateien werden auf dem Host durch den Agenten ermittelt und als Datensequenz aufbereitet.
Welche Dateien aufgelistet werden sollen, wird der Script-Funktion mit dem Parameter Dateiname mitgegeben. Enthält Dateiname eine Laufwerksbezeichnung, werden die gefundenen Dateien auch mit Laufwerksbezeichnung aufgelistet. Es kann festgelegt werden, ob Unterordner bzw. -verzeichnisse berücksichtigt werden sollen. Die Liste der gefundenen Dateien kann zusätzlich gefiltert werden.
Wildcards, Unterordner, Filter und die Parameter zur Unterteilung in Spalten sind optional. Wird ein Parameter in dieser Reihenfolge ausgelassen, muss trotzdem dessen Komma gesetzt werden. Der Aufruf der Script-Funktion kann mit jedem optionalen Parameter enden. Danach sind keine Kommata notwendig. Definition2 darf nicht ohne Definition1 verwendet werden.
Die Script-Funktion GET_PROCESS_LINEliest standardmäßig die gesamte Zeile einer Datensequenz. Es kann aber auch strukturiert zugegriffen werden, wenn die Zeile in Spalten unterteilt ist. Hierbei gelten folgenden Bestimmungen:
Mit GET_PROCESS_LINE können Sie auf einzelne Spalten zugreifen.
Mit dem optionalen Parameter UC_LOGIN kann der Script-Funktion der Name eines Login-Objektes übergeben werden. PREP_PROCESS_FILENAME verwendet die im Login definierten Anmeldedaten. Dadurch ist beispielsweise ein Zugriff auf verbundene Netzlaufwerke möglich. Benutzer benötigen das Privileg "FileTransfer: Ohne Angabe von Benutzerkennung ausführen", wenn die Script-Funktion PREP_PROCESS_FILENAME ohne den Parameter UC_LOGIN verwendet werden soll.
Der Rückgabewert der Script-Funktion ist die Referenz auf eine Datensequenz. 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 die Dateiliste 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-Variable, 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.
PREP_PROCESS_FILE wird nicht von den Agenten für Anwendungen (Oracle Applications, PeopleSoft oder SAP) unterstützt.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die Datenbank geschrieben werden.
Das Beispiel listet alle HTML-Dokumente aus der WebHelp der Automation Engine-Dokumentation auf. Es wird explizit angegeben, dass Wildcardzeichen verwendet werden.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01","c:\AUTOMIC\documentation\webhelp\german\uc*.htm","Y",,,,"UC_LOGIN=WIN_LOGIN")
:PROCESS &HND#
: SET &LINE# = GET_PROCESS_LINE(&HND#)
: PRINT &LINE#
:ENDPROCESS
Das zweite Beispiel erzeugt eine Liste aller Stylesheets, welche mit der Automation Engine-Dokumentation ausgeliefert werden. Alle Unterordner des Dokumentationsverzeichnisses sollen durchsucht werden. Das Ergebnis enthält keine Laufwerksangabe und wird im Report ausgegeben.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01", "\AUTOMIC\documentation\uc*.css","Y","Y",)
:PROCESS &HND#
: SET &LINE# = GET_PROCESS_LINE(&HND#)
: PRINT &LINE#
:ENDPROCESS
Im dritten Beispiel wird eine Liste mit allen AE-Programmen erstellt. Die einzelnen Zeilen sind in Spalten aufgeteilt. Die Spalten werden durch den Backslash getrennt. Bei der Verarbeitung der Datensequenz wird auf die 5. Spalte zugegriffen, welche die Dateinamen der Programme enthält.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01","c:\AUTOMIC\server\bin\*.exe",,,,"COL=DELIMITER,DELIMITER=*\*")
:PROCESS &HND
: SET &LINE# = GET_PROCESS_LINE(&HND#,5)
: PRINT &LINE#
:ENDPROCESS
Das vierte Beispiel basiert auf dem dritten. Hier wird aber ein Filter gesetzt, so dass nur der Dateiname der Automation Engine im Aktivierungsprotokoll ausgegeben wird.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01","c:\AUTOMIC\server\bin\*.exe",,,"*server*","COL=DELIMITER,DELIMITER=*\*")
:PROCESS &HND#
: SET &LINE# = GET_PROCESS_LINE(&HND#,5)
: PRINT &LINE#
: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
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 |