Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
thiago_mlg
Contributor II

Valor baseado na data máxima de cada Produto

Prezados, 

Estou tendo problema em uma coisa que parece simples, porem não consigo chegar a uma solução.

Tenho a seguinte tabela dinâmica:

 aa.jpg

 Onde tenho as seguinte informações..

Produto.

Valor. A coluna valore é um sum(Valor)

Valor baseado na (Data Máxima, deste produto)... aqui esta o meu problema.. eu preciso que exiba exatamente como está na imagem acima, ou seja, só exiba o valor daquele produto na maior data em que aquele produto tem Valor, conforme eu sublinhei.

Tentei algumas funções como Aggr, IF e outras.. mas não deve estar montando corretamente.

 

dimensões: Produto e Data

Expressão: sum(Valor)

Agradeço...

 

Tags (1)
9 Replies
Employee
Employee

Re: Valor baseado na data máxima de cada Produto

Tens como adicionar pelo menos o modelo de dados com uma amostra?

thiago_mlg
Contributor II

Re: Valor baseado na data máxima de cada Produto

Segue arquivo anexo..

Desde já agradeço pela ajuda..

 

IvanOsatchuk
New Contributor III

Re: Valor baseado na data máxima de cada Produto

Olá Thiago,

tenta essa solução

 

Sum({<DATA_COMPETENCIA={'$(=Date(Max(DATA_COMPETENCIA)))'}>}VALOR_LIQUIDO)

thiago_mlg
Contributor II

Re: Valor baseado na data máxima de cada Produto

Boa tarde,

Com essa expressão: Sum({<DATA_COMPETENCIA={'$(=Date(Max(DATA_COMPETENCIA)))'}>}VALOR_LIQUIDO)
é retornado a data máxima da seleção, ou seja, não a data máxima que cada produto possui valor.

Com isso o valor será preenchido apenas na última coluna de datas e apenas para os produtos que possuem valor, conforme imagem abaixo.

Preciso que também seja preenchido onde está grifado em vermelho.

teste.jpg

Obrigado pela ajuda.

Att,

 

IvanOsatchuk
New Contributor III

Re: Valor baseado na data máxima de cada Produto

Entendi, acredito que seja melhor implementar a solução no script:

tabela_dados:
LOAD
    DATA_COMPETENCIA,
    Produto,
    VALOR_BRUTO
FROM [fonte de dados];

tabela_ultimo_valor:
Load 
	Produto,
    LastValue(VALOR_BRUTO) as maxvalor
Resident tabela_dados
Group By Produto;

Ao usar Sum(maxvalor) é para trazer o último valor onde tenha valor.

 

thiago_mlg
Contributor II

Re: Valor baseado na data máxima de cada Produto

Então, no script tbm não é possível, pois eu preciso que a data máxima de cada produto respeite a seleção de data que o usuário está fazendo no momento da consulta, ou seja, a cada mudança de filtro de data, as datas máximas de cada produto mudarão.

 

De qualquer forma, obrigado pela ajuda.

thiago_mlg
Contributor II

Re: Valor baseado na data máxima de cada Produto

Boa tarde!

Quando puder e se puder me ajudar, agradeço imensamente.
IvanOsatchuk
New Contributor III

Re: Valor baseado na data máxima de cada Produto

Não sei se entendi exatamente o que você precisa, mas fiz um pequeno ajuste na primeira expressão que talvez seja um caminho:

Sum({<DATA_COMPETENCIA={"<=$(=Date(Max(DATA_COMPETENCIA)))"}>} VALOR_BRUTO)
lftensini
New Contributor III

Re: Valor baseado na data máxima de cada Produto

O texto está um pouco confuso para entender, mas seria algo do tipo que você precisa?

Aggr(SUM(VALOR_BRUTO), DATA_COMPETENCIA, ANO_MES_COMPETENCIA, RP)