GET_PROCESS_LINE

Verwenden Sie die Script-Funktion GET_PROCESS_LINE, um eine Zeile oder Spalten aus einer Datensequenz zu lesen. Sie müssen diese Script-Funktion in einer Prozessschleife verwenden.

Hinweise

  • Eine Übersicht über die Script-Elemente für das Erstellen und Arbeiten mit Datensequenzen finden Sie unter Script-Elemente für Datensequenzen.
  • Verwenden Sie die Script-Funktion GET_PROCESS_LINE innerhalb einer Prozessschleife. Weitere Informationen zu Schleifen für die zeilenweise Verarbeitung einer Datensequenz finden Sie unter :PROCESS... :TERM_PROCESS... :ENDPROCESS.

Syntax

GET_PROCESS_LINE (Data sequence reference [, [Column] [, [STR_SUBSTITUTE_VAR] [, Line] ] ])

Parameter

  • GET_PROCESS_LINE
    Ruft den Inhalt der aktuellen Zeile einer Datensequenz ab

  • Data sequence reference
    Definiert die Datensequenz, die verarbeitet werden soll
    Format: Script-Variable

  • Column
    (Optional) Greift auf eine Spalte der Datensequenzzeile zu, entweder auf:

    • eine Datensequenz mit in Spalten unterteilten Zeilen. Sie greifen auf bestimmte Spalten mit ihren Nummern zu.
      Format: Nummer ohne Anführungszeichen, Script-Literal oder Script-Variable
      Zulässige Werte: 1–22. Der Wert „1“ entspricht hierbei der ersten Spalte oder, sofern festgelegt, dem Spaltennamen.
      Hinweis: Zum Unterteilen der einzelnen Zeilen einer Datensequenz verwenden Sie den Parameter COL=LENGTH oder COL=DELIMITER, wenn Sie die Datensequenz generieren.

    • die Datensequenz eines VARA-Objekts. Weitere Informationen finden Sie unter PREP_PROCESS_VAR und PREP_PROCESS_VAR_XML
      Format: Nummer ohne Anführungszeichen oder Script-Variable
      Zulässige Werte:

      • 1
        Ruft den Schlüssel oder die Ergebnisspalte ab, Wertspalte der FILELIST VARA-Objekte.
        Die aktuelle Zeile enthält den Schlüssel statischer VARA-Objekte oder die Ergebnisspalte der dynamischen VARA-Objekte und entsprechenden Werte. Ist im VARA-Objekt (SQL, SQLI, MULTI) kein Ergebnisformat definiert, entspricht die Ergebnisspalte der ersten Wertspalte.
      • 2–6
        Ruft die relevanten Wertspalten der statischen VARA-Objekte ab
      • 2–n
        Anzahl der Wertspalten von VARA-Objekten

      Abrufen der Werte von VARA-Objekten:

      • Dynamische VARA-Objekte (SQL, SQLI und Multi)
        Sie können abhängig von der relevanten Datenquelle eine beliebige Anzahl von Spalten enthalten, beispielsweise die Einstellungen des VARA-Objekts und des Datentyps.
      • Statische VARA-Objekte enthalten nur sechs Wertspalten:
        • 1
          Gibt den Wert des Schlüssels zurück
          Hinweis: Wenn der Schlüssel FORCE_VARA_KEY_CI der Variablen UC_SYSTEM_SETTINGS auf "Y" festgelegt ist, wird der Wert des Schlüssels in Großbuchstaben zurückgegeben, siehe FORCE_VARA_KEY_CI. Wenn die Variable auf "Y" festgelegt ist, wird der Schlüssel konvertiert und die Großschreibung wird beibehalten.
        • 2–6
          Gibt die fünf Wertspalten zurück
        • 6
          Gibt den Wert von Spalte fünf zurück
      • FILELIST VARA-Objekte haben im Allgemeinen nur eine Spalte, die Sie mit „1“ adressieren können.
    • Hinweis: Falls beim Zugriff auf ein VARA-Objekt die Spaltennummer nicht definiert wird, gibt das System den Wert aller Spalten (einschließlich Schlüssel/Ergebnis) getrennt nach „§§§“-Zeichen zurück:

    • nach der Datensequenz eines Kommentars. Weitere Informationen finden Sie unter PREP_PROCESS_COMMENTS
      Format: Nummer ohne Anführungszeichen oder Script-Variable
      Zulässige Werte:

      • 1
        Zeitstempel
      • 2
        Benutzername
      • 3
        Kommentartext
    • nach der Datensequenz eines PromptSet-Objekts. Weitere Informationen finden Sie unter PREP_PROCESS_PROMPTSET
      Format: Nummer ohne Anführungszeichen, AE Name, Script-Literal oder Script-Variable
      Zulässige Werte:

      • 1 oder VARIABLE_NAME
        Name der PromptSet-Variablen des PromptSet-Elements ohne führendes kaufmännisches Und-Zeichen (&)
      • 2 oder CUSTOM_FIELD
        Inhalt eines benutzerdefinierten Felds
      • 3 oder DEFAULT
        Standardwert des PromptSet-Elements
      • 4 oder TYPE
        Typ des PromptSet-Elements, etwa „text“ oder „integer“
      • 5 oder DATA_REFERENCE
        Name des Referenzobjekts, etwa eine Variable oder ein Kalender
      • 6 oder DATA_REFERENCE_KEY
        Schlüsselwort des Kalender-Referenzobjekts, sofern verfügbar

  • STR_SUBSTITUTE_VAR oder STR_SUB_VAR
    (Optional) Im Zeileninhalt der Datensequenz können Sie nach Script-Variablen suchen, die durch ihre Werte ersetzt werden sollen.
    Hinweis:
    Sie müssen ein Komma setzen, falls Sie diesen Parameter verwenden, aber den Parameter Column nicht angeben Beispiel:

    :SET &VALUE# = GET_PROCESS_LINE(&HND#, ,STR_SUB_VAR)

  • Zeile
    (Optional) Definiert die Zeile der Datensequenz, auf die Sie zugreifen möchten. Die erste Zeile ist Nummer 1. Sie können Zeilennummern der Datensequenzen mit der Script-Funktion GET_PROCESS_INFO abrufen. Weitere Informationen finden Sie unter GET_PROCESS_INFO.
    Format: Eine Zahl ohne Anführungszeichen, Script-Literal oder Script-Variable
    Hinweise
    • GET_PROCESS_LINE schneidet Leerzeichen am Ende der auszulesenden Zeile standardmäßig ab. Dieses Verhalten kann über die Einstellung GET_PROCESS_LINE_RTRIM in der Variablen UC_SYSTEM_SETTINGS deaktiviert werden. Weitere Informationen finden Sie unter GET_PROCESS_LINE_RTRIM.
    • Die gesamte Zeile wird zurückgegeben, falls Sie den Parameter Column nicht definieren oder „0“ verwenden. Die Zeile wird nach 255 Zeichen abgeschnitten.

