Utilisation des variables dans l'éditeur de chargement de données
Dans Qlik Sense, une variable désigne un conteneur qui stocke un calcul ou une valeur statique, par exemple une valeur numérique ou alphanumérique. Lorsque vous utilisez la variable dans l'application, les modifications que vous lui apportez sont répercutées dans toutes ses occurrences. Vous pouvez définir des variables à partir de la vue d'ensemble des variables ou dans le script à l'aide de l'éditeur de chargement de données. Pour spécifier la valeur d'une variable, utilisez des instructions Let ou Set dans le script de chargement de données.
Vue d'ensemble
Si le premier caractère d'une valeur de variable est un signe égal (=), Qlik Sense tente d'évaluer la valeur comme une formule (expression Qlik Sense), puis affiche ou renvoie le résultat plutôt que le texte de la formule proprement dit.
Lorsqu'une variable est utilisée, elle est remplacée par sa valeur. Il est possible d'utiliser des variables dans le script pour les expansions $ et dans plusieurs instructions de contrôle. Cette technique s'avère très pratique lorsque la même chaîne (un chemin d'accès, par exemple) est répétée à de nombreuses reprises dans le script.
Certaines variables système particulières sont définies par Qlik Sense au début de l'exécution du script, quelle que soit leur valeur précédente.
Définition d'une variable
Les variables permettent de stocker des valeurs statiques ou le résultat d'un calcul. Lors de la définition d'une variable, utilisez la syntaxe suivante :
ou
let variable = expression
L’instruction Set est utilisée pour l'affectation de chaîne. Elle affecte le texte à droit du signe égal à la variable. L'instruction Let évalue une expression à droite du signe égal lors de l'exécution du script et affecte le résultat de l'expression à la variable.
Les variables sont sensibles à la casse.
La variable set x = 3 + 4; // recevra comme valeur la chaîne '3 + 4'.
let x = 3 + 4; // renvoie la valeur 7.
set x = Today(); // renvoie la valeur 'Today()'.
let x = Today(); // renvoie la valeur de la date d'aujourd'hui, par exemple, ‘9/27/2021’.
Nommage de vos variables
Il est vivement conseillé d'utiliser une convention de nommage standardisée pour les variables que vous créez dans une application. Par exemple, vous pouvez faire en sorte que tous les noms de vos variables commencent par v. Exemple : vTexteUtilisateur. Cela permet de s'assurer que les variables sont rapidement reconnues comme telles et qu'elles se distinguent des mesures, des champs et des fonctions.
Options supplémentaires lors de la définition de variables
Cette section répertorie les fonctionnalités supplémentaires que vous pouvez utiliser pour améliorer la puissance des variables que vous définissez dans le script de chargement.
Application de contraintes à des valeurs de variable
Vous pouvez utiliser des instructions Constrain pour restreindre les variables de script à des définitions spécifiques, empêchant ainsi le chargement de valeurs indésirables. Les instructions Constrain peuvent être utilisées pour l'assurance qualité, l'amélioration de la collaboration lors du codéveloppement de scripts et le renforcement de la sécurité des applications analytiques. Dans Qlik Cloud, les instructions Constrain peuvent également être utilisées en combinaison avec l'API de développeur pour des mises à jour de variable dynamiques lors de l'actualisation.
Pour plus d'informations, consultez Constrain.
Définition de variables de script uniquement
Vous pouvez utiliser la variable système ScriptOnlyVariables pour définir des variables de script uniquement. Une variable de script uniquement est disponible uniquement dans le script de chargement et n'est pas exposée, par exemple, en mode feuille dans l'application.
Pour plus d'informations, consultez ScriptOnlyVariables.
Abandon de variables
Vous pouvez utiliser une instruction Drop variable pour abandonner des variables du script. L'abandon d'une variable est utile lorsque vous souhaitez utiliser une variable uniquement pour effectuer des calculs ou définir des champs dans le contexte du modèle de données.
Pour plus d'informations, consultez Drop variable.
Suppression d'une variable
Si vous retirez une variable du script et si vous actualisez les données, la variable est conservée dans l'application. Si vous souhaitez retirer complètement la variable de l'application, vous pouvez également effectuer l'une des opérations suivantes :
Supprimer la variable de la boîte de dialogue Variables.
Supprimer la variable du script à l'aide d'une Drop variable instruction.
Définir les variables qui ne sont pas nécessaires dans la boîte de dialogue Variables comme variables de script uniquement à l'aide de la variable système ScriptOnlyVariables dans le script.
Pour plus d'informations, consultez Suppression d'une variable.
Chargement d'une valeur de variable comme valeur de champ
Si vous souhaitez charger une valeur de variable comme valeur de champ dans une instruction LOAD et si le résultat de l'expansion de dollar est un texte au lieu d'une valeur numérique ou d'une expression, vous devez placer la variable étendue entre guillemets simples.
Cet exemple illustre le chargement de la variable système contenant la liste d'erreurs de script dans une table. Vous pouvez noter que l'expansion de ScriptErrorCount dans la clause If ne nécessite pas de guillemets, contrairement à celle de ScriptErrorList.
Calcul des variables
Qlik Sense offre différentes façons d'utiliser des variables dont les valeurs sont calculées. Le résultat dépend de la façon dont elles sont définies et appelées dans une expression.
Dans cet exemple, nous chargeons des données intégrées :
Définissons deux variables :
Dans la seconde variable, un signe égal est ajouté avant l'expression. Ceci entraîne le calcul de la variable avant qu'elle ne soit étendue et l'expression évaluée.
Si vous utilisez la variable vSales telle quelle, par exemple dans une mesure, le résultat correspond à la chaîne Sum(Sales), c'est-à-dire qu'aucun calcul n'est réalisé.
Si vous ajoutez une expansion $ et appelez $(vSales) dans l'expression, la variable est étendue et la somme des ventes (Sales) est affichée.
Enfin, si vous appelez $(vSales2), la variable est calculée avant d'être étendue. En d'autres termes, le résultat affiché correspond à la somme totale des ventes (Sales). Le graphique suivant illustrant les résultats montre la différence entre l'utilisation de =$(vSales) et de =$(vSales2) comme expressions de mesure :
| Dim | $(vSales) | $(vSales2) |
|---|---|---|
| A | 350 | 1560 |
| B | 470 | 1560 |
| C | 740 | 1560 |
Comme vous pouvez le constater, $(vSales) aboutit à la somme partielle d'une valeur de dimension tandis que $(vSales2) donne la somme totale.
Les variables de script suivantes sont disponibles :
- Variables d'erreur
- Variables d'interprétation des nombres
- Variables système
- Variables de manipulation des valeurs