Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Binäre Ressourcen, die die Flaggen enthalten:

Name der Ressource ger_flagch_flagat_flag
Inhalt


Dazugehörige Regel:

...


Die Regel in 
Abb. D hat 3 Spalten und 3 Zeilen. Jede Spalte definiert eine Bedingung, jede Zeile einen Wert pro Spalte. Die Prüfung beginnt in Zeile 1, Spalte 1. Ist der Wert von Zeile 1 in Spalte 1 identisch zum Spaltenwert, wird mit der Prüfung von Spalte 2 in Zeile 1 fortgefahren. Ist der Wert von Zeile 1 in Spalte 2 wieder identisch zum Spaltenwert der 2. Spalte,  wird mit der Prüfung von Spalte 3 in Zeile 1 fortgefahren. Ist auch der Wert von Spalte 3 in Zeile 1 identisch zum Spaltenwert,  trifft die gesamte Zeile zu  und der Rückgabewert der Zeile ist der Wert der Regel (grüne Pfeile).  Hat eine der Spalten in Zeile 1 einen anderen Wert als die zugehörige Spaltenbedingung, trifft also nicht auf die Bedingung zu, wird die Prüfung der Zeile abgebrochen abgebrochen und mit der Prüfung der nächsten Zeile fortgefahren. Dort wird dann wieder in der 1. Spalte begonnen. Wurden alle Zeilen geprüft und keine davon erfüllt alle Spaltenbedingungen, ist der Wert der Regel undefiniert, da kein Rückgabewert ausgewählt werden kann ( rote Pfeile ).

Um zu verhindern, dass der Wert einer Regel undefiniert (leer) ist, falls  keine der Zeilen alle Bedingungen erfüllt, können Sie unter den regulären Zeilen eine weitere Zeile einfügen,  die in allen Spalten den Operator * als Wert hat, also immer gültig ist In dieser Zeile definieren Sie dann als Rückgabewert einen Standard-Wert. Trifft keine der regulären Auswahlmöglichkeiten zu, wird diese Standardzeile ausgewählt und der Wert der Regel ist der Standard-Wert. Dieses Vorgehen wurde in Abb. A durch Zeile #4 verwirklicht.

...

Das R-S definiert einige boolsche Operatoren, mit denen Sie Vergleiche anstellen können. Auch wenn Sie explizit keinen Operator angeben wird ein Operator verwendet, nämlich der Operator  EQUAL : Die Bedingung ist wahr, wenn  Wert A = Wert B , also wenn die Spalte in der Zeile den gleichen Wert hat wie die Spalte. Bisher sind wir in Regeln von diesem Verhalten ausgegangen: Der Wert in der Zeile muss identisch zum Wert der entsprechenden Spalte sein. Dies ist aber nur das Standardverhalten, das Sie durch boolsche Operatoren verändern können. In der Praxis werden Sie oft mit Operatoren arbeiten, nämlich immer dann, wenn Werte nicht nur gleich sein sollen, sondern in einer bestimmten Beziehung zueinander stehen sollen. Folgende Operatoren existieren im R-S:


Erweitern
title* Operator

>

Panel
borderColorLightGray
bgColor#FCFDFE
borderWidth1
borderStyledashed

Den ALWAYSTRUE Operator * haben Sie bereits im obigen Abschnitt kennengelernt. Er erwartet keine zu vergleichenden Argumente und hat immer den Wert  TRUE , ist also immer wahr. Er wird oft benutzt, wenn eine Bedingung für die Zeile irrelevant ist, um einen Restbereich abzudecken, der durch die anderen Zeilen nicht abgedeckt wurde oder um ein alternatives Standardverhalten zu implementieren. Durch * trifft diese Bedingung dann immer zu.


Beispielregel A  


Die Bedingung in 
Beispielregel A  ist  24.12.2013 . Zeile #1 erhält das heutige Datum über die Datenstrom-Variable  DS.TODAYS_DATE . Ist das heutige Datum der 24.12.2013, so ist der Wert der Regel der  STRING  "Heute ist Weihnachten!". Ist heute nicht der 24.12.2013, trifft die Bedingung nicht zu und die Zeile ist ungültig. Zeile #2 ist immer gültig, da der Operator  *  unabhängig von der Bedingung immer zutrifft (Bsp. gilt natürlich nur für 2013) . An allen anderen Tagen ist der Wert der Regel also der  STRING  "Heute ist irgendein Tag, aber nicht Weihnachten!". In Zeile #1 wird übrigens automatisch der  EQUAL -Operator verwendet, da ja kein Operator angegeben wird. Die interne Darstellung ist also  =24.12.2013  (der  EQUAL -Operator darf aber  nicht  explizit manuell angegeben werden).  


...