Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Problemas com variáveis

Olá, boa tarde !!

Utilizo uma planilha contendo as expressões que utilizo na aplicação (gráficos, caixa de texto ...).

Através de Script crio uma variável para cada expressão, adicionando o valor da expressão.

Mas surgiu um problema algumas variáveis não estão levando as expressões desejadas.

Por Exemplo:

VariávelValor
vCAPTACAO_GRAD_YSTDSUM({< STATUSPERIODO = {1, 4, 5, 7, 8, 11, 12, 13, 14, 18, 19}, [TIPO CURSO] =           {'GRADUAÇÃO'}, IsInYTD = {1}, IsInAnoAtual = {1}, [PERIODO LETIVO] = {'20142'}, Data =                       {"$(=Date(today()-1,'DD/MM/YYYY'))"} >} QTDCAPTACAO)

A parte destacada aparece da seguinte forma: Data = {""}

Alguém teria alguma ideia de como posso resolver ??

Labels (2)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Tente utilizar esta solução

View solution in original post

13 Replies
edgard130
Contributor II
Contributor II

Thiago,

tive um problema parecido e resolvi substituindo o $ pelo char dele. No seu caso ficaria assim

SUM(
{<
STATUSPERIODO = {1, 4, 5, 7, 8, 11, 12, 13, 14, 18, 19},
[TIPO CURSO] = {'GRADUAÇÃO'},
IsInYTD = {1},
IsInAnoAtual = {1},
[PERIODO LETIVO] = {'20142'},
Data = {"'&chr(36)&'(=Date(today()-1,'DD/MM/YYYY'))"}
>}
QTDCAPTACAO

)

Anonymous
Not applicable
Author

Thiago tente usar a expressão sem a aspas

Data ={$(=Date(today()-1,'DD/MM/YYYY'))}



Anonymous
Not applicable
Author

Edgard,

Leva o valor da expressão na variável ( Data = {"'&chr(36)&'(=Date(today()-1,'DD/MM/YYYY'))"} ), mas quando chamo a variável $(vCAPTACAO_GRAD_YSTD), ela não calcula.

Anonymous
Not applicable
Author

Sem as aspas não funciona.

Anonymous
Not applicable
Author

Utilize um caracter diferente no lugar do $, exemplo #.

no momento que importar a variavel substitua por $.

para facilitar sua vida, segue um exemplo.

fernando_tonial
Employee
Employee

Olá Thiago,

Verifique se o resultado esta conforme o esperado em um objeto de texto.

coloque a seguinte expressão na definição do objeto texto.

=$(=Date(today()-1,'DD/MM/YYYY'))

Caso o resultado seja o esperado, coloque em uma expressão, mas apenas com aspas simples.

SUM({< STATUSPERIODO = {1, 4, 5, 7, 8, 11, 12, 13, 14, 18, 19}, [TIPO CURSO] =           {'GRADUAÇÃO'}, IsInYTD = {1}, IsInAnoAtual = {1}, [PERIODO LETIVO] = {'20142'}, Data ={'$(=Date(today()-1,'DD/MM/YYYY'))'} >} QTDCAPTACAO)


Qlikfique-se.

Tonial

Don't Worry, be Qlik.
Anonymous
Not applicable
Author

Fernando, bom dia !!

Se jogo a expressão direto em um objeto de texto, funciona normalmente.

Mas como estou importando do excel, ela dá pau. Quando procuro a variável nas propriedades do documento, ela não apresenta a expressão corretamente.

Na planilha esta assim:

SUM({< STATUSPERIODO = {1, 4, 5, 7, 8, 11, 12, 13, 14, 18, 19}, [TIPO CURSO] = {'GRADUAÇÃO'}, IsInYTD = {1}, IsInAnoAtual = {1}, [PERIODO LETIVO] = {'20142'}, Data = {'$(=Date(today()-1,"DD/MM/YYYY"))'} >} QTDCAPTACAO)

E na variável dentro do documento esta assim:

SUM({< STATUSPERIODO = {1, 4, 5, 7, 8, 11, 12, 13, 14, 18, 19}, [TIPO CURSO] = {'GRADUAÇÃO'}, IsInYTD = {1}, IsInAnoAtual = {1}, [PERIODO LETIVO] = {'20142'}, Data = {''} >} QTDCAPTACAO)

Anonymous
Not applicable
Author

Tente utilizar esta solução

Anonymous
Not applicable
Author

Agnaldo,

Estava fazendo os testes, no exemplo que você enviou substitui perfeitamente, mas ao adequar ao meu documento não está substituindo os caracteres ( #, $).

Dá uma olhada no script, e por favor me diz se tem algo errado.

Let vNumberOfRows = nummax(NoOfRows('Expressions'),0)-1;

For i = 0 to '$(vNumberOfRows)'

     Let vVariable_Name = 'v'&Peek('VariableName',$(i),'Expressions');

     Let vVariable_Value = Peek('VariableValue',$(i),'Expressions');

     Let $(vVariable_Name) = Replace('$(vVariable_Value)','#','$');


Next i