GET_PUBLISHED_VALUE

Script-Funktion: Ruft den Wert oder die PromptSet-Variable einer bestimmten Aufgabe ab.

Syntax

GET_PUBLISHED_VALUE (RunID, Variable name)

Syntax

Beschreibung/Format

RunID Ermittelt die RunID der Aufgabe
Format: Script-Literal oder Script-Variable

Variable name

Der Name einer Objektvariablen oder PromptSet-Variablen der angegebenen Aufgabe (ohne führendes & Zeichen)

Format: AE Name

Bei Arrays sind am Ende des Namens zusätzlich die leeren Indexklammern [ ] anzugeben.


Rückgabewerte

Wert der Objekt- bzw. PromptSet-Variablen

Sie können diese Script-Funktion zusammen mitSET und :FILL verwenden. Die Script-Anweisung :SET kann den Wert einer normalen Objekt-/PromptSet-Variable oder eines einzelnen PromptSet-Array-Elements auslesen und :FILL dient dazu, ein komplettes PromptSet-Array auszulesen.

Die Möglichkeit, PromptSet-Variablen als Arrays zu definieren, besteht nur bei den Checklist- und Checkbox-Elementen.

Beispiele

In folgendem Beispiel wird ein Objekt aktiviert und anschließend dessen Objektvariable &VARIABLE1# ausgelesen.

:SET &RUNID# = ACTIVATE_UC_OBJECT(&OBJ#,WAIT)
:SET &VAR# = GET_PUBLISHED_VALUE(&RUNID#,VARIABLE1#)
:PRINT "&&VARIABLE1# = &VAR#"

Im zweiten Beispiel lesen wir die PromptSet-Variable &CHECKLIST1# aus, die als Array definiert wurde. Dabei ermitteln wir im ersten Schritt nur den Wert des ersten Array-Elementes.

:SET &RUNID# = ACTIVATE_UC_OBJECT(&OBJ#,WAIT)
:SET &VAR# = GET_PUBLISHED_VALUE(&RUNID#,"CHECKLIST1#[1]")
:PRINT "&&CHECKLIST1#[1] = &VAR#"

Folgendes Szenario zeigt die Ermittlung eines kompletten PromptSet-Arrays der aktivierten Aufgabe. Anschließend werden die einzelnen PromptSet-Elemente im Aktivierungsreport ausgegeben. Würde in diesem Fall das PromptSet-Array die Größe des Script-Arrays übersteigen, so werden nur jene Elemente gespeichert, die Platz finden.

:DEFINE &ARRAY#, string, 10
:SET &RUNID# = ACTIVATE_UC_OBJECT(&OBJ#,WAIT)
:FILL &ARRAY#[] = GET_PUBLISHED_VALUE(&RUNID#,"CHECKLIST1#[]")
:SET &LEN# = LENGTH(&ARRAY#[])
:SET &VAR# = 1

:WHILE &VAR# LE &LEN#
:PRINT "&&ARRAY#[&VAR#] = &ARRAY#[&VAR#]"
:SET &VAR# = &VAR# + 1
:ENDWHILE

Siehe auch:

auch

:FILL