O processo básico está descrito abaixo:
1. Carregar os novos dados da tabela da Base de Dados (um processo lento, carregando um número limitado de
registros).
2. Carregar os dados antigos do arquivo QVD (um processo bem mais rápido, carregando muitos registros).
3. Criar um novo arquivo QVD.
A complexidade da solução depende da natureza da base de dados de origem, mas os seguintes casos básicos podem ser identificados:
1) Anexar apenas
(Arquivos de log)
2) Inserir apenas (Sem
Atualizar nem Excluir)
3) Inserir e
Atualizar (Sem Excluir)
4) Inserir,
Atualizar e Excluir.
Veja a seguir, as soluções descritas para cada um desses casos. A leitura de
arquivos QVD pode ser feita no modo "super-rápido" ou no "modo padrão". (O
método usado é automaticamente selecionado pela linguagem de script do QlikView,
dependendo da complexidade da operação.) "O modo super-rápido" é aproximadamente
10 vezes mais rápido do que o "modo padrão" ou aproximadamente 100 vezes mais
rápido do que a carga da base de dados executada de forma comum.Caso 1: Anexar apenas
O caso mais simples é o de arquivos de log, que são apenas anexados. As seguintes condições se aplicam:-
A base de dados deve ser um arquivo de log contido em um arquivo de texto
(sem ODBC/OLEDB).
- O QlikView controla o número de registros lidos anteriormente e carrega apenas registros incluídos no final do arquivo.
Caso 2: Inserir apenas. (Sem Atualizar nem Excluir)
Se os dados residirem em uma base de dados, não em um arquivo de log simples, a solução do caso 1 não funcionará. No entanto, o problema poderá ser solucionado com um mínimo de trabalho adicional. As seguintes condições se aplicam:-
A fonte de dados pode ser qualquer base de dados.
-
O QlikView carrega os registros inseridos na base de dados após a execução do
último script.
- É necessário um campo de Data da Modificação (ou semelhante) para que o QlikView reconheça os registros novos.
Caso 3: Inserir e Atualizar. (Sem Excluir)
O caso seguinte se aplica quando os dados nos registros carregados anteriormente são alterados entre as execuções de script. As seguintes condições se aplicam:-
A fonte de dados pode ser qualquer base de dados.
-
O QlikView carrega os registros inseridos ou atualizados na base de dados
após a execução do último script
-
É necessário um campo de Data da Modificação (ou semelhante) para que o
QlikView reconheça os registros novos.
-
É necessário um campo chave primário para que o QlikView classifique os
registros atualizados do arquivo QVD.
- Esta solução forçará a leitura do arquivo QVD no "modo padrão" (em vez do "modo super-rápido"), o que é consideravelmente mais rápido do que carregar a base de dados inteira.
Caso 4: Inserir, Atualizar e Excluir
O caso mais difícil de solucionar é quando os registros são excluídos da base de dados de origem entre as execuções de script. As seguintes condições se aplicam:
-
A fonte de dados pode ser qualquer base de dados.
-
O QlikView carrega os registros inseridos ou atualizados na base de dados
após a execução do último script.
-
O QlikView remove os registros excluídos da base de dados após a execução do
último script.
-
É necessário um campo de Data da Modificação (ou semelhante) para que o
QlikView reconheça os registros novos.
-
É necessário um campo chave primário para que o QlikView classifique os
registros atualizados do arquivo QVD.
- Esta solução forçará a leitura do arquivo QVD no "modo padrão" (em vez do "modo super-rápido"), o que é consideravelmente mais rápido do que carregar a base de dados inteira.