: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.
- :PSETerstellt 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 verwenden Sie die :SET-Anweisung, um sie zu erstellen.
Syntax
:PUB[LISH] Variable name [, [Object variable] [,Scope] ]
Parameter
- :PUBLISH
Konvertiert die Script-Variable oder das Script-Array in eine Objektvariable - Variable name
Name der Script-Variable oder des Script-Arrays, das konvertiert werden soll
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. - Object variable
Name der neuen Objektvariablen, ohne führendes kaufmännisches Und (&)
Format: AE Name
Geben Sie bei Arrays die leeren Indexklammern am Ende des Variablennamens nicht an. - Scope
Gibt die Aufgaben an, innerhalb derer die Variable verwendet werden kann
Erlaubte Werte:- TASK
Die Objektvariable steht nur für die eigene Aufgabe zur Verfügung. - WORKFLOW
Die Objektvariable wird an den übergeordneten 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 (alle Einträge haben eine zugewiesene Nullzeichenkette). Es wird nichts veröffentlicht.
Ein anderes Array hat 5 Einträge. Die letzten 2 Einträge sind Nullzeichenketten. 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 SYS_ACT_ME_NAME-Funktion den Objektnamen ab und speichert ihn in einer Script-Variablen mit dem Namen &CHILD#. Die :PUBLISH-Anweisung enthält den Parameter WORKFLOW, so dass der übergeordnete Workflow auch 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 Variablenobjekt. 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: