: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.

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: