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.

Remarque :  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), convertir cela en ajouter(1,3) dans votre variable dynamique. Ou, si le code d’exemple dans la documentation MathJS est quelque chose comme math.fraction (numateur, dénominateur), la variable de nombre dynamique équivalente est la fraction (numateur, dénominateur) partie.

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 de prévisualisation ou au moment de l’exécution, les valeurs entrées dans le formulaire sont calculées par des instructions dans dNum_TestNum variable, et le résultat est affiché.

le dNum-TestNum (en anglais seulement) variable 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 présenté, le résultat stocké 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 vrai si les entrées numériques correspondent ou faux 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 en dBool_Basic est :

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

Pour les valeurs affichées, la valeur de dBool_Basic est faux 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 de chaîne dynamique analysent et réécrivent l’entrée utilisateur. Une expression dans le dStr-Exp (en anglais seulement) réécriture variable du texte utilisateur tapé par le "C’est amusant." Une expression dans dStr-Test (en anglais seulement) inverse le cas lorsqu’une case à cocher change d’état.

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

La saisie de texte par l’utilisateur est enregistrée dans str_overwrite. Ci-dessous qui est variable dynamique dStr-Exp (en anglais seulement) exécutant cette expression :

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

En mode aperçu ou au moment de l'exécution, tout texte tapé est reformulé. La chaîne est réécrite lorsque la valeur de str_overwrite changements.

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

le Basculer Bas et Haut La case à cocher bascule le cas de dStr_Test. Sa formule est :

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 en entrée correspond à la regex fournie :

Scripteur Variable True/False

L'expression utilisée ici est ^\\\d{1,4}$ : - la regex de base est \d{1,4} (entre un et quatre chiffres) : le slash est doublé (échappé) car il s'agit d'une chaîne JavaScript, et il est enveloppé dans ^  et $ pour appliquer le motif à l'ensemble des chaînes : par défaut, les correspondances partielles sont autorisées, donc sans cet habillage, 12345 serait accepté en raison 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.