Scénarios de règle de validation des données

Ces scénarios fournissent des exemples relatifs à l'utilité de la validation des données pour l'implémentation de stratégies métier.

Scénario 1

John est employé par l'entreprise Acme, Inc. en tant que consultant. Son rôle est de concevoir des formulaires et d'implémenter des règles de validation des données pour appliquer certaines stratégies de l'entreprise. Il doit implémenter une règle de validation qui marque les montants réels (Actual) en rouge si leur coût total (Total Cost) dépasse le montant budgété. Ce test doit être effectué pour chaque année et chaque période de l'application. John conçoit le formulaire et ajoute une règle de validation des données au niveau de la cellule à l'aide d'un membre interdimensionnel, comme le montrent les figures ci-dessous.

Présentation du formulaire au moment de la conception :


Présentation du formulaire au moment de la conception :

Règle de validation des données au moment de la conception :


Règle de validation des données au moment de la conception

Formulaire au moment de la saisie des données, lorsque les validations des données ont été appliquées :


Formulaire au moment de la saisie des données, lorsque les validations des données ont été appliquées

Conseils :

  • John peut fractionner Total Cost pour ajouter un segment particulier et appliquer une règle de validation des données dans ce segment afin d'améliorer légèrement les performances. Cependant, cela augmenterait les besoins de maintenance en raison de l'ajout de nouveaux comptes et de nouveaux scénarios au formulaire.

  • Si une modification des critères implique que seule la période sur l'année (YearTotal) dans Actual est marquée en rouge, deux possibilités se présentent à John. L'option recommandée est d'ajouter une entrée IF pour vérifier si le membre Period est YearTotal. Il peut aussi fractionner le membre YearTotal et créer une colonne distincte afin d'optimiser les performances. Cependant, cela dérèglerait la logique de répartition, l'en-tête de colonne de Year serait répété et la maintenance du formulaire serait plus compliquée lors de l'ajout de nouvelles années.

Scénario 2

Après avoir révisé le formulaire conçu par John dans le scénario 1, la société Acme décide de placer Budget dans une colonne plutôt que dans une ligne. Pour implémenter cette exigence, John peut déplacer des membres à l'intérieur des axes afin de modifier la présentation du formulaire. Cependant, il n'est pas tenu de mettre à jour les règles de validation des données. John met à jour le formulaire tel qu'indiqué dans la figure suivante :

Présentation du formulaire au moment de la conception :


Présentation du formulaire au moment de la conception :

Formulaire au moment de la saisie des données, lorsque les validations des données ont été appliquées :


Exemple de validation des données

Scénario 3

Une fois que ces formulaires ont été déployés, on demande à John d'implémenter la stratégie suivante, qui consiste à s'assurer que les montants du budget de l'année en cours ne seront pas beaucoup plus élevés que les montants réels (Actual) de l'année précédente. Si la différence est supérieure à 5 %, elle doit être marquée en rouge.

John décide d'utiliser un membre avec une formule associée pour calculer la variance entre le budget de l'année en cours et le montant réel de l'année précédente. Il ajoute la formule de membre suivante :

@varper(@Prior("Actual", 1, @Relative("Year", 0)), budget)/100;

John conçoit le formulaire et ajoute une règle de validation des données au niveau de la cellule, comme indiqué dans la figure ci-dessous. Il utilise le nom du membre pour appliquer la validation uniquement au coût total (Total Cost).

Présentation du formulaire au moment de la conception :


Présentation du formulaire au moment de la conception :

Règle de validation des données au moment de la conception :


Règle de validation des données au moment de la conception

Formulaire au moment de la saisie des données, lorsque les validations des données ont été appliquées :


Formulaire au moment de la saisie des données, lorsque les validations des données ont été appliquées

Conseils :

  • Si John n'est pas autorisé à modifier l'outline ou s'il rencontre des problèmes de performances liés aux formules de membre, il peut utiliser une colonne de formule. Reportez-vous à Conception de formulaires avec des lignes et des colonnes de formule.

  • John définit la règle dans la colonne Variance Percent (pourcentage de variance) pour les raisons suivantes :

    • Cela améliore les performances. La règle n'est évaluée que sur les cellules de la colonne Variance Percent. Si la règle avait été affectée au total sur l'année (YearTotal), elle aurait dû être évaluée pour toutes les périodes (Time Periods) du budget de l'année en cours.

    • Cela aide l'utilisateur à répondre au message de validation des données. John peut ajouter un message dans la colonne Variance Percent pour indiquer que la variance est supérieure au lieu de l'ajouter à YearTotal. Ainsi, les utilisateurs ne sont pas obligés de rechercher Variance Percent pour déterminer la différence.

  • John aurait pu marquer YearTotal et Variance Percent en rouge si cela avait fait partie des exigences.

Scénario 4

En plus du marquage en rouge, la règle doit également empêcher quiconque de promouvoir l'unité d'approbation si le budget de l'année en cours dépasse de manière significative (> 5 %) les montants réels (Actual) de l'année précédente. Pour implémenter cette exigence, il suffit que John modifie les instructions de traitement de la règle de validation des données et sélectionne Ne pas promouvoir, comme dans la figure ci-dessous.

Règle de validation des données au moment de la conception :


Règle de validation des données au moment de la conception

Scénario 5

Enfin, John est invité à concevoir une règle de validation des données pour valider le fait que la rémunération totale des employés d'un service donné est comprise dans la plage autorisée. La règle évalue les employés existants (Existing Employees) du service Operations. Elle valide le fait que, si la rémunération totale (Total Compensation) est supérieure au MIN autorisé et inférieure ou égale à ¾ de la plage de rémunération de l'échelon des employés, aucune action n'est requise.

Si la valeur de Total Compensation est supérieure aux ¾ de la plage de rémunération, un message de validation apparaît et les unités d'approbation doivent être approuvées par un directeur des ressources humaines. Si la valeur est inférieure à MIN ou supérieure à MAX, une erreur est générée et les utilisateurs ne peuvent pas promouvoir leurs unités d'approbation.

John ouvre le formulaire de récapitulatif des dépenses des employés (Employee Expenses Summary) dans la boîte de dialogue Gestion des formulaires. Ce formulaire contient des employés et des services sur la page, des comptes (comme Total Compensation) sur la ligne et une période dans la colonne. Pour simplifier la génération des validations, John ajoute une ligne calculée afin de calculer ¾ de la plage de rémunération, et il ajoute des membres Min Compensation et Max Compensation au formulaire, comme indiqué dans les figures suivantes. Les membres Min Compensation et Max Compensation définis en fonction de l'échelon de l'employé sont calculés à l'aide de formules de membre.

Présentation du formulaire au moment de la conception :


Présentation du formulaire au moment de la conception :

Règle de validation des données permettant d'arrêter la promotion des unités d'approbation :


Règle de validation des données permettant d'arrêter la promotion des unités d'approbation

Règle de validation des données permettant d'ajouter le directeur des ressources humaines en tant que réviseur :


Règle de validation des données permettant d'ajouter le directeur des ressources humaines en tant que réviseur

Formulaire au moment de la saisie des données, lorsque les validations des données ont été appliquées et que les messages de validation sont affichés :


Formulaire au moment de la saisie des données, lorsque les validations des données ont été appliquées et que les messages de validation sont affichés