Exemple de règles avancées XML : Convertir une valeur XML en une valeur comprise par Kofax ReadSoft Entrance

Cet exemple est tiré de l'ensemble des règles avancées qui est fourni avec les normes de factures XML de Svefaktura.

Différentes normes de factures XML peuvent contenir des valeurs différentes pour indiquer si la facture est une facture de débit ou de crédit (par exemple, E2B, OIOUBL et Svefaktura contiennent toutes la valeur « 380 » en lien avec le champ InvoiceType pour indiquer que la facture en question est une facture de débit). Si une autre valeur est trouvée à l'emplacement prévu, la facture est une facture de crédit. Kofax ReadSoft Entrance, d'autre part, recherche 0 pour les factures de débit et 1 pour les factures de crédit.

Pour créer une règle avancée qui convertit une valeur XML en une valeur que Kofax ReadSoft Entrance comprend :

  1. Sélectionnez le champ InvoiceType dans la catégorie Champs de l'onglet Champs du Mappeur XML (du côté droit de la fenêtre).
    • Cliquez sur le bouton à la droite de la valeur :

      si aucune règle n'a été définie ou

      s'il existe déjà une règle pour le champ.

  2. Cliquez sur le bouton Sélectionner à droite de la section de sélection de nœud XML des Règles avancées vers le haut de l'onglet Règles de mappage de champ qui s'affiche à gauche de la fenêtre.
  3. Dans la case Le nœud XML sélectionné pour travailler à droite du bouton, développez x:Invoice.
  4. Recherchez et sélectionnez le sous-nœud qui contient la valeur qui décrit le type de facture. Dans ce cas, il est x:Invoice\x:InvoiceTypeCode.
  5. Dans la section Paramètres de la nouvelle condition de la boîte de dialogue, sélectionnez Basé sur la valeur.
  6. Sélectionnez Egal dans la liste déroulante sous Comparaison de valeur.
  7. Sélectionnez l'attribut approprié dans la liste déroulante sous Valeur à comparer avec (380 dans ce cas).
  8. Cliquez sur Ajouter. La nouvelle condition est ajoutée à la case Conditions à utiliser pour travailler :

    Value(Node[Invoice/InvoiceTypeCode])=="380"

  9. Cliquez sur la condition que vous venez d'ajouter.
  10. Dans les Paramètres indiquant comment le champ de valeur de la facture est défini, sélectionnez Si la condition est vraie et Utiliser la valeur ci-dessous.
  11. Saisissez 0 dans la zone de texte.
  12. Cliquez sur Ajouter. Le code équivalent est ajoutée aux Règles appliquées pour mapper ce champ.
    if((Value(Node[/Invoice/InvoiceTypeCode])=="380")==true)
    {
         Field.FieldValue = "0":
         return:
    }
  13. Sélectionnez si la condition est fausse et Utiliser la valeur ci-dessous.
  14. Saisissez 1 dans la zone de texte.
  15. Cliquez sur Ajouter. Le code équivalent est ajoutée aux Règles appliquées pour mapper ce champ.
    if((Value(Node[/Invoice/InvoiceTypeCode])=="380")==false)
    {

    Field.FieldValue = "1":

    return:
    }
  16. Sélectionnez Utiliser les règles avancées.

Cliquez sur Extraire et examinez l'image pour vérifier les résultats. Si vous avez besoin de modifier une condition, il suffit de cliquer dessus dans les Règles appliquées pour mapper ce champ, puis de cliquer sur Suppr. pour la supprimer, de faire les modifications nécessaires pour corriger la règle, et de recliquer sur Ajouter pour ajouter la nouvelle règle. Si vous devez modifier une condition, le processus est identique (et si une règle est basée sur celle-ci, la règle est également supprimée si vous supprimez la condition).

Déterminez si les modifications doivent s'appliquer à tous les documents ou uniquement à ceux de la définition de facture XML actuelle. Cliquez sur Enregistrer la définition XML pour enregistrer la modification pour la définition de facture XML actuelle uniquement (c'est-à-dire l'expéditeur actuel). Cliquez sur Enregistrer le profil XML si vous souhaitez que la règle s'applique à toutes les factures XML qui correspondent au profil de facture XML quelle que soit la définition de facture XML.

Autres exemples de règles XML avancées :

Corriger un nom de champ mal orthographié en lien avec les données de référence

Formater une valeur XML extraite avec XSL

Modifier une valeur de champ XML extraite avec XSL

Supprimer les traits d'union (-) d'une valeur extraite

Sélectionner le nœud X sur la base du nœud Y (ou de l'attribut a)

Sélectionner un nœud particulier lorsque plus d'un nœud correspond après avoir utilisé une règle standard

Sélectionner le nœud X s'il existe et le nœud Y s'il n'existe pas

Préciser une valeur constante pour un champ

Récapituler les données des postes budgétaires sous forme de remarque dans des factures récapitulatives