Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
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
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:
Count(DISTINCT(if(Data_Union = DATA_PREVISTA_CHEGADA_CD, EMBARQUE)))
Count(DISTINCT(if(Data_Union = DATA_CHEGADA_CD, EMBARQUE)))
E você deve ter este resultado:
Abraço,
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:
Count(DISTINCT(if(Data_Union = DATA_PREVISTA_CHEGADA_CD, EMBARQUE)))
Count(DISTINCT(if(Data_Union = DATA_CHEGADA_CD, EMBARQUE)))
E você deve ter este resultado:
Abraço,
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
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...
Isso mesmo! Essa foi a fonte
Bom Dia.!
Muito Obrigado Pessoal pelas dicas...!!
abs.
Renato