Automation Engine Script-Leitfaden > Funktionelle Gliederung > Datensequenzen > PREP_PROCESS_AGENTGROUP

PREP_PROCESS_AGENTGROUP

Script-Funktion: Ermittelt mit Auswahlkriterien die Agenten eines AgentenGruppen-Objektes und stellt das Ergebnis als interne Auflistung (Datensequenz) für die weitere Verarbeitung zur Verfügung.

Syntax

PREP_PROCESS_AGENTGROUP(AgentGroup, [Host], [Selection option], [RunID])

Syntax

Beschreibung/Format

AgentenGruppe

Name des AgentenGruppen-Objektes, dessen Agenten ausgelesen werden sollen.
Format: AE-Name, Script-Literal oder Script-Variable   

Host

Filter für den Agentennamen
Format: Script-Literal oder Script-Variable
maximal 32 Zeichen
Standardwert: "*"

Die Wildcardzeichen "*" und "?" können verwendet werden. "*" steht dabei für beliebige, "?" für genau ein Zeichen.

Selektierungsoption

Methode nach der die Agenten der AgentenGruppe ermittelt werden sollen.
Format: AE-Name, Script-Literal oder Script-Variable

Erlaubte Werte: "BY_RULE" (Standardwert), "ALL" und "RUNNR"

"BY_RULE" - Die Script-Funktion liefert den Agenten zurück, auf dem die nächste Aufgabe laufen wird.
"ALL" - Es werden alle Agenten der AgentenGruppe ermittelt.
"RUNNR" - Der bzw. die ermittelten Agenten hängen von einer konkreten Aufgabe ab. Die RunID ihres AgentenGruppencontainers ist im gleichnamigen Parameter anzugeben.

Bei AgentenGruppen mit dem Modus "Alle" liefern die Optionen BY_RULE und ALL dasselbe Ergebnis.

RunID

Laufende Nummer (RunID) des AgentenGruppencontainers.
Format: Script-Literal, Script-Variable oder Zahl

Bei der Verwendung dieses Parameters wird der bzw. die Agenten zurückgeliefert auf denen die Aufgabe gelaufen ist.  

Dieser Parameter ist nur dann anzugeben, wenn Sie die Selektierungsoption RUNNR ausgewählt haben.


Rückgabewert

Referenz auf die Datensequenz des AgentenGruppen-Objektes.

Anmerkungen

Die Script-Funktion liest Agenten eines AgentenGruppen-Objektes. Dabei können die ausgelesenen Agenten durch optionalen Parameter eingeschränkt werden. Standardmäßig wird die Referenz auf die gesamte Datensequenz geliefert.

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 auf jede einzelne Zeile der Datensequenz zugegriffen werden. Diese ist in zwei Spalten unterteilt die Sie auch gezielt auslesen können:

  1. Name des Agenten
  2. Status des Agenten ("Y" - Agent ist aktiv, "N" - Agent ist inaktiv)

Der Status ist vor allem bei AgentenGruppen relevant, die den Modus "Alle" eingestellt haben. Die Script-Funktion liefert für solche AgentenGruppen immer alle Agenten ohne darauf zu achten, ob sie aktiv sind oder nicht. Mit der Status-Information können Sie jene Agenten ermitteln auf denen Aufgaben tatsächlich durchgeführt werden können.

Wenn Sie nur nach der Selektierung und/oder der RunID filtern wollen, so sind die vorhergehenden Kommata auch zu setzen.

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.

Beispiel

Im ersten Beispiel werden alle Agenten einer AgentenGruppe ermittelt deren Name mit "WIN" beginnt.

:SET &HND# = PREP_PROCESS_AGENTGROUP("AGENTGROUP_WINDOWS","WIN*",ALL)

:PROCESS &HND#
:   
SET &AGENT# = GET_PROCESS_LINE(&HND#,1)
:   
SET &STATUS# = GET_PROCESS_LINE(&HND#,2)
:   
PRINT "Agent: &AGENT#"
:   
PRINT "Status: &STATUS#"
:
ENDPROCESS

:CLOSE_PROCESS &HND#

Im folgenden Beispiel wird ein Wiederanlauf einer Aufgabe durchgeführt. Die Script-Funktion SYS_ACT_ME_NR liefert in diesem Fall die RunID der Original-Durchführung mit der die RunID des AgentenGruppen-Containers ermittelbar ist. Dadurch können die Agenten auf denen die Aufgabe ursprünglich gelaufen sind, ausgelesen werden.

:SET &T_RUNNR# = SYS_ACT_ME_NR()
:
SET &P_RUNNR# = GET_PARENT_NR(&T_RUNNR#)
:
SET &HND# = PREP_PROCESS_AGENTGROUP("AGENTGROUP_DB",,RUNNR,&P_RUNNR#)

:PROCESS &HND#
:   
SET &AGENT# = GET_PROCESS_LINE(&HND#,1)
:   
SET &STATUS# = GET_PROCESS_LINE(&HND#,2)
:   
PRINT "Agent: &AGENT#"
:   
PRINT "Status: &STATUS#"
:
ENDPROCESS

:CLOSE_PROCESS &HND#

 

Siehe auch:

Script-Sprachmittel Beschreibung

:CLOSE_PROCESS

Verwirft eine Datensequenz innerhalb eines Scripts.

:PROCESS... :TERM_PROCESS... :ENDPROCESS

Definition einer Schleife zur zeilenweisen Bearbeitung einer Datensequenz, wie beispielsweise den Inhalt einer sequentiellen Datei oder das textmäßige Ergebnis eines Kommandos.

GET_PROCESS_LINE

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