Fórum Gravar informações do Arquivo texto no banco de dados #352765
31/01/2008
0
Bom Dia
Estou iniciando em Delphi, estou usando a versão 7 e Banco de Dados FireBird 2.0.
Estou com a seguinte situação : tenho um arquivo texto com 3 mil linhas e preciso gravar essas informações no banco de dados, alguém pode me ajudar ? segue abaixo o exemplo da 1º linha do arquivo :
posição
1 - 6 >Codigo do cliente
7 - 57 > Razão Social
58 - 91 > cnpj
92 - 167 > endereço
168 - 197 > cidade
198 - 205 > cep
206 - 207 > uf
208 - 232 > bairro
233 - 234 > Flag / rede ou associação
235 - 240 > nº da rede ou associação
241 - 265 > Razão social / rede ou associação
266 - 271 > nº da associação
272 - 291 > Razão social associação
Também preciso criar um id autoincremento para cada registro gravado no banco.
Outra duvida é que vou receber 1 vez por semana o mesmo arquivo e preciso importar novamente e gravar os registros novos ( novos códigos de clientes ) esse arquivo texto é o cadastro de cliente.
Desde já agradeço pela atenção de todos.
Estou iniciando em Delphi, estou usando a versão 7 e Banco de Dados FireBird 2.0.
Estou com a seguinte situação : tenho um arquivo texto com 3 mil linhas e preciso gravar essas informações no banco de dados, alguém pode me ajudar ? segue abaixo o exemplo da 1º linha do arquivo :
posição
1 - 6 >Codigo do cliente
7 - 57 > Razão Social
58 - 91 > cnpj
92 - 167 > endereço
168 - 197 > cidade
198 - 205 > cep
206 - 207 > uf
208 - 232 > bairro
233 - 234 > Flag / rede ou associação
235 - 240 > nº da rede ou associação
241 - 265 > Razão social / rede ou associação
266 - 271 > nº da associação
272 - 291 > Razão social associação
Também preciso criar um id autoincremento para cada registro gravado no banco.
Outra duvida é que vou receber 1 vez por semana o mesmo arquivo e preciso importar novamente e gravar os registros novos ( novos códigos de clientes ) esse arquivo texto é o cadastro de cliente.
Desde já agradeço pela atenção de todos.
Help Desk1
Curtir tópico
+ 0
Responder
Posts
31/01/2008
Ferreia2
Ler arquivo texto
var arq: TextFile;
linha: String;
Campo 1, Campo2 : string;
begin
AssignFile ( arq, nomeDoArquivo );
Reset ( arq );
ReadLn ( arq, linha );
while not Eof ( arq ) do
begin
Campo1 := Copy(Linha,1,10)
Campo2 := Copy(Linha,11,20)
Agora grava o conteúdo na sua tabela
ReadLn ( arq, linha );
end;
CloseFile ( arq );
end;
Criando Generator
Create generator nome do generator que vc quiser criar
SET TERM ^ ;
CREATE TRIGGER ´Nome do campo da tabela´ FOR ´tabela´
ACTIVE BEFORE INSERT POSITION 0
as
begin
if (new.Nome do campo da tabela is null) then
new.Nome do campo da tabela = gen_id(nome do generator criado, 1 );
END
^
COMMIT WORK ^
SET TERM ;^
var arq: TextFile;
linha: String;
Campo 1, Campo2 : string;
begin
AssignFile ( arq, nomeDoArquivo );
Reset ( arq );
ReadLn ( arq, linha );
while not Eof ( arq ) do
begin
Campo1 := Copy(Linha,1,10)
Campo2 := Copy(Linha,11,20)
Agora grava o conteúdo na sua tabela
ReadLn ( arq, linha );
end;
CloseFile ( arq );
end;
Criando Generator
Create generator nome do generator que vc quiser criar
SET TERM ^ ;
CREATE TRIGGER ´Nome do campo da tabela´ FOR ´tabela´
ACTIVE BEFORE INSERT POSITION 0
as
begin
if (new.Nome do campo da tabela is null) then
new.Nome do campo da tabela = gen_id(nome do generator criado, 1 );
END
^
COMMIT WORK ^
SET TERM ;^
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)