Valider les données à l’aide de règles intelligentes

Les règles intelligentes sont des conditions qui génèrent des messages d’avertissement ou d’erreur à destination des utilisateurs. Elles sont configurées pour répondre à trois types d’entrées utilisateur : Ajouter, Ensembleou Supprimer. Lorsqu’un utilisateur effectue l’une de ces actions et qu’elle ne répond pas à votre condition définie, un message d’avertissement ou d’erreur est reçu. Les règles intelligentes génèrent uniquement des messages d’avertissement et d’erreur, de sorte que la piste d’audit ne capture pas les informations de règle intelligente déclenchées.

Les règles intelligentes aident à intégrer la conformité dans vos processus métier. À l’aide de règles intelligentes, vous pouvez vous assurer que les pratiques commerciales souhaitées sont appliquées au sein de votre organisation.

Pour afficher la liste des règles intelligentes, accédez à Services de personnalisation ou Services de plateforme > Personnalisations d’objets > Règles intelligentes. Dans la liste des règles intelligentes, vous pouvez modifier une règle intelligente existante ou en ajouter une nouvelle.

Si une règle intelligente a été ajoutée dans le cadre d’un package, elle porte un nom de package et vous pouvez uniquement afficher la règle intelligente. Pour modifier un règle intelligent qui fait partie d’un package, contact le créateur du package.

Ajouter ou modifier une règle intelligente

L’Assistant Règles intelligentes vous guide tout au long du processus de conception de votre règle intelligente.

  1. Choisir l’objet à développer
  2. Sélectionner les propriétés de la règle
  3. Enregistrez (déployez) la règle
Champ de paiement des Comptes clients : Résumé des paiements {!(ARPAYMENT.PRBATCH)!} ne prend actuellement pas en charge les personnalisations de règles intelligentes.

1. Choisir l’objet à développer

Les règles intelligentes sont appliquées à un objet. Le menu déroulant Objet propriétaire vous donne une liste d’objets auxquels vous pouvez ajouter une règle intelligente.

  1. Sélectionnez Objet propriétaire et sélectionnez l’objet auquel vous souhaitez ajouter une règle intelligente.

    Si vous sélectionnez Détail de la transaction de ventes, Détail de la transaction de contrôle d’inventaireou Détail de la transaction du bon de commande pour votre Objet, un deuxième champ de sélecteur pour Type de document apparaît. Le type de document représente les définitions de transaction auxquelles la personnalisation est ajoutée. Vous pouvez configurer une personnalisation pour qu’elle s’applique à plusieurs définitions de transaction à la fois.

  2. Sélectionnez Suivant.

2. Sélectionner les propriétés de règle

