Altova FlowForce Server 2026 Advanced Edition

Wenn Sie Parameterwerte eingeben, führt FlowForce in Echtzeit eine Syntaxüberprüfung und eine Datentypvalidierung durch. Um sicherzustellen, dass FlowForce-Ausdrücke syntaktisch korrekt sind und wie beabsichtigt ausgewertet werden, befolgen Sie diese Regeln:

 

Verwenden Sie den richtigen Datentyp.

Setzen Sie Literal-Strings in einfache oder doppelte Anführungszeichen.

Setzen Sie Ausdrücke in geschweifte Klammern, wenn Sie diese in ein String-Feld einbetten.

 

Nähere Informationen dazu finden Sie in den Unterabschnitten weiter unten.

 

Regel Nr. 1: Verwenden Sie den richtigen Datentyp

Wenn Sie einen Ausdruck in ein Feld eingeben, stellen Sie sicher, dass er dem Datentyp des Felds entspricht. Der Datentyp wird rechts vom jeweiligen Feld angezeigt (Abbildung unten).

expression_field_type

Verfügbare Datentypen

Die verfügbaren Datentypen sind unten beschrieben.

 

String: z.B. 'Hello World!'

Boolean: true()/false()

Zahl: z.B. 56

Ergebnis: Stellt den Output eines Ausführungsschritts dar (z.B. MapForce-Mappings, StyleVision-Transformationsdateien, Shell-Funktionen und andere). Für das Ergebnisobjekt können Exit-Code, Fehlermeldung, stdout, stderr und eine Sammlung von Ergebnisstreams aufgezeichnet werden.

 

oUm Zugriff auf den erzeugten Wert zu erhalten, weisen Sie ihm einen Namen zu (z.B. output) und übergeben Sie Ihn an die Ausdrucksfunktion results. Diese Funktion konvertiert ihn in einen Stream, der mit Stream-Ausdrucksfunktionen verarbeitet werden kann.

oBei Shell-Befehlen rufen Sie Schrittergebnis-Ausdrucksfunktionen auf, um die Ausgabe zu verarbeiten. Damit die Standardausgabe z.B. als Stream zurückgegeben wird, verwenden Sie stdout(output). Damit der Standardfehler als Stream zurückgegeben wird, verwenden Sie den Ausdruck stderr(output).

 

Stream: Steht für große Mengen an Binärdaten, die auf der Festplatte oder im Speicher gespeichert sind.

Liste: FlowForce unterstützt Listen aller oben erwähnten Datentypen (alle Elemente der Liste müssen denselben Datentyp haben), einschließlich Listen von Listen. Listen können mit der Funktion list() erstellt werden.

 

Beispiele

Im Folgenden finden Sie weitere Beispiele:

 

Ausdruck

Wird ausgewertet zu...

Erklärung

1/4

0,25

Erzeugt einen numerischen Wert.

1+1==2

true

Erzeugt einen Booleschen Wert (Boolean).

'apple'

apple

Erzeugt einen String-Wert.

concat('1','2','3')

123

Erzeugt einen String-Wert, der die Input-Strings zu einem einzigen kombiniert.

1+'apple'

-

Ungültig: nicht übereinstimmenden Datentypen (Zahl + String)

{content(stdout(result))}

[...] (string)

 

 

Verwendet verschachtelte Funktionen: stdout() ruft eine Standardausgabe als Stream ab; content() konvertiert den Stream in einem String.

 

Der Ausdruck ist nur in folgenden Fällen gültig:

 

Der Wert result wurde zuvor deklariert.

Der Wert result enthält die Standardausgabe eines Shell-Befehls.

Der Ausdruck ist in ein String-Feld eingebettet.

 

 

Regel Nr. 2: Setzen Sie Strings in einfache oder doppelte Anführungszeichen

Damit ein String als solcher behandelt wird, muss ein Ausdruck in einfache oder doppelte Anführungszeichen gesetzt werden. Andernfalls könnte dies zu unerwünschten Ergebnisse führen oder die Validierung könnte fehlschlagen.

 

Ausdruck

Wird ausgewertet zu...

Erklärung

1+1

2

Der Wert ist numerisch.

'1+1'

1+1

Der Wert ist ein String.

1+1==2

true

Der Wert ist ein Boolescher Wert (Boolean).

"a""b"

a"b

Um ein Anführungszeichen mit einem Escape zu versehen, verdoppeln Sie es.

 

Regel Nr. 3: Verwenden Sie geschweifte Klammern in String-Feldern

FlowForce wertet in einem String-Feld das gesamte Feld aus, interpretiert aber nur den Text innerhalb von geschweiften Klammern {} als Ausdruck. Im nachstehenden Beispiel trennen die geschweiften Klammern den Ausdrcuk instance-id() vom umgebenden Literalext.

expression_in_string05

 

Wenn das gesamte Feld den Typ Ausdruck hat, verwenden Sie keine geschweiften Klammern. So hat z.B. der Parameter Ausdruck der vordefinierten Funktion system/compute diesen Typ. Ein korrektes Beispiel für dieses Feld wäre:

expression_correct

 

Würden Sie geschweifte Klammern in ein Ausdrucksfeld eingeben, würde dies einen Syntaxfehler verursachen:

expression_incorrect

 

Damit die Zeichen { und } als Literalzeichen angezeigt werden, verwenden Sie doppelte geschweifte Klammern ({{ und }}). Im Folgenden finden Sie weitere Beispiele:

 

Ein String-Feld mit dem folgenden Wert....

Wird ausgewertet zu...

Erklärung

expression_in_string01

echo Hello, World!

Da der String keinen eingebetteten Ausdruck enthält, werden keine geschweiften Klammern verwendet. Der Ausdruck wird ausgewertet, so wie er dort steht.

expression_in_string02

-

Der String kann nicht ausgewertet werden, da der eingebettete Ausdruck syntaktisch nicht korrekt ist. FlowForce zeigt daher einen Syntaxfehler an.

expression_in_string03

echo Hello, World!

Der String enthält einen syntaktisch korrekten Ausdruck. Allerdings befindet sich der Ausdruck in einem String-Feld, daher ist das Auswertungsergebnis dasselbe wie für den Ausdruck echo Hello, World!.

expression_in_string04

echo {'Hello, World!'}

Der String enthält keinen Ausdruck, da die Escape-Zeichen {{ und }} verwendet wurden.

 

© 2020-2026 Altova GmbH