Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein Filterausdruck ist ein optionaler Parameter, der auf eine Empfangsform in der Orchestrierung angewendet werden kann, um die Activate-Eigenschaft auf True zu setzen. Wenn ein Filterausdruck angegeben wird, wird die Orchestrierung nur aktiviert, wenn eine eingehende Nachricht mit den im Filterausdruck angegebenen Bedingungen übereinstimmt. Wenn kein Filterausdruck angegeben ist, wird jede eingehende Nachricht, auf die die Orchestrierung abonniert ist, die Orchestrierung aktivieren.
Zum Erstellen eines Filterausdrucks vergleichen Sie eine Eigenschaft einer eingehenden Nachricht auf der linken Seite des Ausdrucks mit einer Konstante auf der rechten Seite des Ausdrucks. Sie können auch zusammengesetzte Ausdrücke erstellen, indem Sie die AND- und OR-Operatoren auf zwei oder mehr Ausdrücke anwenden. Sie können auch den Filterausdruck leer lassen, in diesem Fall werden alle Nachrichten akzeptiert.
Ein Filterausdruck sieht möglicherweise wie folgt aus:
InvoiceSchema.Quantity >= 1000
In diesem Beispiel wird der Orchestrierung eine eingehende Nachricht angezeigt. Die Orchestrierung verfügt über ein Aktivierungs-Empfangs-Shape (die Aktivierungseigenschaft ist auf "True " festgelegt, sodass der Empfang einer bestimmten Nachricht dazu führt, dass die Orchestrierung ausgeführt wird) mit dem vorhergehenden Filterausdruck, der darauf angewendet wird. Es wird erwartet, dass die eingehende Nachricht eine Eigenschaft namens "Quantity" im Namespace InvoiceSchema hat. Die Orchestrierung akzeptiert nur Rechnungen für 1000 oder mehr Elemente, sodass das Laufzeitmodul die eingehende Nachricht überprüft, bevor sie ausgeführt wird.
In der folgenden Tabelle sind Operatoren aufgeführt, die Sie in Filterausdrücken verwenden können.
| Bediener | BESCHREIBUNG | Beispiel |
|---|---|---|
| == | gleich | ReqMsg(Total) == 100 |
| != | not equal to (ungleich) | ReqMsg(Total) != 100 |
| < | Kleiner als | ReqMsg(Total) < 100 |
| > | Größer als | ReqMsg(Total) > 100 |
| <= | Kleiner oder gleich | ReqMsg(Total) <= 100 |
| >= | Größer oder gleich | ReqMsg(Gesamt) >= 100 |
| existiert | existiert | ReqMsg(Description) ist vorhanden. |
Hinweis
Zeichenfolgenwerte in Filterausdrücken werden in Anführungszeichen eingeschlossen, z. B.: ReqMsg(Description) = "Bestellstatus". Sie können keinen Zeichenwert in einem Filterausdruck verwenden.
Hinweis
Wenn Ihr aktivierter Empfang einem direkt gebundenen Port zugeordnet ist und Sie anschließend eine Nachricht desselben Typs mit demselben Wert für die im Filter getestete Eigenschaft senden, verursachen Sie eine Endlosschleife. Die Nachricht wird in das MessageBox-Objekt verschoben, wo sie wieder aufgenommen wird, da sie den Filterkriterien entspricht. Um dies zu vermeiden, sollten Sie entweder nach einer anderen Eigenschaft filtern, eine Nachricht eines anderen Typs senden oder den Wert der Eigenschaft vor dem Senden einer Nachricht desselben Typs ändern.
Siehe auch
Empfangsform konfigurieren
Verwenden von Korrelationen in Orchestrierungen
Verwenden von Unterscheidungsmerkmalen und Eigenschaftsfeldern
Verwenden von Nachrichten in Orchestrierungen