Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi,
I have a problem with variables.
I load variables from a spreadsheet, and it contains the necessary calculations for the formulas in the application.
I realized that if a reference that will query the two records, it multiplies the original value by the amount of logging.
example:
Ref Value Discont1 Discount2
3815738 500.00 250.00 0.00
3815738 500.00 0.00 250.00
In the charts this reference is:
Ref Value Discont1 Discount2
3815738 1000.00 250.00 250.00
The value of the variable is:
sum ({<[Course type] = {"> 1 <3"}>} VALORORIG_MENSALID)
It is called in the following chart:
$(vMensal_Grad)
If I add the DISTINCT, the value of the variable, it will only sum the distinct values with this value be unreal.
example:
Without DISTINCT: 20 million
With DISTINCT: 2 million
How do I make it add up the values of distinct references, and not of distinct values?
I hope I have managed to demonstrate the problem.
Resolvi o problema da seguinte forma:
sum( {<[Tipo Curso] = {">1<3"}>} aggr( avg(VALORORIG_MENSALID), IDLAN ) )
Como o valor está repetindo, tiro uma média, com isso consigo o valor correto.
Bom dia Thiago.
Você pode criar seus posts aqui na QlikView Brasil em Português
Mas voltando ao seu problema. Poderias postar um exemplo de sua aplicação? Assim ficará melhor para a gente poder te ajudar.
Blz.
Deixa tentar explicar melhor.
Carrego as variáveis por uma planilha excel, para facilitar a manutenção, pois são utilizadas em vários gráficos.
VariableName | VariableLabel | VariableValue |
Mensal_Grad | Mens.Graduação | sum( {<[Tipo Curso] = {">1<3"}>}VALORORIG_MENSALID) |
Na aplicação adiciono "v" ao nome das variáveis, ficando assim: vMensal_Grad
Nas expressões dos gráficos, ela é chamada da seguinte forma: $(vMensal_Grad)
Alguns registros vem da query com duas linhas, como informo no exemplo abaixo:
Exemplo:
Ref Vlr Fies Bolsa
3815738 500 250 0
3815738 500 0 250
Nos gráficos essa referencia fica da seguinte forma:
Ref Vlr Fies Bolsa
3815738 1000 250 250
Ou seja, soma o valor original.
Se acrescento o DISTINCT, no valor da variável:
sum( DISTINCT {<[Tipo Curso] = {">1<3"}>}VALORORIG_MENSALID) |
Está somando os VALORORIG_MENSALID distintos, e preciso que some as referencias distintas.
Deveria ficar assim:
Ref Vlr Fies Bolsa
3815738 500 250 250
Se coloco num gráfico do tipo planilha, ele traz correto, mas se coloco num de barras por exemplo ele me dá a diferença:
Acho que o problema é pq uma variável já vem com o sinal de = e a outra não, faz este teste por favor.
Não é isso.
O primeiro, está o valor da variável, e o segundo esta a expressão digita com o distinct.
é verdade, acho que vamos conseguir ajudar com agilidade se tiver um qvw exemplo, consegue postar um?
Oi, Thiago.
Apesar de ser possível resolver o problema na expressão da variável, o melhor jeito é resolvê-lo no script. Usa um load parecido com esse (ajuste para os nomes corretos dos seus campos):
Load
Ref,
Min(VALORORIG_MENSALID) as VALORORIG_MENSALID,
Sum(Fies) as Fies,
Sum(Bolsa) as Bolsa
From ...
Group by Ref;
Usa a expressão sem distinct: sum({<[Tipo Curso] = {">1<3"}>}VALORORIG_MENSALID).
Espero ter ajudado.
Resolvi o problema da seguinte forma:
sum( {<[Tipo Curso] = {">1<3"}>} aggr( avg(VALORORIG_MENSALID), IDLAN ) )
Como o valor está repetindo, tiro uma média, com isso consigo o valor correto.