Trabajar con variables en el editor de carga de datos
Una variable en Qlik Sense es un contenedor que almacena un valor estático o un cálculo, por ejemplo un valor numérico o alfanumérico. Cuando utilice la variable en la app, cualquier cambio efectuado en la variable se aplica en todos los lugares en que se use la variable. Puede definir variables en el panel de variables o en el script, usando el Editor de carga de datos. Establece el valor de una variable usando las sentencias Let o Set en el script de carga de datos.
General
Si el primer carácter del valor de una variable es un signo igual ' = ', Qlik Sense tratará de evaluar el valor como una fórmula (o expresión de Qlik Sense) y a continuación mostrará o devolverá el resultado en lugar del texto mismo de la fórmula.
Cuando se utiliza una variable, ésta es sustituida por su valor. Las variables se pueden utilizar en el script para expansión de signo dólar y en varias sentencias de control. Esto puede resultar de gran utilidad cuando la misma cadena se repite muchas veces en el script, por ejemplo, una ruta.
Hay algunas variables de sistema especiales que Qlik Sense fija al comienzo de la ejecución de script, independientemente de cuáles fueran sus valores previos.
Definir una variable
Las variables brindan la capacidad de almacenar valores estáticos o el resultado de un cálculo. Al definir una variable, utilice la siguiente sintaxis:
o bien
let variable = expression
La sentencia Set se utiliza para la asignación de cadenas. Asigna el texto a la derecha del signo igual a la variable. La sentencia Let evalúa una expresión a la derecha del signo igual en el tiempo de ejecución del script y asigna el resultado de la expresión a la variable.
Las variables son sensibles a mayúsculas.
Ejemplos:
set x = 3 + 4; // la variable obtendrá la cadena "3 + 4" como valor.
let x = 3 + 4; // devuelve 7 como valor.
set x = Today(); // devuelve "Today()" como valor.
let x = Today(); // devuelve la fecha de hoy como valor, por ejemplo, "27/9/2021".
Eliminar una variable
Si elimina una variable del script y vuelve a cargar los datos, la variable permanecerá en la app. Si desea eliminar completamente la variable de la app, también debe eliminarla del diálogo de variables.
Para más información, vea Eliminar una variable.
Cargar un valor de variable como un valor de campo
Si desea cargar un valor de una variable como un valor de campo en una sentencia LOAD y el resultado de la expansión dólar es de texto en vez de numérico o una expresión, entonces necesita encerrar la variable expandida entre comillas simples.
Ejemplo:
El ejemplo a continuación carga la variable de sistema que contiene las lista de errores de script en una tabla. Puede observar que la expansión de ScriptErrorCount en la cláusula If no requiere comillas, mientras que la expansión de ScriptErrorList sí requiere comillas.
Cálculo de variables
Hay varias maneras de utilizar variables con valores calculados en Qlik Sense y el resultado depende de cómo se defina y de cómo se denomine en una expresión.
En este ejemplo, cargamos algunos datos inline:
Vamos a definir dos variables:
En la segunda variable, añadimos un signo igual antes de la expresión. De este modo la variable se calculará antes de que se expanda y se evalúe la expresión.
Si utiliza la variable vSales tal como está, por ejemplo, en una medida, el resultado será la cadena Sum(Sales), es decir, no se realizará ningún cálculo.
Si agrega una expansión de signo de dólar y llama a $(vSales) en la expresión, la variable se expandirá y se mostrará la suma de Sales.
Por último, si llama a $(vSales2), la variable se calculará antes de expandirse. Esto significa que el resultado mostrado será la suma total de Sales. La diferencia entre usar =$(vSales) y =$(vSales2) como expresiones de medida se ve en este cuadro que muestra los resultados:
Dim | $(vSales) | $(vSales2) |
---|---|---|
A | 350 | 1560 |
B | 470 | 1560 |
C | 740 | 1560 |
Como se puede observar, $(vSales) da como resultado la suma parcial de un valor de dimensión, mientras que $(vSales2) da como resultado la suma total.
Están disponibles las siguientes variables de script:
- Variables de error
- Variables de interpretación numérica
- Variables de sistema
- Variables de manejo de valores