Ausdrucksunterstützung im Fluss

Der Ausdruck kann für den Zugriff auf die Eigenschaften innerhalb der Laufzeit der Flow-Instanz verwendet werden.

Übersicht

Nachdem der Flow durch Verwendung URL ausgelöst wurde, wird eine Reihe von Standard- oder integrierten Eigenschaften in der Flow-Instanz ausgefüllt. Darüber hinaus werden einige Eigenschaften von den Tasks ausgefüllt, die innerhalb des Ablaufs verwendet werden.

Das Dokument veranschaulicht eine Gruppe unterschiedlicher Funktionen oder Bedingungsoperatoren, die in Ausdrücken verwendet werden.

Der Benutzer muss eine bestimmte Syntax befolgen, um einen Ausdruck in Tasks und Entscheidungspunkten für einen bestimmten Ablauf zu deklarieren. Der Ausdruck muss mit @context beginnen und mit @enden. Beispiel: @context.__tenantid@.

Hinweis: Die Beschreibung der Eigenschaften, die in diesem Dokument als Beispiel verwendet werden, kann hierreferenziert werden.

Auf Flow-Instanzeigenschaften zugreifen

Jede Flussinstanzeigenschaft hat einen eigenen Typ. Daher wird der Zugriff auf den Eigenschaftswert durch den Typ der Eigenschaft beeinflusst. Die unterstützten Eigenschaftstypen sind 'String', 'Number', 'Boolean', 'JSON' und 'Array '. Lesen Sie die weiteren Details, um zu verstehen, wie die verschiedenen Eigenschaftstypen verwendet werden können.

  • Auf eine Zeichenfolge oder einen booleschen Wert oder eine Zahl kann als @context.propertyName@zugegriffen werden. Beispiel:
    • Status- @context.status@
    • __tenantid- @context.__tenantid@
    • __locale- @context.__locale@
  • Auf eine verschachtelte JSON-Eigenschaft kann entweder mithilfe der Begrenzer '.' oder mit [] eckigen Klammern zugegriffen werden. Beispiel:
    • userName aus Benutzereigenschaft- @context.user.id@
    • messageId aus Fehlereigenschaft- @context.error.messageId@
    • ID aus Benutzereigenschaft- @context.user['id']@
    Hinweis:
    • Die eckigen Klammern [] dürfen nur für den Zugriff auf untergeordnete Eigenschaften verwendet werden.
    • Die verschachtelten Eigenschaften, die Begrenzer '.' enthalten, müssen in eckige Klammern [] eingeschlossen werden.
  • Auf eine Array-Eigenschaft kann über den erforderlichen Index in [] eckigen Klammern zugegriffen werden. Beispiel:
    • E-Mail von Benutzereigenschaft- @context.user.emails[0].value@ oder @context.user['emails'][0].value@
    • Name des angepassten Attributs aus Benutzereigenschaft- @context.user['urn:ietf:params:scim:schemas:extension:ibm:2.0:User'].customAttributes[0].name@

Verwendung von Ausdrücken in Eingabeparametern

Der Ausdruck kann verwendet werden, um auf Instanzeigenschaften in Eingabeparametern für Aufgaben zuzugreifen. Die Eingabeparameter unterstützen auch Ausdrücke und Operatoren. Binäre und ternäre Operatoren können zusammen mit Ausdrücken in Eingabeparametern verwendet werden. Siehe die folgenden Beispiele

  • Zugriff auf Eigenschaft- @context.themeId@
  • Binäroperator verwenden- @context.user.userName@ == "Jessica Hill"
  • Ternären Operator verwenden- @context.user['urn:ietf:params:scim:schemas:extension:ibm:2.0:User'].userCategory@ == "regular" ? @context.basicLdapUrl@ : @context.federatedUrl@
Hinweis: Der Signaleingabeparameter unterstützt keine Ausdrücke. Jeder bereitgestellte Inhalt wird als Zeichenfolge behandelt.

Erstellungsprogramm für exklusive Gateway-Bedingungen

