Operatoren - Beispiele

contains (Enthalten)

Es soll festgestellt werden, ob ein String B in einem anderen String A enthalten ist.
«X(A=Zahlungsziel: 30 Tage netto)»
«X(B=Skonto)»
# 
«z(«("«X(A)»" contains "«X(B)»")\E»)\I»«SYS(MSG INFO B ist in A enthalten!)»
«z~(«("«X(A)»" contains "«X(B)»")\E»)\I»«SYS(MSG INFO B ist in A NICHT enthalten!)»

Ausgabe

B ist in A NICHT enthalten!

matches (Übereinstimmung)

Es soll festgestellt werden, ob ein String A mit einem anderen String B übereinstimmt. Im String B wird mit Platzhaltern (Wildcards) gearbeitet.
«X(A=Hergiswil Post Bahnhof)»
«X(B=Hergiswil ??? Bahnhof)»
# 
«z(«("«X(A)»" matches "«X(B)»")\E»)\I»«SYS(MSG INFO A stimmt mit B überein!)»
«z(«("«X(A)»" matches "«X(B)»")\E»)\I»«SYS(MSG INFO A und B stimmen nicht überein!)»

Ausgabe

A und B stimmen nicht überein!
Grund: Über die drei Fragezeichen wird geprüft, ob drei Zeichen enthalten sind. Da Post aber aus vier Zeichen besteht, ergibt sich keine Übereinstimmung.

max / min (Rückgabe des grösseren oder kleineren Werts)

Es werden zwei Variablen abgefüllt. Über die Operatoren max und min soll dann jeweils der grössere bzw. kleinere Wert zurückgegeben werden.
«X(A=25)»
«X(B=12)»
# 
«SYS(MSG INFO «(«X(A)» max «X(B)»)\E»)»
«X(A=25)»
«X(B=12)»
# 
«SYS(MSG INFO «(«X(A)» min «X(B)»)\E»)»

Ausgabe

Bei max: 25
Bei min: 12

>= (grösser gleich)

«F+»>= «10.5»grösser gleich«F-»
#
# Init Summe 1 und 2
«X(Sum1=1000)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 1 >= Summe 2 und das Ergebnis aus der Abfrage ist: ***
«X(Sum1)» >= «X(Sum2)» ergibt «10.5»«(«X(Sum1)» >= «X(Sum2)»)\N» (1= true / 0= false)
#
# *** Ist Summe 2 >= Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» >= «X(Sum1)» ergibt «10.5»«(«X(Sum2)» >= «X(Sum1)»)\N» (1= true / 0= false)
#
# Init Summe 1 und 2:
«X(Sum1=300)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 2 >= Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» >= «X(Sum1)» ergibt «10.5»«(«SUM(2)» >= «SUM(1)»)\N» (1= true / 0= false)

Ausgabe

>=
grösser gleich
Sum1=1000 / Sum2=300
 
1000 >= 300 ergibt
1 (1= true / 0= false)
300 >= 1000 ergibt
0 (1= true / 0= false)
 
 
Sum1=300 / Sum2=300
 
300 >= 300 ergibt
1 (1= true / 0= false)

> (grösser als)

«F+»> «10.5»grösser als«F-»
#
# Init Summe 1 und 2
«X(Sum1=1000)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 1 > Summe 2 und das Ergebnis aus der Abfrage ist: ***
«X(Sum1)» > «X(Sum2)» ergibt «10.5»«(«X(Sum1)» > «X(Sum2)»)\N» (1= true / 0= false)
#
# *** Ist Summe 2 > Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» > «X(Sum1)» ergibt «10.5»«(«X(Sum2)» > «X(Sum1)»)\N» (1= true / 0= false)
#
# Init Summe 1 und 2:
«X(Sum1=300)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 2 > Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» > «X(Sum1)» ergibt «10.5»«(«SUM(2)» > «SUM(1)»)\N» (1= true / 0= false)

Ausgabe

>
grösser als
Sum1=1000 / Sum2=300
 
1000 > 300 ergibt
1 (1= true / 0= false)
300 > 1000 ergibt
0 (1= true / 0= false)
 
 
Sum1=300 / Sum2=300
 
300 > 300 ergibt
0 (1= true / 0= false)

<= (kleiner gleich)

«F+»<= «10.5»kleiner gleich«F-»
#
# Init Summe 1 und 2
«X(Sum1=1000)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 1 <= Summe 2 und das Ergebnis aus der Abfrage ist: ***
«X(Sum1)» <= «X(Sum2)» ergibt «10.5»«(«X(Sum1)» <= «X(Sum2)»)\N» (1= true / 0= false)
#
# *** Ist Summe 2 <= Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» <= «X(Sum1)» ergibt «10.5»«(«X(Sum2)» <= «X(Sum1)»)\N» (1= true / 0= false)
#
# Init Summe 1 und 2:
«X(Sum1=300)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 2 <= Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» <= «X(Sum1)» ergibt «10.5»«(«SUM(2)» <= «SUM(1)»)\N» (1= true / 0= false)

Ausgabe

<=
kleiner gleich
Sum1=1000 / Sum2=300
 
1000 <= 300 ergibt
0 (1= true / 0= false)
300 <= 1000 ergibt
1 (1= true / 0= false)
 
 
Sum1=300 / Sum2=300
 
300 <= 300 ergibt
0 (1= true / 0= false)

< (kleiner als)

