Bedingungen, die die Existenz prüfen

Sie können Bedingungen erstellen, die prüfen, ob Geschäftsbegriffe eines bestimmten Typs in einer Gruppe von Daten vorhanden sind.

In den folgenden Definitionen werden Operatoren verwendet, die prüfen, ob die angegebenen Daten vorhanden sind.

there are

Der Operator there are prüft, ob eine bestimmte Anzahl von Geschäftsbegriffen eines bestimmten Typs in den Daten aus der Anwendung, die die Regel aufruft, vorhanden ist.

Die folgende Bedingung prüft, ob zwei Kunden vorhanden sind:

wenn 
   there are 2 customers 
dann... 

Sie können den Operator where verwenden, um weitere Bedingungen anzugeben, die für Geschäftsbegriffe gelten sollen.

Die folgende Regelbedingung ist nur wahr (true), wenn es 10 Kunden gibt und jeder Kunde ein Mitglied der Kategorie "Gold" ist:

wenn
   there are 10 customers where the category of each customer is Gold, 
dann... 
there are at least und there are at most

Die folgenden Operatoren prüfen, ob die Anzahl der in Daten enthaltenen Instanzen eines Geschäftsbegriffs über oder unter dem angegebenen Wert liegt.

  • there are at least: Die Bedingung ist wahr (true), wenn die Anzahl der Vorkommen des Geschäftsbegriffs größer-gleich der angegebenen Zahl ist.

  • there are at most: Die Bedingung ist wahr (true), wenn die Anzahl der Vorkommen des Geschäftsbegriffs kleiner-gleich der angegebenen Zahl ist.

Die folgende Bedingung prüft, ob nicht mehr als drei Kunden der Kategorie "Gold" vorhanden sind.

wenn 
	there are at most 3 customers 
		where the category of each customer is Gold, 
dann... 

Die folgende Bedingung prüft, ob es mehr Kunden der Kategorie "Gold" als Kunden der Kategorie "Silber" gibt. Die Regel beginnt mit der Definition der folgenden Variablen:

  • silver customers: Die Liste der Kunden in der Kategorie "Silver" (Silber).

  • silver count: Die Anzahl der Kunden in der Kategorie "Silver" (Silber).

Die Regel verwendet anschließend diese Variablen, um die Anzahl der Kunden der Kategorie "Gold" mit der Anzahl der Kunden der Kategorie "Silber" zu vergleichen:

Definitionen 
	set 'silver customers' to all customers 
		where the category of each customer is Silver; 
	set 'silver count' to the number of 'silver customers' 
wenn 
	there are at least (’silver count’ + 1) customers 
		where the category of each customer is Gold, 
dann... 
there is at least one

Der BAL-Operator there is at least one prüft, ob es mindestens eine Instanz eines Geschäftsbegriffs in den Daten aus der Anwendung, die die Regel aufruft, gibt. Die Daten können auch mehr als eine Instanz des Geschäftsbegriffs enthalten.

Die folgende Bedingung prüft, ob es mindestens ein Objekt customer gibt:

wenn 
	there is at least one customer 
dann... 

Im folgenden Beispiel wird geprüft, ob es mindestens einen Kunden der Kategorie "Gold" gibt, der mindestens 65 Jahre alt ist:

Definitionen
   set ’gold customers’ to all customers 
      where the category of each customer is Gold; 
wenn 
   there is at least one customer in ’gold customers’ 
      where the age of this customer is at least 65, 
dann...