Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
Not applicable

Carga incremental

Boa tarde

Preciso criar uma carga incremental por data, podem me ajudar por onde começo.

- Terei diariamente uma carga dos ultimos 30 dias e eu preciso criar essa carga de histórico no qlikview.

Tags (1)
1 Solution

Accepted Solutions

Re: Carga incremental

Twister, você pode fazer o controle com Where exists ou então fazer o controle por WHERE DATA > x

exemplo:

Sua consulta SQL vai ter o controle de ler somente os arquivos do dia de ontem.

Em seu qvd temos os dados do mês inteiro e pode até ter os dados de ontem (vamos preparar a carga para caso tenha, removeremos esses registros antes de juntar com os da consulta.)

LET vOntem = Date(Today()-1, 'YYYY-MM-DD'); //O formato da data vai depender de cada tabela e base de dados.

Fato:

SQL SELECT * FROM Tabela1 WHERE DATA = '$(vOntem)';

CONCATENATE

LOAD

      *

FROM Fato.qvd (qvd)

WHERE

         NOT Exists(DATA) //Elimino a data que esta retornando na consulta.

//Você pode substituir o NOT Exists por um 'DATA < '$(vOntem)' - Mas no NOT Exists é melhor prática.

STORE Fato INTO Fato.qvd (qvd);

Acredito que esse exemplo vai te ajudar bastante.

4 Replies
Employee
Employee

Re: Carga incremental

Dê uma procurada no seu manual por "Carga Incremental" tem exemplos

Re: Carga incremental

Conforme o Clever orientou, procure esta sessão no manual que possui exemplos de como realizar diversos tipos de cargas incrementais.

Se continuar com alguma dúvida ou precisar de um exemplo prático, nos informe que podemos montar um exemplo

Not applicable

Re: Carga incremental

Obrigado, foi erro meu deveria ter olhado o manual antes.

Acabei optando por fazer apenas a inserção dos dados e tenho uma duvida.

-Vou gerar o meu qvd com os dados até hoje.

-Vou concatenar com a base (diária) que vai conter por exemplo 25 dias;

-Minha ideia é tirar do meu qvd os 25 dias e acrescentar o da base diária, faz sentido?

Se faz sentido eu preciso converter minha data (do arquivo qvd) em número de dias para poder fazer  - 25 dias.

como converto minha data em numero de dias ou como tiro dias de uma data?

=date(Data - 25)

Esta funcionando assim, porém eu preciso selecionar uma data, ou seja, na carga do painel esta com erro.

Re: Carga incremental

Twister, você pode fazer o controle com Where exists ou então fazer o controle por WHERE DATA > x

exemplo:

Sua consulta SQL vai ter o controle de ler somente os arquivos do dia de ontem.

Em seu qvd temos os dados do mês inteiro e pode até ter os dados de ontem (vamos preparar a carga para caso tenha, removeremos esses registros antes de juntar com os da consulta.)

LET vOntem = Date(Today()-1, 'YYYY-MM-DD'); //O formato da data vai depender de cada tabela e base de dados.

Fato:

SQL SELECT * FROM Tabela1 WHERE DATA = '$(vOntem)';

CONCATENATE

LOAD

      *

FROM Fato.qvd (qvd)

WHERE

         NOT Exists(DATA) //Elimino a data que esta retornando na consulta.

//Você pode substituir o NOT Exists por um 'DATA < '$(vOntem)' - Mas no NOT Exists é melhor prática.

STORE Fato INTO Fato.qvd (qvd);

Acredito que esse exemplo vai te ajudar bastante.