Ir para conteúdo
Fórum Script Brasil
  • 0

Lendo EFD para dentro de banco de dados ms access


Colombus

Pergunta

Ótimo dia para todos.

Em uma pasta disponho de vários arquivos txt. Cada arquivo txt correspondente à Escrituração Fiscal Digital - EFD de um mês de uma dada empresa. Cada linha que inicia com |C100| corresponde a dados gerais de uma nota fiscal enquanto as linhas imediatamente abaixo daquela e que iniciam com |C170| correspondem a itens de mercadoria daquela nota fiscal. Veja exemplo abaixo para efeito de ilustração. Note que NÃO há um campo com dados comuns entre as linhas que iniciam com |C100| e aquelas que iniciam com |C170| de forma que não existe relacionamento explícito entre uma linha C100 e linha C170. Veja trecho abaixo para ilustrar.

|C100|0|1|1369F|01|00|1|2935||01022013|01022013|1170,4|1|0|0|1170,4|9|0|0|0|1170,4|198,96|0|0|0|0|0|0|0|
|C170|1|000072|LEITE FERM YAKULT 80G|1020|UN|714|0|0|000|1102||714|17|121,37|0|0|0|...
|C170|2|033075|QUEIJO POLENGUINHO TRAD 20G|10|CX24|150|0|0|000|1102||150|17|25,5|0|0|0|0||...
|C190|000|1102|17|1170,4|1170,4|198,96|0|0|0|0||
|C100|0|1|6990F|55|00|1|35384|20241210557528000274661010000464952334671545|23012013|01022013|63,12|2|...
|C170|1|033044|BEB VODKA ICE SMIR LT 269 CRANB LIMAO|24|UN|63,12|0|0|060|1910||0|0|0|0|0|0|0||...
|C190|060|1910|0|63,12|0|0|0|0|0|0||

Objetivo

Criar um banco Access contendo duas tabelas: tabela 'tabC100' povoada com registros tipo C100 e tabela 'tabC170' povoada com registros tipo C170 envolvendo todos os arquivos txt mensais. As tabelas devem ter um campo que permita relacionar uma com a outra. Esse campo pode ser um inteiro tipo Long.

Perguntas

1. Do ponto de vista de performance, devo apensar todos os arquivos txt mensais em um único arquivo txt para só então passar a importar seus dados para as tabelas do bando de dados (BD) OU devo ir importanto via loop cada um dos arquivos txt mensais diretamente para as tabelas do BD?

2. Para criar um campo de relacionamento entre as tabelas, devo fazer isso a nível do arquivo texto escrevendo um long X na linha C100 e nas linhas C170 imediatamente abaixo OU há outra forma com melhor performance?

3. Há códigos relacionados a esses questionamentos nesse forum? Se sim, como acessá-los (tópicos ou links)?

Agradeço antecipado qualquer ajuda.

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...