Accéder au contenu principal Passer au contenu complémentaire

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.

Note ConseilVous pouvez également manipuler les variables Qlik Sense à partir de la vue d'ensemble des variables, lors de l'édition d'une feuille. Utilisation des variables dans les expressions

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 :

set variablename = string

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.

Note InformationsIl est déconseillé d'utiliser le même nom pour un champ et une fonction dans Qlik Sense

 

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’.

Suppression d'une variable

Si vous supprimez une variable du script et rechargez les données, la variable est conservée dans l'application. Si vous souhaitez retirer complètement la variable de l'application, vous devez également la supprimer de la boîte de dialogue Variables.

Pour plus d'informations, voir 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.

IF $(ScriptErrorCount) >= 1 THEN
LOAD '$(ScriptErrorList)' AS Error AutoGenerate 1; END IF

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 :

LOAD * INLINE [ Dim, Sales A, 150 A, 200 B, 240 B, 230 C, 410 C, 330 ];

Définissons deux variables :

Let vSales = 'Sum(Sales)' ;
Let vSales2 = '=Sum(Sales)' ;

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 :

Résultats
Dim$(vSales)$(vSales2)
A3501560
B4701560
C7401560

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 :

En savoir plus

 

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !