Fonctions techniques

Rechercher et contrôler des postes dans une Table de référence externe ou un référentiel externe

Définir des conditions dans des garnissages

Extraire des parties d'un champ d'un <Business-Document>

Assigner un statut d'erreur à un CRE en erreur

Mettre à nul des champs cibles

À propos des Fonctions techniques

Vous utilisez des Fonctions et Instructions techniques pour effectuer les opérations suivantes :

  • rechercher et contrôler des entrées dans une Table de référence externe ou un référentiel externe
  • mettre des conditions dans des expressions de garnissage
  • extraire des parties d'un champ d'un <Business-Document>
  • assigner un statut à un CRE en erreur
  • mettre à nul des champs cibles

La syntaxe à employer pour la fonction ou l'instruction dépend du type d'opération.

$CHECK

Description

$CHECK active un appel externe pour contrôler une valeur dans un référentiel externe à AccountingIntegrator Enabler.

  • les exits et les appels externes du Rule Engine AccountingIntegrator Enabler

Syntaxe

$CHECK("point d'entrée";clé_table)

Les parenthèses, les guillemets et le caractère ";" sont obligatoires.

Valeur de retour

Lorsque vous créez un appel externe, vous pouvez utiliser un code retour ainsi qu'un message d'erreur associé lors de chaque appel.

Si un contrôle échoue (le code retour est différent de "0"), le CRE traité est en erreur et le Rule Engine  AccountingIntegrator Enabler associe l'avis de rejet au message d'erreur personnalisé que vous avez défini.

Si le contrôle réussit, la valeur retournée par le Rule Engine AccountingIntegrator Enabler est celle de la clé d'accès à la Table.

Le champ cible doit être compatible avec la longueur et le type de données du paramètre clé de la table .

Paramètre

point d'entrée

C'est le nom du point d'entrée dans l'appel externe et il est défini en utilisant deux caractères alphanumériques.

Le point d'entrée que vous utilisez détermine le type de fonction, comme le résume le tableau suivant :

 

Point d'entrée

Correspond

79-99

paramètres réservés pour AXWAY

77,78

modules pré-programmés pour accéder à des données stockées en base de données Oracle. [DÉTAILS : Contrôler des données en base de données Oracle].

 

clé de table

C'est la clé de la table utilisée par l'appel externe. Il s'agit d'une constante que vous pouvez prendre de n'importe quelle expression qui renvoie une valeur ayant un type de données compatible avec le type Alphanumérique.

La longueur maximale de la clé de la Table est 256 caractères, y compris les blancs et les caractères de ponctuation.

Exemple

[DÉTAILS : Exemples de la fonction $CHECK pour base de données Oracle]

$ERR

Description

$ERR met le CRE courant en erreur en lui associant un message d'erreur personnalisé.

Utilisez cette fonction dans un garnissage ou une condition de génération, pour mettre un CRE en anomalie, si certaines conditions rencontrées lors de l'exécution l'exigent.

Syntaxe

$ERR(expression)

Les parenthèses sont obligatoires.

Valeur de retour

Alphanumérique

Le résultat de l'expression est utilisé pour définir le message d'erreur associé au CRE en anomalie.
La longueur du message d'erreur ne peut excéder cinquante caractères. Si cette limite est dépassée, le message d'erreur est tronqué.

Paramètres

expression
Entrez une expression qui renvoie une valeur alphanumérique.

Exemples

Champ cible

Garnissage

REFOUTEV1

IF REFCRE3 = $ACCTAB (TABLEREF; ZONEINPEV1) THEN REFCRE3&ZONEINPEV1 ELSE $ERR ("REFERENCE INEXISTANTE : "&REFINPEV3)

Si la valeur de REFINPEV3 n'est pas référencée dans la Table TABLEREF, le CRE est en erreur et le message "REFERENCE INEXISTANTE :" concaténé avec la valeur de REFINPEV3 est émis.

Ce message d'erreur est stocké dans le champ cible REFOUTEV1.

FIELDOUTEV2

IF ((NB_VERIF > NB_REF) AND (MT_VERIF <> 0))THEN (NB_VERIF * MT_VERIF)ELSE $ERR (REFCRE2&$ACCTAB (LIBERR; REFCRE2))

Si la valeur du champ NB_VERIF est plus grande que la valeur stockée dans NB_REF, et que la valeur du champ MT_VERIF ne vaut pas zéro, alors multiplier le contenu de NB_VERIF et de MT_VERIF. Sinon, enregistrer un message d'erreur dans le champ cible FIELDOUTEV2. Ce message d'erreur est la concaténation des valeurs des champs REFINPEV1 et de la clé REFINPEV2 dans la Table LIBERR.

 

CHAMPCRE

Description

L'instruction CHAMPCRE renvoie un sous-ensemble de caractères d'un champ appartenant à un enregistrement d'un CRE, et commençant à une position que vous déterminez.

Syntaxe

CHAMPCRE("pppplllt")

Les parenthèses et les guillemets sont obligatoires.

Valeur de retour

<String>

Le type de données du champ cible doit être compatible avec t et sa longueur avec lll.

Paramètres

CHAMPCRE est le nom du champ du CRE dont on veut extraire une partie.

Remarque : CHAMPCRE est à la fois le nom de l'instruction et le paramètre.

pppplllt spécifie la position, la longueur et le type de données de la partie du champ du CRE que vous voulez extraire. La valeur comporte :

pppp

position dans le champ à partir de laquelle la valeur doit être extraite (quatre caractères numériques). Le premier caractère est en position 1

lll

longueur de la partie du champ (trois caractères numériques) à extraire

t

type de données de la partie extraite du champ (A, N, D)

 

Exemples

L'exemple suivant fait l'extraction d'un ensemble de cinq caractères numériques, à partir du premier caractère de la chaîne ADR_VILLE. Ce sous-ensemble de caractères est écrit dans le champ CODEPOST pour représenter le code postal.

Champ cible

Garnissage

CODEPOST

ADR_VILLE ("0001005N")

 

$NULL

La fonction $NULL n'effectue aucun traitement. Elle est utilisée dans des phrases de garnissage imbriquées, lorsqu'aucune action ne doit être effectuée, mais qu'une instruction est néanmoins nécessaire pour équilibrer le nombre d' instructions IF ou ELSE dans la phrase.

Description

$NULL remplit le champ cible avec des espaces blancs, indépendamment du type de données associé à ce champ.

Syntaxe

$NULL

Valeur de retour

Espaces blancs.

Paramètres

Aucune

Exemple

Dans l'exemple suivant, la valeur du champ REFOUTEV1 du <Business-Document> dépend du résultat de l'instruction IF-THEN-ELSE. Le contenu de REFOUTEV1 est le suivant :

  • la concaténation des valeurs des champs REFINPEV3 et REFER_RATE du <Business-Document>, si REFINPEV3 correspond à la valeur de la clé ZONEINPEV1 dans la Table TABLEREF et est supérieur à la valeur de la clé REFRATE de la Table TBLRATE.
  • sinon, le contenu est mis à NULL, si les conditions précédentes ne sont pas remplies.

Champ cible

Garnissage

REFOUTEV1

IF REFINPEV3 = $ACCTAB (TABLEREF; ZONEINPEV1)

    THEN IF REFINPEV3 >$ACCTAB (TBLRATE; REFRATE)

      THEN REFINPEV3 & REFER_RATE

   ELSE $NULL

ELSE REFINPEV3 & ZONEINPEV1.

 

IF-THEN-ELSE

Utilisez l'instruction If-Then-Else du LMD pour spécifier les conditions de génération des objets suivants :

Description

