Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Posting on Qlik Community is temporarily paused. Thank you for patience and we'll update you soon!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Union Tabelas

Tem um script que le arquivos em sum diretórios, sem precisar carregar arquivos 1 por 1 em Arquivos de Tabelas. Porém apareceu o seguinte problema. Quando eu executo ele carrega todas as tabelas, porém só a ultima carregada é que os dados são mostrados, se eu usar Qualify ele cria muitas tabelas. Gostaria de a cada passo da execução ele ir gerando uma tabela só contendo os dados das tabelas anteriores.

http://community.qlik.com/docs/DOC-1306#comment-2524

1 Solution

Accepted Solutions
aderlanrm
Partner - Specialist
Partner - Specialist

Olá Issosorio,

Tenta mudar essa parte do script:

FOR Each Dir in DirList ('*')

    FOR each Dados in dirlist (Dir&'\*')

        CALL DoDir(Dir);

    NEXT Dados;

NEXT Dir;

Executei por aqui e funcionou:

Diretorios << AUTOGENERATE(1) 1 registros lidos

Receita_Candidato << ReceitasCandidatos 10.291 registros lidos

Diretorios << AUTOGENERATE(1) 2 registros lidos

Receita_Candidato << ReceitasCandidatos 42.463 registros lidos

--- Script Finalizado ---

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (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)

View solution in original post

5 Replies
aderlanrm
Partner - Specialist
Partner - Specialist

Olá Issosorio,

Tem certeza que os outros arquivos tem dados?

Confira se realmente é somente o último arquivo que está sendo carregado, use o opção Debug no script e veja passo a passo como está executando e o quanto de dados está carregando cada arquivo.

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (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)
Not applicable
Author

Sim  todas as tabelas tem dados, eu peguei um arquivo de prestação das contas. Ai eu tenho candidato e dentro de cadidato eu tenho 27 estados e todos tem um arquivo chamado ReceitaCandidadto.txt que estão preenchidos. Porém na hora que eu dou a carga (Segue script anexado) Ele vai sobrepondo as informações anteriores. Eu fiz um filtro para constatar o que eu suspeitava, e relamente ele tava fzd isso.

abraçooo

aderlanrm
Partner - Specialist
Partner - Specialist

Eu dei uma olhada e não vi nada que possa causar o problema, com um DROP por exemplo, mas não tenho a estrutura de pastas e arquivos para fazer testes, você sabe usar a depuração?

Abra o script e execute a depuração ao invés de fazer a recarga, com isso, você vai passo a passo e encontrará o problema com facilidade.

Ou monte um exemplo e anexe os arquivos com extrutura compactado zip que damos uma olhada.

Grande abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (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)
Not applicable
Author

Aderlan segue o exemplo, o que ele está fazendo é o seguinte, ele vai lendo até chegar a pasta AC, ai le o arquivo tudo ok, porem qnd le o arquivo da 2 pasta ele apaga o conteudo anterior segue um RAR com 2 pastas para teste

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Issosorio,

Tenta mudar essa parte do script:

FOR Each Dir in DirList ('*')

    FOR each Dados in dirlist (Dir&'\*')

        CALL DoDir(Dir);

    NEXT Dados;

NEXT Dir;

Executei por aqui e funcionou:

Diretorios << AUTOGENERATE(1) 1 registros lidos

Receita_Candidato << ReceitasCandidatos 10.291 registros lidos

Diretorios << AUTOGENERATE(1) 2 registros lidos

Receita_Candidato << ReceitasCandidatos 42.463 registros lidos

--- Script Finalizado ---

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (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)