Variáveis de script

Uma variável no QlikView é 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 documento, qualquer mudança feita será aplicada em qualquer lugar em que a variável for usada. Variáveis são definidas no script usando o editor de script, em que as variáveis adquirem seu valor a partir de um comando de controle Let, Set ou outros no script de carregamento.

Se o primeiro caractere do valor de uma variável for um sinal de igual ' = ', o QlikView tentará avaliar o valor como uma fórmula (expressão QlikView) 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 QlikView no início da execução do script, independentemente de seus valores anteriores.

Ao definir uma variável, a sintaxe:

set variablename = string

or

let variable = expression

é usada. O comando Set atribui o texto à direita do sinal de igual à variável e o comando Let avalia a expressão.

As variáveis diferenciam maiúsculas de minúsculas.

Examples:  

set HidePrefix = $ ; // a variável considerará o caractere ‘$’ como um valor.

let vToday = Num(Today()); // retorna o número serial da data de hoje.

Cálculo da variável

Existem várias maneiras de usar variáveis com valores calculados no QlikView, e o resultado depende de como você as define e as chama em uma expressão.

Neste exemplo, carregamos alguns dados inline:

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

Vamos definir duas variáveis:

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

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.