Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá pessoal, estou com dificuldade em chegar ao seguinte resultado de uma modelagem.
Estrutura Original
ID | DT_COMPETENCIA | STATUS |
1 | 01/01/2010 | A |
1 | 03/01/2010 | B |
1 | 05/01/2010 | C |
2 | 01/01/2010 | A |
2 | 04/01/2010 | B |
3 | 31/12/2009 | A |
3 | 02/01/2010 | B |
3 | 04/04/2010 | C |
Estrutura Final
ID | DT_COMPETENCIA | STATUS |
1 | 01/01/2010 | A |
1 | 02/01/2010 | A |
1 | 03/01/2010 | B |
1 | 04/01/2010 | B |
1 | 05/01/2010 | C |
2 | 01/01/2010 | A |
2 | 02/01/2010 | A |
2 | 03/01/2010 | A |
2 | 04/01/2010 | B |
3 | 31/12/2009 | A |
3 | 01/01/2010 | A |
3 | 02/01/2010 | B |
3 | 03/01/2010 | B |
3 | 04/04/2010 | C |
Legendas | |
Novos Registros em Negrito | |
Status dos Novos registros = Status Registro Anterior | |
Range Data ID= 1 | |
Min | 01/01/2010 |
Max | 05/01/2010 |
Range Data ID= 2 | |
Min | 01/01/2010 |
Max | 04/01/2010 |
Range Data ID= 3 | |
Min | 31/12/2009 |
Max | 04/04/2010 |
Alguém tem alguma idéia p/ que eu possa chegar a este resultado?
Agradecido.
Vitor,
Você vai ter que usar a função IntervalMatch pra conseguir fazer isso que você está querendo no seu Load Script. Dê uma conferida no Help do QlikView. Lá tem um exemplo até parecido com o que você quer.
Uma dica que posso te dar agora é você criar uma inline table com o seu Range ID, Min e Max.
Vai ficar mais ou menos assim:
RangeData:
LOAD * INLINE [
RangeDataID, Min, Max
1, 01/01/2010, 05/01/2010
2, 01/01/2010, 04/01/2010
3, 31/12/2009, 04/04/2010
];
Feito isso só usar o IntervalMatch para juntar as tabelas.
Vitor,
Você vai ter que usar a função IntervalMatch pra conseguir fazer isso que você está querendo no seu Load Script. Dê uma conferida no Help do QlikView. Lá tem um exemplo até parecido com o que você quer.
Uma dica que posso te dar agora é você criar uma inline table com o seu Range ID, Min e Max.
Vai ficar mais ou menos assim:
RangeData:
LOAD * INLINE [
RangeDataID, Min, Max
1, 01/01/2010, 05/01/2010
2, 01/01/2010, 04/01/2010
3, 31/12/2009, 04/04/2010
];
Feito isso só usar o IntervalMatch para juntar as tabelas.
Valeu Mark.
Estava usando um FOR, mas agora ficou legal.
té...