«F+»< «10.5»kleiner als«F-»
#
# Init Summe 1 und 2
«X(Sum1=1000)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 1 < Summe 2 und das Ergebnis aus der Abfrage ist: ***
«X(Sum1)» < «X(Sum2)» ergibt «10.5»«(«X(Sum1)» < «X(Sum2)»)\N» (1= true / 0= false)
#
# *** Ist Summe 2 < Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» < «X(Sum1)» ergibt «10.5»«(«X(Sum2)» < «X(Sum1)»)\N» (1= true / 0= false)
#
# Init Summe 1 und 2:
«X(Sum1=300)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 2 < Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» < «X(Sum1)» ergibt «10.5»«(«SUM(2)» < «SUM(1)»)\N» (1= true / 0= false)

Ausgabe

<
kleiner als
Sum1=1000 / Sum2=300
 
1000 < 300 ergibt
0 (1= true / 0= false)
300 < 1000 ergibt
1 (1= true / 0= false)
 
 
Sum1=300 / Sum2=300
 
300 < 300 ergibt
0 (1= true / 0= false)

= (gleich)

«F+»= «10.5»gleich«F-»
#
# Init Summe 1 und 2
«X(Sum1=1000)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 1 = Summe 2 und das Ergebnis aus der Abfrage ist: ***
«X(Sum1)» = «X(Sum2)» ergibt «10.5»«(«X(Sum1)» = «X(Sum2)»)\N» (1= true / 0= false)
#
# *** Ist Summe 2 = Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» = «X(Sum1)» ergibt «10.5»«(«X(Sum2)» = «X(Sum1)»)\N» (1= true / 0= false)
#
# Init Summe 1 und 2:
«X(Sum1=300)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 2 = Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» = «X(Sum1)» ergibt «10.5»«(«SUM(2)» = «SUM(1)»)\N» (1= true / 0= false)

Ausgabe

=
gleich
Sum1=1000 / Sum2=300
 
1000 = 300 ergibt
0 (1= true / 0= false)
300 = 1000 ergibt
0 (1= true / 0= false)
 
 
Sum1=300 / Sum2=300
 
300 = 300 ergibt
1 (1= true / 0= false)

<> (ungleich)

«F+»<> «10.5»ungleich«F-»
#
# Init Summe 1 und 2
«X(Sum1=1000)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 1 <> Summe 2 und das Ergebnis aus der Abfrage ist: ***
«X(Sum1)» <> «X(Sum2)» ergibt «10.5»«(«X(Sum1)» <> «X(Sum2)»)\N» (1= true / 0= false)
#
# *** Ist Summe 2 <> Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» <> «X(Sum1)» ergibt «10.5»«(«X(Sum2)» <> «X(Sum1)»)\N» (1= true / 0= false)
#
# Init Summe 1 und 2:
«X(Sum1=300)» «X(Sum2=300)»
Sum1=«X(Sum1)» / Sum2=«X(Sum2)»
#
# *** Ist Summe 2 <> Summe 1 und das Ergebnis aus der Abfrage ist: ***
«X(Sum2)» <> «X(Sum1)» ergibt «10.5»«(«SUM(2)» <> «SUM(1)»)\N» (1= true / 0= false)

Ausgabe

<>
ungleich
Sum1=1000 / Sum2=300
 
1000 <> 300 ergibt
1 (1= true / 0= false)
300 <> 1000 ergibt
1 (1= true / 0= false)
 
 
Sum1=300 / Sum2=300
 
300 <> 300 ergibt
0 (1= true / 0= false)

and (logische and-Verknüpfung)

«F+»and «10.5»und«F-»
«X(Sum1=1000)»«X(Sum2=1000)»«X(Sum3=300)»«X(Sum4=5000)»
Sum1 = «X(Sum1)»
Sum2 = «X(Sum2)»
Sum3 = «X(Sum3)»
Sum4 = «X(Sum4)»
(«X(Sum1)» > «X(Sum3)») and («X(Sum2)» < «X(Sum4)») ergibt «10.5»«(if(«(«(«X(Sum1)» > «X(Sum3)»)» and «(«X(Sum2)» < «X(Sum4)»)»)»,"JA","NEIN"))\E»
(«X(Sum1)» > «X(Sum3)») and («X(Sum2)» > «X(Sum4)») ergibt «10.5»«(if(«(«(«X(Sum1)» > «X(Sum3)»)» and «(«X(Sum2)» > «X(Sum4)»)»)»,"JA","NEIN"))\E»

Ausgabe

and
und
Sum1 = 1000
 
Sum2 = 1000
 
Sum3 = 300
 
Sum4 = 5000
 
(1000 > 300) and (1000 < 5000) ergibt
JA
(1000 > 300) and (1000 > 5000) ergibt
NEIN

or (logische or-Verknüpfung)

«F+»or «10.5»oder«F-»
«X(Sum1=1000)»«X(Sum2=1000)»«X(Sum3=300)»«X(Sum4=5000)»
Sum1 = «X(Sum1)»
Sum2 = «X(Sum2)»
Sum3 = «X(Sum3)»
Sum4 = «X(Sum4)»
(«X(Sum1)» > «X(Sum3)») or («X(Sum2)» < «X(Sum4)») ergibt «10.5»«(if(«(«(«X(Sum1)» > «X(Sum3)»)» or «(«X(Sum2)» < «X(Sum4)»)»)»,"JA","NEIN"))\E»
(«X(Sum1)» > «X(Sum3)») or («X(Sum2)» > «X(Sum4)») ergibt «10.5»«(if(«(«(«X(Sum1)» > «X(Sum3)»)» or «(«X(Sum2)» > «X(Sum4)»)»)»,"JA","NEIN"))\E»

Ausgabe

or
oder
Sum1 = 1000
 
Sum2 = 1000
Sum3 = 300
Sum4 = 5000
(1000 > 300) or (1000 < 5000) ergibt
JA
(1000 > 300) or (1000 > 5000) ergibt
JA