Règles de validation
L'interface de valideur appelle une série de règles et compare les valeurs de données entrées avec les règles. Chaque règle est un fichier Java™ exécutable qui implémente l'interface Rule (Règle).
Le plug-in de validation prend en charge deux types de règle :
- ROW : les règles au niveau des lignes sont exécutées en premier.
- GRID : les règles au niveau de la grille sont exécutées après les règles au niveau des lignes.
Lorsqu'un utilisateur enregistre des données pour une grille qui utilise un plug-in de validation spécifique, toutes les règles sont appliquées. Les règles au niveau de la ligne sont appliquées en premier, suivies par les règles au niveau de la grille. Les règles sont appliquées dans l'ordre dans lequel elles sont déclarées dans le fichier de règles.
Structure du fichier de règles de validation de données
Un fichier de règles de validation est un fichier XML contenant une ou plusieurs règles. Chaque règle peut contenir les balises ci-dessous.
| Balise | Description |
|---|---|
| rule | Commence la règle et définit son type, qui peut être ROW ou GRID. |
| nom | Nom de la règle. |
| desc | Description textuelle de la règle. |
| activer | Valeur booléenne pour l'activation ou la désactivation de la règle :
|
| applies-to-tvc-id | Nom interne du composant de grille auquel s'applique la règle. Pour appliquer la règle à plusieurs grilles, utilisez une balise applies-to-tvc-id distincte pour chaque composant de grille. Cette balise est facultative ; si elle est omise, la règle s'applique à toutes les grilles du formulaire spécifié. |
| class | Classe Java contenant les commandes de traitement de la règle. Pour utiliser l'exemple de règle de vérification de plage, entrez : com.unicacorp.uap.grid.validation.rule.basic.RangeCheckRule |
| set-property | La balise set-property transmet des paramètres aux règles. Chaque règle peut contenir plusieurs balises set-property, ou aucune. |
Exemples de règle de validation de données
Unica Plan est livré avec les exemples de règle suivants.
| Règle | Description |
|---|---|
| BeginsWithRule | Vérifie que la colonne de texte en cours de validation commence par le caractère spécifié. Vous définissez les propriétés beginCharacter et column. Par exemple : Cette règle vérifie la zone Name de la table de base de données dyn_vendors pour s'assurer que la valeur commence par la lettre A. Nom de la classe : com.unicacorp.uap.grid.validation.rule.basic.BeginsWithRule |
| DateCheckRule | Vérifie que la colonne des dates en cours de validation est comprise dans la plage spécifiée. Définissez les propriétés suivantes : greaterThan, lessThan, column. Par exemple : Cette règle vérifie la zone invoiceDate de la table de base de données dyn_vendors pour s'assurer que la valeur n'est pas antérieure à l'année 2000. (Facultatif) Vous pouvez également définir la propriété dateFormat. Si vous ajoutez cette propriété, vous devez entrer les dates au format spécifié. Vous pouvez définir les valeurs de format suivantes : jj/MM/aaaa, MM/jj/aaaa, jj/MM/aa, MM/jj/aa, aaaa-MM-jj, aaaa.MM.jj. Nom de la classe : com.unicacorp.uap.grid.validation.rule.basic.DateCheckRule |
| RangeCheckRule | Vérifie que la colonne des entiers en cours de validation est comprise dans la plage spécifiée. Vous définissez les propriétés suivantes : minValue, maxValue, column Par exemple : Cette règle vérifie la zone numEmployees de la table de base de données dyn_vendors pour s'assurer que la valeur est comprise entre 1 et 999 999. Nom de la classe : com.unicacorp.uap.grid.validation.rule.basic.RangeCheckRule |
| UniqueCheckRule | Vérifie que la colonne en cours de validation ne contient pas de valeurs en double. Vous définissez la propriété column. Nom de la classe : com.unicacorp.uap.grid.validation.rule.basic.UniqueCheckRule Remarque : Cette règle est toujours appliquée à la grille entière, même si vous utilisez ROW pour indiquer qu'il s'agit d'une règle au niveau des lignes. |