Qlik Community

Ask a Question

Brasil

Announcements
Login changes complete, Login with email not username. READ DETAILS/WATCH VIDEO
cancel
Showing results for 
Search instead for 
Did you mean: 
brunoducatti
Creator
Creator

Gráfico Combinado - Dimensões

Pessoal, estou precisando montar um gráfico combinado como o do exemplo abaixo, mas tenho um problema. 

Sempre terei o ano-mês selecionado, normalmente o atual mas que pode ser filtrado um anterior. A ideia para este gráfico seria comparar os últimos 12 meses baseado no ano-mês selecionado. Minha dúvida neste caso é como montar a dimensão e expressões, considerando que vou estar com o campo selecionado, ele só mostra na dimensão o período atual.

Minha tabela basicamente tem os campos: anomes, valorestoque, valorobsoleto e custovendas.

dimensao.png

1 Solution

Accepted Solutions
pedrobergo
Partner
Partner

Olá Bruno,

Então, vc deverá fazer duas coisas:

1. Ajustar o anomes assim:

MonthName(Monthstart(dtnota)) as anomes

2. Ajustar a fórmula para evitar apresentar dados após o anomes selecionado

sum({<[anomes]={">=$(=Addmonths(Max([anomes]),-12))<=$(=(Max([anomes])))"} >} [valorestoque])

Veja a app exemplo,

Abs,

Pedro

View solution in original post

7 Replies
rodrigo_rocha
Creator
Creator

Olá Bruno!!

Já experimentou colocar uma variável na expressão? 

At.

Rodrigo Ramos Rocha

pedrobergo
Partner
Partner

Olá Bruno,

Estou considerando que a dimensão anomes é derivada da Data. Se for uma dimensão texto não funcionaria, teria que transformar em data primeiro...

Bem, a expressão ficaria assim:

sum({<[anosmes]={">=$(=Addmonths(Max([anomes]),-12))"} >} [valorestoque])

Ele vai buscar tudo que é maior ou igual aos últimos 12 meses do maior anomes. Se vc selecionar um ou mais de um anomes, ele vai pegar o maximo , ou seja, o último anosmes selecionado.

Boa sorte,

Pedro

brunoducatti
Creator
Creator
Author

Olá Pedro, pensei inicialmente em fazer uma expressão para calcular o valor baseado em variáveis, mas teria que criar varias variáveis uma para cada mês e repetir a expressão no gráfico.

Tentei aplicar sua ideia mas a expressão não retornou nenhuma informação.

sum({<[anomes]={">=$(=Addmonths(Max([anomes]),-12))"} >} [valorestoque])

pedrobergo
Partner
Partner

Olá Bruno,

Seu anomes deve estar como texto, vc pode postar seus dados exemplos aí?

Abs,

Pedro

brunoducatti
Creator
Creator
Author

Oi Pedro, eu formatei o campo anomes da seguinte forma:

Date(Monthstart(dtnota), 'MM-yyyy') as anomes

 

Abs

Bruno

pedrobergo
Partner
Partner

Olá Bruno,

Então, vc deverá fazer duas coisas:

1. Ajustar o anomes assim:

MonthName(Monthstart(dtnota)) as anomes

2. Ajustar a fórmula para evitar apresentar dados após o anomes selecionado

sum({<[anomes]={">=$(=Addmonths(Max([anomes]),-12))<=$(=(Max([anomes])))"} >} [valorestoque])

Veja a app exemplo,

Abs,

Pedro

View solution in original post

brunoducatti
Creator
Creator
Author

Perfeito Pedro, muito obrigado!

 

Abs

Bruno