Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá,
Gostaria de saber como fazer que a carga de dados do qlikview seja feita de um determinado periodo.
O caso é o seguinte, preciso que seja feita atualização dos dados sendo >= mês atual, sendo que os meses já passados, ex: jan-2011 não será necessario atualizar pois não sofrem alteração.
Obrigado!
Vilmar,
pelo que entendi você poderia fazer algo assim:
Faça uma carga inicial dos teus dados até a data de ontem por exemplo:
"SQL Select * from DADOS where DATA <= 10/02/2011"
O resultado você armazena em um QVD (Ex: CARGAHISTORICO.QVD)
Depois disso você pode comentar o código dessa carga para que ele não fique executando toda vez que rodar o script.
Em seguida, faça uma segunda carga de dados onde você pega somente os dados de hoje (para isso você vai precisar de uma função do BD que retorne a data atual). Ficaria algo assim:
"SQL Select * from DADOS where DATA = CURRENT_DATE()"
O resultado você armazena em um QVD (Ex: CARGAATUAL.QVD)
Aí em seguida você faz a concatenação das duas cargas:
DADOS:
LOAD * FROM CARGAHISTORICO.QVD;
LOAD * FROM CARGAATUAL.QVD;
e Armazena isso como CARGAHISTORICO.QVD, substituindo a primeira carga (que é o arquivo que você vai usar em sua aplicação e estará sempre atualizado, obs: estou supondo que você tenha uma carga de dados diária).
Espero ter ajudado.
Vilmar, o que entendi de seu post é que voce quer fazer algo parecido com uma carga incremental.
Voce pode alterar o script de carga, para ler somente dados do mes atual (pode fazer isso no proprio SQL de leitura dos dados).
Os dados antigos (que nao sofrem alterações) voce pode gravar em um QVD, que será concatenado com sua leitura dos dados do mes.
É isso mesmo que voce precisa?
isso mesmo, porém como faço isso?
Vilmar,
pelo que entendi você poderia fazer algo assim:
Faça uma carga inicial dos teus dados até a data de ontem por exemplo:
"SQL Select * from DADOS where DATA <= 10/02/2011"
O resultado você armazena em um QVD (Ex: CARGAHISTORICO.QVD)
Depois disso você pode comentar o código dessa carga para que ele não fique executando toda vez que rodar o script.
Em seguida, faça uma segunda carga de dados onde você pega somente os dados de hoje (para isso você vai precisar de uma função do BD que retorne a data atual). Ficaria algo assim:
"SQL Select * from DADOS where DATA = CURRENT_DATE()"
O resultado você armazena em um QVD (Ex: CARGAATUAL.QVD)
Aí em seguida você faz a concatenação das duas cargas:
DADOS:
LOAD * FROM CARGAHISTORICO.QVD;
LOAD * FROM CARGAATUAL.QVD;
e Armazena isso como CARGAHISTORICO.QVD, substituindo a primeira carga (que é o arquivo que você vai usar em sua aplicação e estará sempre atualizado, obs: estou supondo que você tenha uma carga de dados diária).
Espero ter ajudado.