Skip to main content

Brasil

Announcements
QlikWorld 2023, a live, in-person thrill ride. Save $300 before February 6: REGISTER NOW!
cancel
Showing results for 
Search instead for 
Did you mean: 
flaviosouza37
Contributor II
Contributor II

Set analisys

Ola,

Estou com uma situação no trabalho que não estou conseguindo encontrar uma solução, ainda estou estudando Qlikview e pode ser que precise de algum conhecimento que não tenho ainda pra fazer isso. Fiz uma simulação dessa situação com alguns dados fictícios no Excel pra tentar entender melhor o problema e vou disponibilizar aqui.

A situação é a seguinte, Tenho uma tabela fato que tem os resultados de vendas, coloquei apenas 3 dimensões pra facilitar a analise, as dimensões são tempo, produto e cliente.

Tenho outra tabela fato que tem uma política de preços que tem o valor unitário de cada produto por cliente e a data que irá expirar essa política de preço, nesta tabela geralmente as datas são indeterminadas no momento que os dados são inseridos então é comum usarem a data 31/12/9999.

O que eu preciso é montar uma Straigh Table que tenha as dimensões Cod_Cli, Cod_Prod, Data e os valores da tabela política também farão parte dimensão, como na seguinte imagem:

img 1.png

Nessa tabela só vão aparecer os dados que estão na tabela política, pra que isso ocorra eu marquei a opção "ocultar todos os valores nulos" na dimensão "valor politica"

O nome do campo que tem o valor das vendas na fato venda é ValorVenda, na coluna venda da tabela acima eu preciso que apareça o valor das vendas da fato venda de acordo com o cod_cli e o cod_prod que aparece nessa Straight Table. O calculo que eu usei acima é Sum(Total ValorVenda), isso faz com que sejam desconsideradas todas as dimensões da tabela e o resultado que aparece é o total da tabela fato venda, se eu fiz Sum(TOTAL <Cod_Cli, Cod_Prod> ValorVenda) nenhum dado é retornado nessa tabela.

Como faço para que apareça o valor total de acordo com apenas o codigo do cliente e o codigo do prouto na tabela acima?

Os arquivos que geram essa tabela estão em anexo.

Obrigado

Labels (4)
1 Solution

Accepted Solutions
sunny_talwar

This?

Capture.PNG

Expression:

If(ValorPolitica > 0, Sum(TOTAL <Cod_Cli, Cod_Prod>ValorVenda))

Also

1) Removed 'Suppress When Value Is Null' for ValorPolitica

2) Added 'Suppress Zero-Values' on the presentation tab

View solution in original post

3 Replies
flaviosouza37
Contributor II
Contributor II
Author

Consegui resolver o problema usando Aggr, a expressao seria Aggr(Sum(vVendas), Cod_Cli, Cod_Prod) porem usei essa logica no arquivo com os dados do meu trabalho e a Straight Table fica reiniciando toda hora, se eu desço a barra de rolagem ela volta pro começo toda hora, devo ter feito alguma coisa errada, alguem ja passou por um problema desse?

Tem alguma função que posso usar que não seja tão pesada quando o Aggr nesse caso?

sunny_talwar

This?

Capture.PNG

Expression:

If(ValorPolitica > 0, Sum(TOTAL <Cod_Cli, Cod_Prod>ValorVenda))

Also

1) Removed 'Suppress When Value Is Null' for ValorPolitica

2) Added 'Suppress Zero-Values' on the presentation tab

flaviosouza37
Contributor II
Contributor II
Author

Era isso mesmo Sunny, só não consegui entender porque tem que colocar essa condição, por que quando eu ocultei os valores zerados da dimensão a soma com essas condições no TOTAL não retornaram nenhum resultado?