Fórum Uma ajudinha no Código :shock: #194371
11/11/2003
0
Galera, boa noite!
Olha, estou importando informações de um arquivo texto. Primeiramente vejo o Código da Loja (que é o primeiro campo do arquivo), filtro a tabela por este cod e apago todos arquivos, para depois importar realmente os dados e dar um post. Mas está dando erro ao tentar apagar os arquivos. Tem vez que até vai só que não entra no laço ´if not EOF(Arq) then´ .. Se alguém poder me ajudar ficarei muito grato de verdade. O código do botão importar vem abaixo:
[b:0190a358fe]procedure TFRMPrinc.BTNImpClick(Sender: TObject);
var
Arq: TextFile;
vCodLoj, Texto: String;
I: Integer;
function MontaVariavel: String;
var
monta: String;
begin
monta := ´´;
inc(I);
while Texto[I] <> ´*´ do
begin
if Texto[I] = ´|´ then
break;
monta := monta + Texto[I];
inc(I);
end;
result := monta;
end;
begin
if OpenDialog1.Execute then
begin
Screen.Cursor := crHourGlass;
TBLOrg.Open;
// inicio -->> linhas que eu inseri para resgatar o código da loja (primeiro campo) e apagar os registros da TBLOrg que contenha essa cod
AssignFile(Arq, OpenDialog1.FileName);
ReadLn(Arq,Texto);
i:=0;
vCodLoj:=MontaVariavel;
TBLOrg.Filtered:=False;
TBLOrg.Filter:=´COD_LOJA=(´´´+vCodLoj+´´´)´;
TBLOrg.Filtered:=True;
TBLOrg.First;
While not TBLOrg.isEmpty do
TBLOrg.Delete;
TBLOrg.Filtered:=False;
CloseFile(Arq);
// fim ---
AssignFile(Arq, OpenDialog1.FileName);
ReadLn(Arq,Texto);
if not EOF(Arq) then
repeat
ReadLn(Arq,Texto);
with TBLOrg do
begin
Insert;
i := 0;
FieldByName(´COD_LOJA´).AsString := MontaVariavel;
FieldByName(´COD_VEICULO´).AsString := MontaVariavel;
FieldByName(´DESCRICAO´).AsString := MontaVariavel;
FieldByName(´COR´).AsString := MontaVariavel;
FieldByName(´ANO´).AsString := MontaVariavel;
FieldByName(´COD_ANO´).AsString := MontaVariavel;
FieldByName(´VALOR´).AsString := MontaVariavel;
Post;
end;
until EOF(Arq);
CloseFile(Arq);
TBLOrg.Active:=False;
TBLOrg.Active:=True;
Screen.Cursor := crDefault;
end;
QNomLoj.Active:=False;
QNomLoj.Active:=True;
Inicio; // procedure do para limpar alguns componentes
ExibirValores; // procedure para exibir valores
end;[/b:0190a358fe]
Se alguém estiver apto a me ajudar ficarei muito feliz! :D
Grande abraço e Best Regards!
Wagner Web
Olha, estou importando informações de um arquivo texto. Primeiramente vejo o Código da Loja (que é o primeiro campo do arquivo), filtro a tabela por este cod e apago todos arquivos, para depois importar realmente os dados e dar um post. Mas está dando erro ao tentar apagar os arquivos. Tem vez que até vai só que não entra no laço ´if not EOF(Arq) then´ .. Se alguém poder me ajudar ficarei muito grato de verdade. O código do botão importar vem abaixo:
[b:0190a358fe]procedure TFRMPrinc.BTNImpClick(Sender: TObject);
var
Arq: TextFile;
vCodLoj, Texto: String;
I: Integer;
function MontaVariavel: String;
var
monta: String;
begin
monta := ´´;
inc(I);
while Texto[I] <> ´*´ do
begin
if Texto[I] = ´|´ then
break;
monta := monta + Texto[I];
inc(I);
end;
result := monta;
end;
begin
if OpenDialog1.Execute then
begin
Screen.Cursor := crHourGlass;
TBLOrg.Open;
// inicio -->> linhas que eu inseri para resgatar o código da loja (primeiro campo) e apagar os registros da TBLOrg que contenha essa cod
AssignFile(Arq, OpenDialog1.FileName);
ReadLn(Arq,Texto);
i:=0;
vCodLoj:=MontaVariavel;
TBLOrg.Filtered:=False;
TBLOrg.Filter:=´COD_LOJA=(´´´+vCodLoj+´´´)´;
TBLOrg.Filtered:=True;
TBLOrg.First;
While not TBLOrg.isEmpty do
TBLOrg.Delete;
TBLOrg.Filtered:=False;
CloseFile(Arq);
// fim ---
AssignFile(Arq, OpenDialog1.FileName);
ReadLn(Arq,Texto);
if not EOF(Arq) then
repeat
ReadLn(Arq,Texto);
with TBLOrg do
begin
Insert;
i := 0;
FieldByName(´COD_LOJA´).AsString := MontaVariavel;
FieldByName(´COD_VEICULO´).AsString := MontaVariavel;
FieldByName(´DESCRICAO´).AsString := MontaVariavel;
FieldByName(´COR´).AsString := MontaVariavel;
FieldByName(´ANO´).AsString := MontaVariavel;
FieldByName(´COD_ANO´).AsString := MontaVariavel;
FieldByName(´VALOR´).AsString := MontaVariavel;
Post;
end;
until EOF(Arq);
CloseFile(Arq);
TBLOrg.Active:=False;
TBLOrg.Active:=True;
Screen.Cursor := crDefault;
end;
QNomLoj.Active:=False;
QNomLoj.Active:=True;
Inicio; // procedure do para limpar alguns componentes
ExibirValores; // procedure para exibir valores
end;[/b:0190a358fe]
Se alguém estiver apto a me ajudar ficarei muito feliz! :D
Grande abraço e Best Regards!
Wagner Web
Wagner Web
Curtir tópico
+ 0
Responder
Posts
11/11/2003
Aroldo Zanela
Colega,
Cola um fragmento do arquivo aqui pra gente economizar tempo.
Cola um fragmento do arquivo aqui pra gente economizar tempo.
Responder
Gostei + 0
13/11/2003
Wagner Web
[quote:505b7901a9=´Aroldo Zanela´]Colega,
Cola um fragmento do arquivo aqui pra gente economizar tempo.[/quote:505b7901a9]
yah! Já consegui resolver... :D
Obrigado pelo toque Aroldo, da próxima vez eu farei isso, ok?...
Desculpe-me pelo não conhecimento de certas rotinas aqui no fórum.
Grande abraço!
Wagner
Cola um fragmento do arquivo aqui pra gente economizar tempo.[/quote:505b7901a9]
yah! Já consegui resolver... :D
Obrigado pelo toque Aroldo, da próxima vez eu farei isso, ok?...
Desculpe-me pelo não conhecimento de certas rotinas aqui no fórum.
Grande abraço!
Wagner
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)