:PUBLISH
Verwenden Sie die Script-Anweisung :PUBLISH, um Script-Variablen und Arrays in Objektvariablen zu konvertieren. Die Script-Anweisung :PUBLISH ähnelt der :PSET-Anweisung, da beide Script-Anweisungen Objektvariablen an übergeordnete Aufgaben übergeben können. :PUBLISH und :PSET unterscheiden sich in den folgenden Punkten:
- Sie können Arrays in Objektvariablen mit :PUBLISH konvertieren.
- :PSET erstellt Script-Variablen, wenn sie nicht bereits existieren. :PUBLISH erstellt keine Script-Variablen, daher müssen Sie sicherstellen, dass alle Script-Variablen, die Sie in Ihren :PUBLISH-Anweisungen aufrufen, bereits existieren, oder Sie verwenden die :SET-Anweisung, um sie zu erstellen.
Syntax
: PUB[LISH] Variablenname [, [Objektvariable] [,Gültigkeitsbereich] ]
Parameter
-
:PUBLISH
Konvertiert die Script-Variable oder das Script-Array in eine Objektvariable -
Variablenname
Name der zu konvertierenden Script-Variablen oder des Script-Arrays
Format:Script-Variable
Befolgen Sie die Regeln für Variablennamen. Weitere Informationen finden Sie unter Variablennamen.
Fügen Sie bei Arrays leere Klammern [] am Ende des Namens ein. -
Objektvariable
Name der neuen Objektvariablen ohne ein vorangestelltes kaufmännisches Und-Zeichen (&)
Format: AE-Name
Für Arrays geben Sie nicht die leeren Indexklammern am Ende des Variablennamens an. -
Gültigkeitsbereiche
Spezifiziert die Aufgaben, in denen die Variable verwendet werden kann
Zulässige Werte:- TASK
Die Objektvariable steht nur für die eigene Aufgabe zur Verfügung. - WORKFLOW
Die Objektvariable wird an den Parent-Workflow übergeben. - TOP
Die Objektvariable wird an den obersten Workflow übergeben.
- TASK
Wichtig!
- Die Script-Variable oder das Array, die Sie angeben, muss bereits existieren. Ein Laufzeitfehler tritt auf, wenn die angegebene Script-Variable oder das angegebene Array noch nicht existiert.
- Die Leistung kann beeinträchtigt werden, wenn Sie ein Script-Array mit sehr vielen (10.000 oder mehr) Elementen verwenden.
Hinweise:
- Arrays werden aus Performance-Gründen in ihrer ausgefüllten Größe veröffentlicht.
Beispiele
Ein Array ist leer (allen Einträgen ist ein Null-String zugewiesen). Es wird nichts veröffentlicht.
Ein anderes Array hat 5 Einträge. Die letzten 2 Einträge sind Null-Strings. Nur die ersten 3 Einträge werden für nachfolgende Aufgaben veröffentlicht. Die Größe des Arrays in der nachfolgenden Aufgabe ist auf 3 begrenzt. - Leere Elemente am Ende eines Arrays werden nicht in der Objektvariablen verwendet oder aus ihr entfernt, auch wenn Sie die Script-Variable konvertieren oder eine neue Objektvariable erstellen.
Beispiele
Im folgenden Beispiel ruft die Funktion SYS_ACT_ME_NAME den Objektnamen ab und speichert ihn in einer Script-Variablen mit dem Namen &CHILD#. Die :PUBLISH-Anweisung enthält den Parameter WORKFLOW, sodass auch der Parent-Workflow die Script-Variable verwenden kann.
:SET &CHILD# = SYS_ACT_ME_NAME()
:PUBLISH &CHILD#,,"WORKFLOW"
Das folgende Beispiel definiert ein Script-Array und füllt es mit Werten aus einem VARA-Objekt. Das Array wird als Objektvariable an den obersten Workflow übergeben.
:DEFINE &ARRAY#, string, 5
:FILL &ARRAY#[] = GET_VAR(VARA.TEST, KEY1)
:PUBLISH &ARRAY#[], VARA_ARRAY#, "TOP"
Siehe auch: