Expressions et fonctions

Une expression vous permet d'effectuer les opérations suivantes dans le champ Valeur/Expression :

  • Exécution d'une équation mathématique simple.

  • Utilisation d'un paramètre CURVAL pour indiquer la valeur d'une opération de compte logique. Le paramètre CURVAL peut être utilisé au sein d'expressions, de la même manière que dans les fonctions logiques, à la seule différence qu'avec les expressions, CURVAL doit être entouré de barres verticales. Par exemple, l'expression CURVAL inclut la spécification d'un compte à l'aide de la notation |Compte| et la spécification d'une valeur à l'aide des détails de PDV d'entité, de catégorie, de période et de compte.

Les fonctions permettent l'utilisation d'une logique simple avec if/else à l'aide de la syntaxe Jython. Les commandes Jython peuvent être utilisées dans une fonction et peuvent être plus complexes qu'une expression.

Exp

Utilisez les opérateurs d'expression pour exécuter des expressions logiques personnalisées définies dans le champ Valeur/Expression. Les expressions logiques, qui ne peuvent pas utiliser de variables ou d'instructions If, sont plus simples que les fonctions logiques. A l'exception du paramètre CURVAL, les expressions n'ont pas de paramètres intégrés. Vous n'avez pas besoin d'affecter de valeur à RESULT pour les expressions.

Les expressions s'exécutent plus rapidement que les fonctions logiques. Vous pouvez utiliser la fonction de recherche de gestion des données au sein d'expressions, de la même manière que pour les fonctions logiques. Pour écrire une expression personnalisée, cliquez deux fois sur le champ Valeur/Exp pour ouvrir l'éditeur d'expression.

|CURVAL| + |810| + |238|

La fonction ci-dessus fait appel à la fonction de recherche de gestion des données pour ajouter deux comptes source à la valeur du compte logique. Notez que le paramètre CURVAL peut être utilisé au sein d'expressions, de la même manière que pour les fonctions logiques, à la seule différence que, pour les expressions, le paramètre CURVAL doit être entouré de barres verticales.

(|CURVAL| + |000,10,09/30/01,810|) * 100

La fonction ci-dessus utilise la fonction de recherche de gestion des données pour ajouter un compte source (810), ainsi qu'un compte source issu d'un centre indiqué, une catégorie de gestion des données et une période de gestion des données à la valeur du compte logique, puis multiplie la somme de ces valeurs par 100.

Fonction

Utilisez les opérateurs de fonction pour exécuter une fonction logique personnalisée, définie dans le champ Valeur/Expression.

Pour écrire une fonction, sélectionnez Fonction dans la liste déroulante Opérateur dans la ligne Eléments logiques, puis cliquez sur l'icône de modification pour ouvrir la fenêtre de modification. Les fonctions logiques sont normalement utilisées pour le mapping conditionnel et d'autres opérations complexes impliquant plusieurs comptes source. Les fonctions logiques permettent l'utilisation de commandes Jython incluant des variables, des instructions if/elif/else, des fonctions numériques et d'autres constructions Jython.

La fonction logique permet l'utilisation de paramètres de fonction prédéfinis, et requiert également que vous affectiez une valeur à la variable RESULT de sorte qu'une valeur puisse être mise à jour pour le compte logique créé. Les paramètres de fonction suivants peuvent être utilisés dans une fonction logique et ils n'exigent pas l'utilisation de la notation "|" :

Tableau 4-22 Opérateurs de fonction et leur description

Opérateur de fonction Description
CURVAL Valeur source de l'opération de compte logique
StrLocation Nom de l'emplacement actif
StrCenter Entité de compte logique
StrCatKey Clé de catégorie active, pas son nom. Vous devez rechercher la clé de catégorie dans la base de données pour que ce paramètre puisse être utilisé.
StrPerKey Période active
Entité, Catégorie, Période, Compte| La notation de recherche peut être utilisée dans une fonction logique. Il s'agit de la même notation que celle indiquée dans l'expression logique.
Ignorer Si "Ignorer" est affecté au mot-clé RESULT, le compte logique n'est pas créé.

Vous pouvez définir les paramètres de fonction en majuscules, en minuscules ou combiner les deux. Cependant, le mot-clé RESULT doit être en lettres majuscules.

Affectation de valeurs renvoyées de fonction

Le résultat d'une fonction logique doit être associé au mot-clé RESULT. Si aucune valeur renvoyée n'est associée au mot-clé RESULT, le moteur de logique définit automatiquement la valeur du résultat sur zéro. En conséquence de quoi, le calcul n'est pas pris en compte et le compte logique n'est pas créé.

La fonction suivante affecte le résultat du calcul du compte logique (à l'aide du paramètre CURVAL) au compte logique (RESULT) lorsque le calcul du compte logique renvoie une valeur supérieure à zéro. Si la première condition n'est pas remplie, le compte logique n'est pas créé à cause du mot-clé "Ignorer".

if CURVAL > 0:
   RESULT = CURVAL
else:
    RESULT = "Skip"

Remarque :

Vous devez utiliser la mise en retrait et la notation Jython pour la fonction logique.

La fonction suivante affecte uniquement le résultat du calcul du compte logique au compte logique lorsque "10" est la clé de catégorie de gestion des données active.

if StrCatKey == "10":
    RESULT = CURVAL
else:
    RESULT="Skip"

Cette fonction affecte le résultat du calcul du compte logique au compte logique uniquement lorsque le critère Entité de compte est "000".

if StrCenter == "000":
    RESULT = CURVAL * 100
else:
    RESULT="Skip"

Cette fonction utilise la fonction de recherche de gestion des données pour ajouter un compte source (810) à la valeur du compte logique si la période de gestion des données en cours est "Dec 2013".

if StrPerKey == "12/31/2013":
    RESULT = CURVAL + |810|
else:
    RESULT="Skip"

Cette fonction utilise la fonction de recherche de gestion des données pour ajouter un autre compte source à partir d'une entité différente, une catégorie de gestion des données et une période de gestion des données à la valeur du compte logique lorsque l'emplacement actif est "Texas".

If StrLocation == "Texas":
    RESULT = CURVAL + |000,10,09/30/13,810|
else:
    RESULT="Skip"