SAP-Monitore

Für den Zugriff auf SAP-Monitore gilt ein besonderes Verfahren. Der SAP-Agent teilt die einzelnen Zeilen, welche ein SAP-Monitor liefert, in feste Spalten auf. Er hinterlegt Spaltennamen und Spaltenbreiten als erste Zeile in der Datei, die durch die Automation Engine verarbeitet wird. Auf die folgenden Spalten kann über GET_PROCESS_LINE zugegriffen werden:

  • CONTEXT - Name des Monitoring-Kontextes
  • PATH - Pfadangabe eines Wertes
  • NAME - Name des Wertes
  • VALUE - Aktueller Wert
  • STATUS - Status: 1 = grün, 2 = gelb, 3 = rot
  • DATE - Datum der Prüfung
  • TIME - Zeitpunkt der Prüfung

Beispiele

Im folgenden Beispiel werden die Verzeichnisse eines Laufwerks abgerufen und mit der Anweisung :PRINT in den Aktivierungsreport in der Schleife geschrieben:

: SET  &HND# = PREP_PROCESS ( "PC01" , "WINCMD" , "*DIR*" , "CMD=DIR C:" )
:
PROCESS  &HND#
:   
SET  &LINE# = GET_PROCESS_LINE ( &HND# )
:  
 PRINT  &LINE#
:
ENDPROCESS

In diesem Beispiel werden die Werte eines VARA-Objekts abgerufen und innerhalb der Prozessschleife mit der Anweisung :PRINT in den Aktivierungsreport geschrieben:

