Altair® Monarch®

 

Logische Operatoren in Ausdrücken verwenden

Ein Ausdruck ist eine Formel, die einen Wert liefert. In Monarch Classic werden Ausdrücke verwendet, um Filter und berechnet Felder zu definieren und um feldbasierte Suchen im Tabellenfenster durchzuführen.

Beim Erstellen von Ausdrücken in Monarch Classic können logische Operatoren verwendet werden. Ein logischer Operator dient zur Kombination von Vergleichen. Monarch Classic können die logischen Operatoren „.And.“, „.Or.“, „.Not.“, „.In.()“ und „.NotIn.()“ in Ausdrücken verwendet werden.

Es folgt eine Beschreibung der einzelnen logischen Operatoren:

Dialogfeldoptionen

Operator

Beschreibung

.And.

Bei diesem Operator ist erforderlich, dass beide Hälften des Ausdruckes TRUE sind. Der folgende Ausdruck wird z. B. nur in solchen Datensätzen als TRUE ausgewertet, in denen der Nachname „Lambert“ und der Ort „Berlin“ ist:

Nachname="Lambert".And.Ort="Berlin"

.Or.

Erfordert, dass entweder die eine oder die andere Hälfte eines Ausdrucks TRUE ist. Der folgende Ausdruck wird z. B. in solchen Datensätzen als TRUE ausgewertet, in denen entweder der Nachname „Lambert“ oder der Ort „Berlin“ ist:

Nachname="Lambert".And.Ort="Berlin"

.Not.

Erfordert, dass der betreffende Ausdruck FALSE ist. Der folgende Ausdruck wird z. B. in solchen Datensätzen als TRUE ausgewertet, in denen der Ort nicht „Frankfurt“ ist:

.Not.Ort="Frankfurt"

Der vorstehende Ausdruck kann auch durch Ort<>"Frankfurt" ausgedrückt werden.

.In.()

Findet heraus, ob sich ein bestimmter Wert in einer Liste von Werten befindet.

Syntax: Wert.In.(Wert1;Wert2;usw.)

Bei Wert handelt es sich in der Regel um einen Feldnamen, der die Werte enthält, die mit den designierten Werten verglichen werden sollen. Wert kann aber auch das Ergebnis einer Funktion oder eines Ausdrucks sein.

Wert1, Wert2 usw. stellen die designierten Werte dar, mit denen der Feldnamens- oder sonstige Wert verglichen werden soll. Alle in der Liste befindlichen Werte müssen vom gleichen Typ (Zeichen, Zahl oder Datum) wie der links vom Operator .In. befindliche Wert sein.

Der Operator .In. gibt 0 (FALSE) zurück, wenn sich der betreffende Wert nicht unter den aufgelisteten Werten befindet, oder 1 (TRUE), wenn der Wert in der Liste enthalten ist. Mit dem Ausdruck

Medien .In.("CD";"LP";"DVD“)

ist beispielsweise gleichbedeutend mit dem Ausdruck

Medien="CD".or.Medien="LP".or.Medien="DVD"

Beide Ausdrücke werden als 0 (FALSE) ausgewertet, wenn der betreffende Medienwert keinem der designierten Zeichenfolgenwerte entspricht. Beide Ausdrücke werden dagegen als 1 (TRUE) ausgewertet, wenn der betreffende Medienwert mit einem der designierten Zeichenfolgenwerte übereinstimmt.

.NotIn.()

Stellt fest, ob sich der betreffende Wert nicht unter den designierten Werten befindet.

Syntax: Wert .NotIn.(Wert1; Wert2; usw.)

Bei Wert handelt es sich in der Regel um einen Feldnamen, der die Werte enthält, die mit den designierten Werten verglichen werden sollen. Wert kann aber auch das Ergebnis einer Funktion oder eines Ausdrucks sein.

Wert1, Wert2 usw. stellen eine Liste von Werte dar, gegen die ausgewertet werden soll. Alle Werte in der Liste müssen vom gleichen Typ (Zeichen, Zahl oder Datum) wie der links vom Operator .NotIn. befindliche Wert sein.

Der Operator .NotIn. gibt 1 (TRUE) zurück, wenn der Wert unter den aufgelisteten Werten nicht gefunden wird, oder 0 (FALSE), wenn der Wert gefunden wird. Mit dem Ausdruck

Medien.NotIn.("CD“;"LP“;"DVD")

entspricht dem Ausdruck

Medien<>"CD".and.Medien<>"LP".and.Medien<>"DVD"

Beide Ausdrücke werden als 1 (TRUE) ausgewertet, wenn der Medienwert keinem der designierten Wert (CD, LP oder DVD) entspricht. Beide Ausdrücke werden dagegen als 0 (FALSE) ausgewertet, wenn der Medienwert mit einem der designierten Zeichenfolgewerte übereinstimmt.