Les propriétés de la règle intelligente définissent quand et comment une réponse est renvoyée à l’utilisateur. Les différentes propriétés sont les suivantes :

  • Type : Type de réponse à l’utilisateur, Erreur ou Avertissement.

    • Un Erreur Le message demande à l’utilisateur de revenir en arrière et de modifier quelque chose avant de pouvoir continuer. Un message d’erreur peut être utilisé pour exiger la saisie d’un champ.
    • A Avertissement Signale la violation de la règle mais permet à l’utilisateur de poursuivre l’opération. L’avertissement peut rappeler aux utilisateurs de s’assurer qu’un document externe est en place, tel qu’un ordre de travail, pour la fiche créée.

      Créer une règle intelligente pour les factures de projet ?

      Définissez le type de règle sur Erreur, plutôt que Avertissement. Les avertissements ne s’appliquent actuellement pas aux factures générées à partir de l’application Projets.

  • Événements (obligatoire) : Les événements couvrent les trois choses qu’un utilisateur peut faire avec une fiche :

    • Ajouter : La règle est vérifiée chaque fois qu’une nouvelle fiche est créée.
    • Ensemble : La règle est vérifiée chaque fois qu’une fiche est modifiée.
    • Supprimer : La règle est vérifiée chaque fois qu’une fiche est supprimée.

      Les avertissements ne sont pas pris en charge pour la suppression

      Les avertissements ne sont actuellement pas pris en charge pour les événements de suppression. Les avertissements sont convertis en erreurs.

  • Vous pouvez choisir l’une ou l’ensemble de ces options.

  • État (obligatoire) : La règle à respecter pour qu’aucun message d’erreur ou d’avertissement ne soit envoyé.

    Étant donné que les conditions vides sont toujours évaluées comme vraies, laisser une condition de règle intelligente vide ne génère pas de message d’avertissement ou d’erreur.

    Disons que la règle est que les clients dont l’adresse se trouve en dehors des États-Unis exigent le prépaiement des factures. Écrivez la condition pour statut que le pays du contact de facturation soit égal aux États-Unis ou que le montant dû de la facture soit égal à zéro. La condition prolongerait la facture et s’écrirait comme suit :

    Copier
    ({!ARINVOICE.BILLTO.CONTACT.MAILADDRESS.MAILADDRESS.COUNTRY!} 
    == "United States") || 
    ({!ARINVOICE.TOTALDUE!} == "0")

    Si dans cette condition, l’un des pays est égal aux États-Unis ou le total dû est égal à zéro, n’est pas rempli, un avertissement ou une erreur s’affichera.

    Pour afficher un message d’avertissement à chaque fois qu’un événement d’ajout ou d’ensemble se produit, définissez la condition pour évaluer un champ obligatoire pour l’objet propriétaire comme vide. Vous pouvez savoir si un champ est requis en le recherchant dans le catalogue. Si la colonne Requis pour l’article est définie sur true, l’article est obligatoire.

    Par exemple, si vous souhaitez qu’un message d’avertissement s’affiche à chaque fois qu’une facture fournisseur est ajoutée, vous pouvez écrire la condition suivante :

    {!APBILL.WHENCREATED!}==''

    Comme une facture fournisseur a toujours un Date, cette condition sera toujours évaluée comme fausse et déclenchera un avertissement.

    Pour plus d’informations sur l’écriture des conditions, voir Rédiger des conditions.

  • Message d’erreur (obligatoire) : Le SMS qui s’affiche en cas de violation de cette règle. Le message d’erreur peut contenir des injections (voir Injections).
  • Vous pouvez utiliser Recherche de champ pour insérer des injections depuis Intacct au lieu de les ajouter manuellement.

3. Déployer votre règle

À l’étape Options de déploiement, nommez votre règle intelligente et décrivez ce qu’elle fait. Les options de déploiement de votre règle intelligente sont les suivantes :

  • ID de la règle intelligente (obligatoire) : Il s’agit du nom qui sera utilisé pour rechercher et modifier votre règle intelligente. Les caractères de l’identifiant sont limités à des caractères alphanumériques et à un trait de soulignement sans espace.
  • La description : Ajoutez une description qui aidera l’utilisateur à comprendre l’objectif de cette règle intelligente et son utilisation.
  • État : Le statut de la règle intelligente est Actif par défaut. Vous pouvez le modifier en sélectionnant Inactif dans le menu déroulant.

Exemples de règles intelligentes

Outre le cas fictif suivant, vous trouverez plusieurs exemples de règles intelligentes dans Portail des développeurs Sage Intacct (ancienne API XML) .

