PREP_PROCESS_VAR und PREP_PROCESS_VAR_XML

Verwenden Sie die Script-Funktion PREP_PROCESS_VAR, um eine Liste der VARA-Objektwerte abzurufen. Für XML VARA-Objekte können Sie auch PREP_PROCESS_VAR_XML verwenden. Mit den Script-Funktionen können Sie nach Schlüssel und Wert filtern. Die Script-Funktionen geben einen Verweis auf eine Datensequenz zurück, die Sie zur weiteren Verarbeitung verwenden können, indem Sie den Rückgabewert der Script-Anweisung :PROCESS zuweisen. Verwenden Sie die Script-Funktion GET_PROCESS_LINE, um auf eine bestimmte Zeile im VARA-Objekt zuzugreifen.

Mehr Informationen

Hinweise:

SQL und SQLI VARA-Objekte mit vielen Einträgen

Die Anzahl der zurückgegebenen Zeilen kann in den Systemeinstellungen beschränkt werden. Wenn Sie einen bestimmten Wert mit PREP_PROCESS_VAR filtern, sucht das System nur nach dem Wert innerhalb der festgelegten maximalen Zeilenanzahl.

Mehr Informationen:

Tipp: Verwenden Sie den Schlüssel -Parameter in PREP_PROCESS_VAR, um die Anzahl der Zeilen einzuschränken, die zurückgegeben werden, wenn das VARA-Objekt viele Einträge enthält. Der Schlüsselwert wird an die Datenbank übergeben und für die Abfrage verwendet.

Beispiel

Ihr System ist so konfiguriert, dass die Anzahl der zurückgegebenen Zeilen beschränkt wird: SQLVAR_MAX_ROWS ist auf 1.000 festgelegt. Ihr SQL VARA-Objekt enthält über 1.000 Zeilen, und Sie suchen nach einem bestimmten Wert, der in einer beliebigen Zeile auftreten kann. Aufgrund der Einschränkung gibt PREP_PROCESS_VAR nur die ersten 1.000 Zeilen zurück. Möglicherweise finden Sie nicht alle Vorkommen des Werts. Geben Sie den Schlüssel-Parameter an, um die Anzahl der abgerufenen Zeilen zu reduzieren und nur diese Zeilen nur nach dem Wert zu durchsuchen.

Syntax

PREP_PROCESS_VAR (VARA-Objekt[,Schlüssel [,Wert [, Spalte]]])
PREP_PROCESS_VAR_XML (VARA-Objekt, Schlüssel, Wert)

Parameter

Wichtig! Wenn Sie PREP_PROCESS_VAR verwenden, um auf Werte in einem XML VARA-Objekt zuzugreifen, geben Sie alle drei Parameter an (Schlüssel, Wert und Spalte).

Hinweise:


Beispiele

Ein VARA-Objekt namens DATABASE_MAINTENANCE enthält die folgenden Einträge in 2 Spalten (Schlüssel und Wert1):

Das folgende Script ruft alle Werte im VARA-Objekt ab. Das Script gibt die Werte aus beiden Spalten im Aktivierungsreport aus.

:SET &HND#=PREP_PROCESS_VAR(DATABASE_MAINTENANCE)
:
PROCESS &HND#
:   
SET &VK# = GET_PROCESS_LINE(&HND#,1)
:   
SET &VALUE# = GET_PROCESS_LINE(&HND#,2)
:   
PRINT "&VK# &VALUE#"
:
ENDPROCESS

:
CLOSE_PROCESS &HND#

Der Aktivierungsreport sieht wie folgt aus:

2018-01-31 11:28:59 - U0020408 ARCHIVING Y
2018-01-31 11:28:59 - U0020408 REORGANIZING N
2018-01-31 11:28:59 - U0020408 UNLOADING N
2018-01-31 11:28:59 - U0020408 CLIENT 3

Das folgende Script ruft nur Einträge ab, bei denen der Schlüssel mit "Client" beginnt:

:SET &HND#=PREP_PROCESS_VAR(DATABASE_MAINTENANCE,"Client*")
:
PROCESS &HND#
:   
SET &VK# = GET_PROCESS_LINE(&HND#,1)
:   
SET &VALUE# = GET_PROCESS_LINE(&HND#,2)
:   
PRINT "&VK# &VALUE#"
:
ENDPROCESS

:
CLOSE_PROCESS &HND#

Der Aktivierungsreport würde nur die folgende Zeile enthalten:

2018-01-31 11:28:59 - U0020408 CLIENT 3

Im folgenden Beispiel werden Werte aus einem XML VARA-Objekt namens VARA.XML abgerufen. Der angegebene XPath filtert nach Elementen in der XML.

:SET &HND# = PREP_PROCESS_VAR_XML(VARA.XML, "KEY01", "A/B")
:PROCESS &HND#
: SET &GB# = GET_PROCESS_LINE(&HND#,1)
: SET &VALUE# = GET_PROCESS_LINE(&HND#,2)
: PRINT "&GB# &VALUE#"
:ENDPROCESS

Siehe auch:

seealso

Script-Elemente für Datensequenzen