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

Problemas com datas

Boa Tarde,

Criei uma tabela auxiliar que me retorna somente valores referentes ao periodo (Data, dia, mês, ano, trimestre...etc) de 01/01/2000 à 01/01/2011.

Quando for selecionado um determinado período, os gráficos devem filtrar corretamente por este ano. O problema que encontrei foi que em um gráfico deve ser filtrado pela data de cadastro e em outro gráfico pela data de encerramento.

Existe alguma forma de criar um "master calendar" e este referencie a dois campos diferentes sem causar referencia circular?

6 Replies
Not applicable
Author

Eduardo, nesse caso concatene os dois calendários:


[Master]:
LOAD
datax as Chave,
Date(datax,'dd/mmm/yyyy') as data,
Month(.......,
'Cadastro' as [Tipo Calendario]
RESIDENTE;
concatenate (Master)

LOAD
datay as Chave,
Date(datay,'dd/mmm/yyyy') as data,
Month(.......,
'Encerramento' as [Tipo Calendario]
RESIDENTE;


A questão da data ai vai depender muito do modelo de dados que vc criou, como as suas tabelas estão no modelo.

Mas a idéia é essa ai.

Not applicable
Author

Fala Fabio!!

Eu não consigo fazer esta concatenação pois os campos são da mesma tabela.

Ex.:

DADOS:

LOAD

ID_DADOS,

DATA_CADASTRO,

DATA_ENCERRAMENTO

RESIDENT DADOS_AUX;

Na tabela que contem os dias eu somente coloquei um alias para criar um vinculo entre as tabelas

DATA AS DATA_CADASTRO

DATA AS DATA_ENCERRAMENTO

Mas desta forma cria a referencia circular.

marksouzacosta
Partner - Creator II
Partner - Creator II

Eduardo,

Se o seu problema for apenas um chart você também pode usar Set Analysis nas expressions desse chart para filtrar a data certa (dá uma olhada no help do QlikView sobre Set Analysis).



Read more at Data Voyagers - datavoyagers.net
Not applicable
Author

Eu sabia que desta forma atenderia

http://community.qlik.com/forums/t/19577.aspx

Só gostaria de ver se existia alguma outra, pois desta maneira fica meio pesado o calculo das expressões

Valeu!

Not applicable
Author

Parece ser meio burro, mas o ideal é manter duas tabelas de calendário

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Eduardo,

Se entendi bem, o que você precisa é o script abaixo, caso não seja isso, avise, tentamos ajudar melhor.

Ex:

LOAD * INLINE [

    Data1, Data2, Valor

    01/01/2012, 01/02/2011, 55

    15/02/2012, 01/03/2011, 45

    10/03/2012, 01/03/2011, 35

    20/04/2012, 01/04/2011, 25

    08/05/2012, 01/05/2011, 15

];

Data1:

LOAD Data1 as Data,

    Valor as ValorD1

Resident Ex;

Data2:

LOAD Data2 as Data,

    Valor as ValorD2

Resident Ex;

Calendario:

LOAD Data,

    Month(Data),

    Year(Data),

    Date(Data,'MM/yyyy') as MesAno

Resident Data1;

Concatenate(Calendario)

LOAD Data,

    Month(Data),

    Year(Data),

    Date(Data,'MM/yyyy') as MesAno

Resident Data2;

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)