Trabalhando com variáveis no editor de carregamento de dados
Uma variável no Qlik Sense é um contêiner armazenando um valor estático ou um cálculo como, por exemplo, um valor numérico ou alfanumérico. Ao usar a variável no aplicativo, qualquer mudança feita será aplicada em qualquer lugar em que a variável for usada. Você pode definir variáveis na visão geral de variáveis ou no script, usando o Editor de carregamento de dados. Você define o valor de uma variável usando os comandos Let ou Set no script de carregamento de dados.
Visão geral
Se o primeiro caractere do valor de uma variável for um sinal de igual ' = ', o Qlik Sense tentará avaliar o valor como uma fórmula (expressão Qlik Sense) e, em seguida, exibir ou retornar o resultado, em vez do texto real da fórmula.
Quando utilizada, a variável é substituída por seu valor. As variáveis podem ser usadas no script para a expansão de macros e em diversos comandos de controle. Isso é muito útil quando a mesma string é repetida várias vezes no script, por exemplo um caminho.
Algumas variáveis especiais do sistema serão definidas pelo Qlik Sense no início da execução do script, independentemente de seus valores anteriores.
Definindo uma variável
As variáveis fornecem a capacidade de armazenar valores estáticos ou o resultado de um cálculo. Ao definir uma variável, use a seguinte sintaxe:
ou
let variable = expression
A instrução Set é usada para atribuição de strings. Ele atribui o texto à direita do sinal de igual à variável. A instrução Let avalia uma expressão à direita do sinal de igual no tempo de execução do script e atribui o resultado da expressão à variável.
As variáveis diferenciam maiúsculas de minúsculas.
Exemplos:
set x = 3 + 4; // a variável obterá a string '3 + 4' como o valor.
let x = 3 + 4; // retorna 7 como o valor.
set x = Today(); // retorna 'Today()' como o valor.
let x = Today(); // retorna a data de hoje como o valor, por exemplo, '27/9/2021'.
Nomeando suas variáveis
Como prática recomendada, considere o uso de uma convenção de nomenclatura padronizada para as variáveis criadas em um aplicativo. Por exemplo, você pode se certificar de que todos os nomes de suas variáveis comecem com v. Por exemplo: vUserText. Isso ajuda a garantir que as variáveis sejam reconhecidas rapidamente como variáveis e diferenciadas de medidas, campos e funções.
Opções adicionais ao definir variáveis
Esta seção lista recursos adicionais que você pode usar para aprimorar o poder das variáveis que você define no script de carregamento.
Restringindo valores de variáveis
Você pode usar instruções Constrain para restringir variáveis de script a definições específicas, impedindo que valores indesejados sejam carregados. Instruções Constrain podem ser usadas para garantia de qualidade, colaboração aprimorada durante o codesenvolvimento de script e segurança elevada para aplicativos de análise. No Qlik Cloud, as instruções Constrain também podem ser usadas em combinação com a API do desenvolvedor para atualizações dinâmicas de variáveis no momento do recarregamento.
Para obter mais informações, consulte Constrain.
Definindo variáveis somente de script
Você pode usar a variável de sistema ScriptOnlyVariables para definir variáveis exclusivas de scripts. Uma variável somente de script está disponível apenas no script de carregamento e não é exibida, por exemplo, na exibição de pasta no aplicativo.
Para obter mais informações, consulte ScriptOnlyVariables.
Descartando variáveis
Você pode usar uma instrução Drop variable para descartar variáveis no script. Descartar uma variável é útil quando você deseja usar uma variável apenas para realizar cálculos ou definir campos no contexto do modelo de dados.
Para obter mais informações, consulte Drop variable.
Excluindo uma variável
Se você remover uma variável do script e recarregar os dados, a variável permanecerá no aplicativo. Se desejar remover completamente a variável do aplicativo, você pode fazer o seguinte:
Exclua a variável do diálogo de variáveis.
Remova a variável no script usando uma instrução Drop variable.
Defina as variáveis que não são necessárias no diálogo de variáveis como variáveis somente de script usando a variável de sistema ScriptOnlyVariables no script.
Para obter mais informações, consulte Excluindo uma variável.
Carregando um valor de variável como um valor de campo
Se quiser carregar um valor de variável como um valor de campo em um comando LOAD, e o resultado da expansão de dólar for texto em vez de numérico ou uma expressão, você precisará colocar a variável expandida entre aspas simples.
Exemplo:
Este exemplo carrega a variável do sistema contendo a lista de erros de script para uma tabela. Você pode observar que a expansão do ScriptErrorCount na cláusula If não exige aspas, embora a expansão de ScriptErrorList exija.
Cálculo da variável
Existem várias maneiras de usar variáveis com valores calculados no Qlik Sense, e o resultado depende de como você as define e as chama em uma expressão.
Neste exemplo, carregamos alguns dados inline:
Vamos definir duas variáveis:
Na segunda variável, adicionamos um sinal de igual antes da expressão. Assim, a variável será calculada antes de ser expandida e a expressão será avaliada.
Se você usar a variável vSales como está, por exemplo, em uma medida, o resultado será a string Sum(Sales), ou seja, nenhum cálculo será realizado.
Se você adicionar uma expansão de sinal de dólar e chamar $(vSales) na expressão, a variável será expandida e a soma de Sales, exibida.
Por fim, se você chamar $(vSales2), a variável será calculada antes de ser expandida. Isso significa que o resultado exibido é a soma total de Sales. A diferença entre usar =$(vSales) e =$(vSales2) como expressões de medida é observado neste gráfico que mostra os resultados:
| Dim | $(vSales) | $(vSales2) |
|---|---|---|
| A | 350 | 1560 |
| B | 470 | 1560 |
| C | 740 | 1560 |
Como você pode ver, $(vSales) resulta na soma parcial para um valor de dimensão e $(vSales2) resulta na soma total.
Estão disponíveis as seguintes variáveis de script:
- Variáveis de erro
- Variáveis de interpretação numérica
- Variáveis de sistema
- Variáveis de tratamento de valores