Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
girino777
Creator III
Creator III

União em Gráficos

Boa Tarde.!

Tenho 2 gráficos e gostaria de unir/mostrar as informações em apenas 1 gráfico.

Porém quando eu junto e coloco as 2 dimensões ele acaba distorcendo e desconfigurando, trazendo a primeira dimensão sempre no eixo x.

Queria apresentar 2 barras.

Uma com a qtd prevista e outra com a qtd chegada em apenas um gráfico. 

O que estou fazendo de errado ?  

Ou da forma que estou fazendo que é equívoca ? 

Segue qvw em anexo.

(Pasta = FOLLOWUP MIGO)

Muito Obrigado.

Renato

1 Solution

Accepted Solutions
pablolabbe
Luminary Alumni
Luminary Alumni

Renato,

O teu modelo de dados possui dois calendários, um de chegada real e outro de chegada prevista. Não é possível fazer a mesclagem de duas dimensões no eixo, para ter um eixo único das duas datas.

  A solução se divide em duas partes: um ajuste no modelo de dados e uso de filtro condicional nas expressões.

  No modelo de dados deve ser criada uma terceira tabela que será o calendário unificado das duas. Esta tabela não tem ligação com o modelo de dados.

  Segue comandos load para gerar esta tabela de calendário unificado. Estes comandos devem ficar ao final do script:

Calendar_Union:

load Distinct

DATA_CHEGADA_CD as Data_Union,

YearMonth_Chegada as YearMonth_Union

Resident Calendar;

load Distinct

DATA_PREVISTA_CHEGADA_CD as Data_Union,

YearMonth_Prevista as YearMonth_Union

Resident Calendar1;

  No Gráfico com visão unificada você deve:

  • Adicionar o campo YearMonth_Union como dimensão
  • Adicionar a  expressão  da quantidade prevista:

     Count(DISTINCT(if(Data_Union = DATA_PREVISTA_CHEGADA_CD, EMBARQUE)))

  • Adicionar a  expressão  da quantidade chegada:

     Count(DISTINCT(if(Data_Union = DATA_CHEGADA_CD, EMBARQUE)))

  E você deve ter este resultado:

Capturar.PNG.png

Abraço,

Pablo Labbe

View solution in original post

5 Replies
pablolabbe
Luminary Alumni
Luminary Alumni

Renato,

O teu modelo de dados possui dois calendários, um de chegada real e outro de chegada prevista. Não é possível fazer a mesclagem de duas dimensões no eixo, para ter um eixo único das duas datas.

  A solução se divide em duas partes: um ajuste no modelo de dados e uso de filtro condicional nas expressões.

  No modelo de dados deve ser criada uma terceira tabela que será o calendário unificado das duas. Esta tabela não tem ligação com o modelo de dados.

  Segue comandos load para gerar esta tabela de calendário unificado. Estes comandos devem ficar ao final do script:

Calendar_Union:

load Distinct

DATA_CHEGADA_CD as Data_Union,

YearMonth_Chegada as YearMonth_Union

Resident Calendar;

load Distinct

DATA_PREVISTA_CHEGADA_CD as Data_Union,

YearMonth_Prevista as YearMonth_Union

Resident Calendar1;

  No Gráfico com visão unificada você deve:

  • Adicionar o campo YearMonth_Union como dimensão
  • Adicionar a  expressão  da quantidade prevista:

     Count(DISTINCT(if(Data_Union = DATA_PREVISTA_CHEGADA_CD, EMBARQUE)))

  • Adicionar a  expressão  da quantidade chegada:

     Count(DISTINCT(if(Data_Union = DATA_CHEGADA_CD, EMBARQUE)))

  E você deve ter este resultado:

Capturar.PNG.png

Abraço,

Pablo Labbe

nicolett_yuri

Eu não acho muito recomendado utilizar uma tabela sem nenhuma ligação com o modelo e depois forçar o JOIN na expressão ou dimensão do gráfico devido a baixa performance que isso pode resultar. Uma outra forma de se resolver esse problema é criando uma linktable de calendário.

Segue um exemplo: Expressões considerando datas diferentes

pablolabbe
Luminary Alumni
Luminary Alumni

Lembro de ter lido sobre essa técnica, chamada de calendario canônico . http://community.qlik.com/blogs/qlikviewdesignblog/2014/02/17/canonical-date

É válida também , tudo depende do contexto da aplicação (volumetria , modelo de dados, etc).

A técnica que apresentei nao e a única solução possível para esse problema, tudo depende...

nicolett_yuri

Isso mesmo! Essa foi a fonte

girino777
Creator III
Creator III
Author

Bom Dia.!

Muito Obrigado Pessoal pelas dicas...!! 

abs.

Renato