Un contrôleur d’une société de construction souhaite limiter la taille des transactions que certains collaborateurs peuvent saisir. Pour ce faire, ils ont configuré un type de devise champ personnalisé, USER_BILL_LIMIT, sur le fiche utilisateur afin qu’ils puissent définir les montant en devise de transaction par utilisateur. Ils configurent ensuite une règle qui compare le montant en devise de transaction actuel avec la limite du fiche utilisateur. Cette règle se crée comme suit :

  1. À l’étape « Sélectionner l’objet propriétaire », définissez les propriétés sur :

    • Objet propriétaire : Facture des CF
  2. Sélectionnez Suivant.
  3. À l’étape « Sélectionner les propriétés de la règle », définissez les propriétés sur :

    • Type : Erreur
    • Épreuves : Ajouter et définir
    • Message d’erreur : {!CURRENTUSER.LOGINID!} Il est impossible de saisir des factures fournisseurs pour un montant supérieur à {!CURRENTUSER.USER_BILL_LIMIT!}. Le total de cette facture fournisseur est {!APBILL.TOTALENTERED!}
    • État : {!CURRENTUSER.USER_BILL_LIMIT!} == '' || {!APBILL.TOTALENTERED!} <= {!CURRENTUSER.USER_BILL_LIMIT!}
  4. Sélectionnez Suivant.
  5. À l’étape « Sélectionner les options de déploiement », définissez les propriétés sur :

    • ID de lien intelligent : VALIDATE_BILL_LIMIT
    • La description : Règle qui affiche un avertissement lorsque l’utilisateur tente de saisir une facture fournisseur qui dépasse sa limite de transaction.
    • État : Actif.
  6. Sélectionnez Enregistrer.

Mettre en forme des dates dans une règle intelligente

Utilisez ce format : 'YYYY.MM.DD'

Par exemple, si vous utilisez un champ de fusion pour vérifier qu’une écriture du Grand livre est effectuée à partir du 25 décembre 2025, cela ressemble à ceci : {!GLENTRY.ENTRY_DATE!}>='2025.12.25'

Copier une règle intelligente dans une autre société

Vous pouvez copier une règle intelligente d’une société à une autre à l’aide d’un fichier de package personnalisé. Exportez la définition de la règle intelligente, incluez la définition exportée dans un fichier de package, puis importez ce fichier de package dans la société cible.

Exporter la définition d’une règle intelligente :

  1. En fonction de vos abonnements, effectuez l’une des tâches suivantes :

    • Aller à Services de personnalisation > Tous >Personnalisations d’objets > Règles intelligentes.

    • Aller à Services de plateforme > Tous >Personnalisation d’objet > Règles intelligentes.

  2. Dans la liste Règles intelligentes, sélectionnez Modifier en regard de la règle intelligente que vous souhaitez exporter.
  3. Dans le Choisir l’objet à développer Étape : sélectionnez Exporter la définition.

    La définition est exportée vers un fichier XML.

Préparer le fichier du package :

Ensuite, modifiez le package pour le rendre prêt à être importé dans la deuxième société.

  1. Ouvrez un éditeur de texte et collez le texte du wrapper XML suivant dans un nouveau fichier :

    Copier
    <?xml version='1.0' encoding='UTF-8'?>
    <customErpPackage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <packageDescription>
    <name>INSERT NAME HERE</name>
    <description>INSERT DESCRIPTION HERE</description>
    <author>AUTHOR NAME</author>
    </packageDescription>
    <smartLinks>
    <!-- Paste exported definition here -->
    </smartLinks>
    </customErpPackage>
  2. Ouvrez le fichier XML exporté dans une autre fenêtre et copiez son contenu.
  3. Collez le code copié dans le Wrapper XML, en l’écrasant <!-- Paste exported definition here -->.
  4. Remplacez les éléments suivants par vos propres informations :

    INSÉRER LE NOM ICI

    INSÉRER UNE DESCRIPTION ICI

    NOM DE L’AUTEUR

  5. Enregistrez le fichier sous un nouveau nom, par exemple, article-à-importer.xml.

    Le nouveau fichier ressemble à cet exemple :

Importez le fichier du package :

  1. Connectez-vous à la société cible.
  2. En fonction de vos abonnements, effectuez l’une des tâches suivantes :

    • Aller àServices de personnalisation > + Packages personnalisés.
    • Aller àServices de plateforme > + Forfaits.
  3. Sélectionnez l’icône Choisir un fichier , accédez à votre fichier de package et sélectionnez Ouvrir.

    Le fichier apparaît maintenant sur la page Packages.