Prüfregeln

Die Validierungsschnittstelle funktioniert, indem eine Reihe von Regeln aufgerufen wird und die eingegebenen Datenwerte mit den Regeln verglichen werden. Jede Regel ist eine ausführbare Java™-Datei, mit der die Regel-Schnittstelle implementiert wird.

Das Validierungs-Plug-in unterstützt zwei Arten von Regeln.

  • ROW (ZEILE): Regeln auf Zeilenebene werden zuerst ausgeführt.
  • GRID (RASTER): Regeln auf Rasterebene werden nach Regeln auf Zeilenebene ausgeführt.

Wenn ein Benutzer Daten für ein Raster speichert, das ein vorhandenes Validierungs-Plug-in verwendet, werden alle Regeln angewendet. Die Regeln auf Zeilenebene werden zuerst angewendet, gefolgt von den Regeln auf Rasterebene. Regeln werden in der Reihenfolge angewendet, in der sie in den Regeldateien deklariert werden.

Dateistruktur für Datenprüfregeln

Bei einer Validierungsregeldatei handelt es sich um eine XML-Datei, die mindestens eine Regel enthält. Jede Regel kann die folgenden Tags enthalten.

Tabelle 1. Tags für Prüfregeldateien
Tag Syntax
Regel Startet die Regel und legt den Regeltyp fest, der ROW (ZEILE) oder GRID (RASTER) sein kann.
Name Der Name der Regel.
desc Eine Textbeschreibung der Regel.
aktivieren Ein boolescher Wert für die Aktivierung oder Inaktivierung der Regel:
  • false: Die Regel wird inaktiviert
  • true: Die Regel wird aktiviert
applies-to-tvc-id Der interne Name der Rasterkomponente, für die die Regel Anwendung findet. Um die Regel auf mehrere Raster anzuwenden, verwenden Sie für jede Rasterkomponente einen separaten Tag "applies-to-tvc-id". Dieser Tag ist optional; wird er weggelassen, wird die Regel auf alle Raster im angegebenen Formular angewendet.
Klasse Die Java-Klasse enthält die Befehle für die Verarbeitung der Regel. Um die Beispielbereichs-Prüfregel zu verwenden, geben Sie Folgendes ein: com.unicacorp.uap.grid.validation.rule.basic.RangeCheckRule
set-property Der Tag set-property übergibt den Regeln Parameter. Jede Regel kann keine oder mehrere set-property-Tags enthalten.

Beispieldatenvalidierungsregeln

Im Lieferumfang von Unica Plan sind die folgenden Beispielregeln enthalten.

Tabelle 2. Beispieldatenvalidierungsregeln
Regel Syntax
BeginsWithRule

Stellt sicher, dass die validierte Textspalte mit dem angegebenen Zeichen beginnt. Sie legen die Eigenschaft "beginCharacter" und die Spalteneigenschaften fest. Beispiel:

<set-property property="beginCharacter" value="A"/> 
<set-property property="column" value="dyn_vendors.Name"/>

Mit dieser Regel wird das Feld "Name" in der Tabelle "dyn_vendors database" geprüft, um sicherzustellen, dass der Wert mit dem Buchstaben A beginnt.

Klassenname: com.unicacorp.uap.grid.validation.rule.basic.BeginsWithRule

DateCheckRule

Stellt sicher, dass die validierte Datumsspalte innerhalb des angegebenen Bereichs liegt. Legen Sie die folgenden Eigenschaften fest: greaterThan, lessThan, column.

Beispiel:

<set-property property="greaterThan" value="12/31/1999"/> 
<set-property property="lessThan" value="Today"/> 
<set-property property="column" value=
     "dyn_vendors.invoiceDate"/>

Mit dieser Regel wird das Feld "invoiceDate" in der Datenbanktabelle "dyn_vendors" geprüft, um sicherzustellen, dass der Wert nicht vor dem Jahr 2000 liegt.

Optional können Sie auch die Eigenschaft "dateFormat" festlegen. Wenn Sie diese Eigenschaft hinzufügen, müssen Daten im angegebenen Format eingegeben werden. Sie können die folgenden Formatwerte festlegen: Sie können die folgenden Formatwerte festlegen: TT/MM/JJJJ, MM/TT/JJJJ, TT/MM/JJ, MM/TT/JJ, JJJJ-MM-TT, JJJJ.MM.TT

Klassenname: com.unicacorp.uap.grid.validation.rule.basic.DateCheckRule

RangeCheckRule

Stellt sicher, dass die validierte Ganzzahlspalte innerhalb des angegebenen Bereichs liegt. Legen Sie die folgenden Eigenschaften fest: minValue, maxValue, column

Beispiel:

<set-property property="minValue" value="1"/> 
<set-property property="maxValue" value="999999"/> 
<set-property property="column" value=
     "dyn_vendors.numEmployees"/>

Mit dieser Regel wird das Feld "numEmployees" in der Datenbanktabelle "dyn_vendors" geprüft, um sicherzustellen, dass der Wert zwischen 1 und 999.999 liegt.

Klassenname: com.unicacorp.uap.grid.validation.rule.basic.RangeCheckRule

UniqueCheckRule

Stellt sicher, dass die geprüfte Spalte keine doppelten Werte enthält. Sie legen die Spalteneigenschaft fest.

Klassenname: com.unicacorp.uap.grid.validation.rule.basic.UniqueCheckRule

Anmerkung: Diese Regel wird stets über das gesamte Raster angewendet, auch wenn Sie ROW verwenden, um anzugeben, dass es sich um eine Regel auf Zeilenebene handelt.