: SET  &HND# = PREP_PROCESS_VAR (UC_CLIENT_SETTINGS)
:
PROCESS  &HND#
:   
SET  &RET1# = GET_PROCESS_LINE ( &HND# ,1)
:   
SET  &RET2# = GET_PROCESS_LINE ( &HND# ,2)
:   
PRINT  "&RET1# &RET2#"
:
ENDPROCESS

In diesem Beispiel werden alle Zeilen der Logdatei von Automic Web Interface gelesen, die Informationen über die Datenbank enthalten. Es werden Spaltengröße und Spaltennamen vorgegeben und die entsprechenden Informationen im Aktivierungsreport ausgegeben. Leerzeichen in den Spalten 2 und 4 werden ignoriert:

: SET &HND# = PREP_PROCESS_FILE (WIN21, "F:\AUTOMIC\DIALOG\TEMP\UCDJ_LOGG_01.TXT" , "*DB-INFO*" , "COL=LENGTH" , "LENGTH_TAB ='8=DATE,1,6=TIME,7,200=TEXT'")
:
PROCESS &HND#
:   
SET &COL1# = GET_PROCESS_LINE ( &HND# ,1)
:   
SET &COL2# = GET_PROCESS_LINE ( &HND# ,3)
:   
SET &COL3# = GET_PROCESS_LINE ( &HND# , "TEXT ")
:  
 PRINT "&COL1# &COL2# &COL3#"
:
ENDPROCESS

Dieses Beispiel liest den SAP-Monitor "MON1" aus der Monitorsammlung "AE". Es soll auf die einzelnen Spalten der Monitordaten zugegriffen werden. Die Zeilen der Datensequenz werden im Aktivierungsreport ausgegeben.

: SET &HND# = PREP_PROCESS ( "T01" , "R3MONITOR" , "*" , "MONSET=AE" , "MONNAM=MON1" , "COL=FILE" , "UC_USER_ID=AE" , "UC_SAPCLIENT=001" )
:
PROCESS &HND#
:   
SET &PATH# = GET_PROCESS_LINE ( &HND# , "PATH" )
:   
SET &NAME# = GET_PROCESS_LINE ( &HND# , "NAME" ")
:   
SET &VALUE# = GET_PROCESS_LINE ( &HND# , "VALUE" ")
:   
SET &STATUS# = GET_PROCESS_LINE ( &HND# , "STATUS" )
:   
SET &DATE# = GET_PROCESS_LINE ( &HND# , "DATE" )
:   
SET &TIME# = GET_PROCESS_LINE ( &HND# , "TIME" )
:   
PRINT "&PATH# &NAME# &VALUE# &STATUS# &DATE# &TIME#"
:
ENDPROCESS

Definition der Spaltengrößen und -namen in der Datei (erste Zeile), die vom SAP-Agenten bereitgestellt wird.

COL=LENGTH,LENGTH_TAB='74=PATH,25=NAME,5=VALUE,2=STATUS,9=DATE,7=TIME'

Dieses Beispiel liest die Zeilen einer Textdatei aus und ersetzt die eingebundenen Script-Variablen durch ihre Werte. Die geänderten Zeilen werden dann in den Aktivierungsreport geschrieben.

: SET &NAME# = SYS_ACT_ME_NAME ()
:
SET &DATE# = SYS_DATE_PHYSICAL ( "MM/DD/YYYY" )
:
SET &TIME# = SYS_TIME_PHYSICAL ( "HH:MM" )
:
SET &JPNAME# = SYS_ACT_PARENT_NAME ()

:
SET &HND# = PREP_PROCESS_FILE ( "WIN01" , "C:\AUTOMIC\REPORT.TXT" )
:
PROCESS &HND#
:
SET &RET# = GET_PROCESS_LINE ( &HND# ,, STR_SUB_VAR )
:
PRINT &RET#
:
ENDPROCESS

Zusammenfassung der vorbereiteten Textdatei REPORT.TXT:

&date#/&time#

Report für &NAME#:

Aktiviert von Workflow: &JPNAME#

Abhängig von Ihren Einstellungen kann die Reportdatei dem folgenden Beispiel ähneln:

2022-11-23 15:59:56 - U00020408 "11/23/2022/15:59"

2022-11-23 15:59:56 - U00020408 ""

2022-11-23 15:59:56 - U00020408 "Report for JOBS.CREATE_TEST_FILE:"

2022-11-23 15:59:56 - U00020408 ""

2022-11-23 15:59:56 - U00020408 "Activated by workflow: "

Siehe auch: