Variables dynamiques script

Les variables dynamiques calculent leurs propres valeurs en exécutant des instructions et des expressions logiques. Une variable dynamique s’attribue le résultat d’un calcul ou d’une opération. Les types de variables dynamiques sont : chaîne dynamique, nombre dynamique et dynamique True / False (Boolean). 

La figure montre l’éclair utilisé pour désigner qu’un type variable est dynamique.

Dans utilisateur l’interface, les variables dynamiques sont désignées par un symbole d’éclair pour les différencier des autres types variables. La valeur d’une variable dynamique est le résultat d’instructions de qualité JavaScript, qui peuvent inclure des expressions Math.js sélectionnées et fonctions supplémentaires développé Genesys par. voir opérateurs et fonctions arithmétiquesle Site Web de MathJSet fonctions supplémentaires que vous pouvez utiliser dans les variables dynamiques. Une expression logique dans une variable dynamique peut évaluer l’état d’autres variables.

Chaque type variable dynamique vous permet d’intégrer une expression. Ces instructions définissent la valeur de la variable, éventuellement sur la base d’autres variables. Le résultat doit correspondre au type de variable dynamique. Par exemple, le code d’une chaîne dynamique doit correspondre à une valeur de chaîne.

Note: De nombreux exemples dans le Documentation MathJS sont écrits en JavaScript. Genesys Cloud concepteurs de script Genesys Cloud devraient abandonner les « mathématiques». préfixes du début de chaque expression. Par exemple, si l'expression MathJS documentée est math.add(1,3),, convertissez-la en add(1,3) dans votre variable dynamique. Ou, si l'exemple de code dans la documentation MathJS est quelque chose comme math.fraction(numerator, denominator), la variable numérique dynamique équivalente est la partie fraction(numerator, denominator).

Quant à l’affectation à la variable dynamique, vous ne le faites pas explicitement ; la dernière valeur évaluée est affectée à la variable dynamique. Par exemple, si vous entrez ces expressions comme une variable dynamique :

x = 5; 
y = x + 2; 
x

Les trois expressions sont évaluées dans l’ordre descendant. La valeur de la dernière expression est attribuée à la variable dynamique. Dans cet exemple, x a la valeur 5, qui est affectée à la variable dynamique.

Exemple 1 : Utiliser un nombre dynamique pour calculer les entrées d’utilisateur sur un formulaire

Dans cet exemple, une variable numérique dynamique calcule le résultat de plusieurs valeurs entrées dans un formulaire.

La figure affiche  conception  le formulaire d’entrée en mode

En conception mode, une pile verticale de utilisateur boîtes d’entrée invite à l’entrée.

La figure montre l’apparence du formulaire en mode aperçu

En mode prévisualisation ou lors de l'exécution, les valeurs saisies dans le formulaire sont calculées par des instructions dans la variable dNum_TestNum, et le résultat est affiché.

La variable dNum_TestNum contient la formule qui effectue ce calcul :

{{num_var1}} + {{num_var2}} - {{num_var3}} * {{num_var4}} / {{Num_TestNum}} + 2.1

La figure affiche la formule de calcul dans une variable de nombre dynamique.

Pour les valeurs indiquées ci-dessus, le calcul est :

10 + 10 - 4 * 2 / 2 + 2.1

Le calcul est effectué chaque fois que l’une des variables que le calcul utilise change.

Dans l'exemple illustré, le résultat enregistré dans dNum_TestNum est 18.1.

Exemple 2 : Utilisez un dynamique True / False (Boolean) pour déterminer si les variables numériques correspondent

Dans cet exemple, une variable booléenne dynamique renvoie true si les entrées numériques correspondent ou false si elles ne correspondent pas.

Figure  conception  montre la forme avec 2 valeurs numériques

En conception mode, la page affiche deux entrées numériques dont les valeurs sont stockées dans des variables numériques. Le code dans un booléen dynamique les compare pour l’égalité.

dynamic_boolean_preview

En mode de prévisualisation ou au moment de l’exécution, les valeurs entrées dans le formulaire sont comparées pour égalité.

La figure montre comment éditer la variable

La formule dans dBool_Basic est la suivante :

{{num_dBoolTest}} == {{num_dBoolTest2}}

Pour les valeurs indiquées, la valeur de dBool_Basic est false puisque 2 n'est pas égal à 1.

Le résultat est calculé chaque variable d’entrée fois que la valeur de l’un ou l’autre change.

Exemple 3 : Manipulations de cordes

Dans les deux exemples suivants, les variables dynamiques analysent et réécrivent les données saisies par l'utilisateur. Une expression dans la variable dStr_Exp réécrit le texte tapé par l'utilisateur en "This is fun". Une expression dans dStr_Test inverse la casse lorsqu'une case à cocher change d'état.

La figure montre l’apparence  conception  des composants et des variables en mode.

Le texte saisi par l'utilisateur est stocké dans str_overwrite. En dessous se trouve la variable dynamique dStr_Exp qui exécute cette expression :

slice("This is fun.", 0 ,length({{str_overwrite}}))

En mode prévisualisation ou en cours d'exécution, tout texte tapé est reformulé. La chaîne est réécrite lorsque la valeur de str_overwrite change.

La figure montre l’apparence de la page sur ex exécuter

La case à cocher Swap Lower and Upper permet d'alterner le cas de dStr_Test. Sa formule est la suivante :

ifElse({{bool_swapLowerUpper}} == false, lower(slice({{str_HELLO worlds}}, 0, length({{str_HELLO worlds}})-6)) + " " + upper(slice({{str_HELLO worlds}}, length({{str_HELLO worlds}})-6)), upper(slice({{str_HELLO worlds}}, 0, length({{str_HELLO worlds}})-6)) + " " + lower(slice({{str_HELLO worlds}}, length({{str_HELLO worlds}})-6)))

Cochez la case pour inverser la casse de la chaîne.

Exemple 4 : Utiliser une expression régulière pour valider des chaînes de caractères et des chiffres

Dans cet exemple, une variable booléenne dynamique renvoie true si la chaîne saisie correspond à l'expression rationnelle fournie :

Scripteur Variable True/False

La regex utilisée ici est ^\\d{1,4}$: - la regex de base est \d{1,4} (entre un et quatre chiffres) : la barre oblique est doublée (échappée) parce qu'il s'agit d'une chaîne JavaScript, et elle est enveloppée dans ^  et $ pour appliquer le motif aux chaînes entières : par défaut, les correspondances partielles sont autorisées, de sorte que sans cette enveloppe, 12345 passerait à cause de la correspondance partielle "1234".

Le texte correspond à la Regex

Le texte correspond à la Regex : vrai

Le texte correspond à la Regex : faux

Pour plus de détails sur les expressions régulières et leur débogage, voir Regexr.