Der exklusive Gateway-Entscheidungspfad wird in der Bedingungserstellung erstellt. Die Bedingungserstellung ist im abgehenden Sequenzfluss vom exklusiven Gateway verfügbar. Die Bedingungserstellung beginnt mit dem Bedingungssatz 'if' und kann null oder mehr Bedingungssätze 'or' enthalten. Jeder Bedingungssatz kann mehrere Bedingungen haben. Jede Bedingung ist in drei Abschnitte unterteilt: Attribut, Operatorund Wert.

Im Abschnitt Attribut kann der Benutzer eine Eigenschaft aus der Dropdown-Liste mit vordefinierten Eigenschaften auswählen und auch eine angepasste Eigenschaft für die Datenflussinstanz eingeben.
Hinweis: Die Eigenschaft der angepassten Flussinstanz muss mit @context beginnen und mit @enden. Um zum Beispiel auf eine benutzerdefinierte Eigenschaft namens responseCode zuzugreifen, kann der Benutzer - @context.responseCode@ eingeben.

Der Abschnitt Wert unterstützt Zeichenketten, Zahlen, Boolesche und Fließausdrücke als Eingabe.

Hinweis: Die Liste der Standarddatenflussinstanzeigenschaften mit ihrem Datentyp kann hierreferenziert werden.
Die Bedingungserstellung enthält eine Liste vordefinierter Operatoren zum Erstellen einer Bedingung. Die Tabelle enthält die Liste der Operatoren, die von der Bedingungserstellung unterstützt werden.
Bediener Unterstützte Datentypen Beschreibung Beispiel
equal to Zeichenfolge, Zahl und boolescher Wert Das Attribut und der Wert im Vergleich sind gleich. @context.status@ gleich fehlgeschlagen.
not equal to Zeichenfolge, Zahl und boolescher Wert Das Attribut und der Wert im Vergleich sind nicht gleich. @context.themeId@ ungleich Standardwert.
less than Zahl Das Attribut im Vergleich hat einen kleineren Wert als der Wert. @context.numericProperty@ (angenommen, es gibt eine Variable mit dem Namen numericProperty im Kontext) kleiner als 20.
less than or equal to Zahl Das Attribut im Vergleich ist kleiner-gleich dem Wert. @context.numericProperty@ kleiner-gleich 20.
greater than Zahl Das Attribut im Vergleich hat einen größeren Wert als der Wert. @context.numericProperty@ größer als 20.
greater than or equal to Zahl Das Attribut im Vergleich ist größer-gleich dem Wert. @context.numericProperty@ größer-gleich 20.
is true Boolesch Die Attributeigenschaft wird mit 'true' ausgewertet. @context.booleanProperty@ (angenommen, es gibt eine Variable namens booleanProperty im Kontext) ist wahr.
is false Boolesch Die Attributeigenschaft wird mit ' false' ausgewertet. @context.booleanProperty@ ist falsch.
has property _ Das Attribut enthält eine Eigenschaft, die im Wert angegeben ist. @context.user.name@ hat Eigenschaft givenName
is not null Zeichenfolge, Zahl und boolescher Wert Das Attribut ist nicht null. @context.user.name.givenName@ ist nicht null.
is not empty Zeichenfolge Das Attribut ist nicht leer. @context.user.name.givenName@ ist nicht leer.
Hinweis:
  • Für die Operatoren is true, is false, is not nullund is not empty ist der Abschnitt Wert nicht erforderlich.
  • Zur Berechnung komplexer Bedingungen muss der Benutzer die Task Funktion verwenden. Beispiel: Filtern eines Benutzers aus einer Liste von Benutzern auf der Basis einiger Attribute. Der gefilterte Benutzer kann dann über den Ausdruck aufgerufen werden.
  • Ein Datentyp kann in eine Zeichenfolge konvertiert werden, indem er in "" platziert wird. Beispielsweise kann die Zahl 10 als "10" in eine Zeichenfolge oder der boolesche Wert "true" als "true" in eine Zeichenfolge konvertiert werden.