L'instruction If-Then-Else spécifie des conditions qui doivent être remplies pour que le Rule Engine AccountingIntegrator Enabler exécute les instructions de traitement.

Syntaxe

If condition Then expression1

[Else expression2]

Paramètres

condition

est une expression du LMD qui utilise un champ d'un <Business-Document>, ainsi que des opérateurs logiques et de comparaison.
Si une conditionest une expression du LMD qui renvoie la valeur null, alors le Rule Engine AccountingIntegrator Enabler génère une erreur.

expression1

comprend une ou plusieurs expressions que le Rule Engine AccountingIntegrator Enabler exécute lorsque la condition renvoie true.

Le nombre de then doit être le même que le nombres de if. Vous pouvez utiliser la fonction $NULL pour créer des conditions <then> vides, si cela s'avère nécessaire.

expression2

est optionnelle et comporte une ou plusieurs expressions que le Rule Engine AccountingIntegrator Enabler exécute lorsque la condition renvoie false.
Le nombre de conditions else doit être :

  • le même que le nombre de conditions if
  • le nombre de conditions if moins 1. Dans ce cas, le else manquant correspond au cas dans lequel l'instruction if-then renvoie la valeur null Le Rule Engine AccountingIntegrator Enabler ne fait aucune vérification de condition et insère des blancs dans le champ cible, indépendamment du type de données définissant ce champ.

Lier

Vous pouvez combiner plusieurs instructions if - then en les reliant.

Conditions liées

Vous pouvez lier les conditions suivantes :

if condition1 then expression1 else if condition2 then expression2 else expression3

Les conditions sont simulées l'une à la suite de l'autre :

  • expression1 est exécuté si condition1 est Vrai
  • condition2 est simulée seulement si condition1 est Faux
  • expression2 est exécutée si condition1 est Faux et condition2 est Vrai
  • expression3 est exécutée si condition1 et condition2 sont Faux

 

$SEARCH

Description

$SEARCH active un appel externe pour rechercher une valeur dans une table de référence externe.

Syntaxe

$SEARCH ("lllt";"entry point";table key)

Les parenthèses, les guillemets et le caractère ";" sont obligatoires.

Valeur de retour

Lorsque vous créez un appel externe, vous pouvez utiliser un code retour ainsi qu'un message d'erreur associé lors de chaque appel.

Si un contrôle échoue (le code retour est différent de "0"), le CRE traité est en erreur et le Rule Engine  AccountingIntegrator Enabler associe l'avis de rejet au message d'erreur personnalisé que vous avez défini.

Le champ cible doit être compatible avec le paramètre lllt.

Paramètre

lllt

  • lllt représente la longueur de la valeur renvoyée par l'appel (la longueur maximum dépend du type de données)
  • t représente le type de données de la valeur renvoyée par l'appel.

point d'entrée

C'est le nom du point d'entrée dans l'appel externe et il est défini en utilisant deux caractères alphanumériques.

Le point d'entrée que vous utilisez détermine le type de fonction, comme le résume le tableau suivant :

 

Point d'entrée

Correspond

79-99

paramètres réservés pour AXWAY

75,76

modules pré-programmés pour accéder à des données stockées en base de données Oracle.

[DÉTAILS : Fonctions d'accès à la base de données Oracle]

71

un module pré-programmé pour activer les fonctions de formatage de champs [DÉTAILS : Fonctions de formatage]

70

un module pré-programmé pour accéder aux fonctions de conversion d'EuroConverter

[DÉTAILS : Fonctions de Conversion]

 

clé de table

Utilisez le paramètre clé de table comme argument à fournir à l'appel externe. C'est une expression qui renvoie une valeur dont le type de données est compatible avec Alphanumérique.

La longueur maximale de la clé de table est 256 caractères y compris les blancs et les caractères de ponctuation.

Exemples

Reportez-vous au lien adéquat relatif au point d'entrée de chaque fonction $SEARCH :

Retour

Related Links