Fórum alterar informações ao importar txt #212234
06/02/2004
0
Amigos
Como faria para alterar a informação de um campo no momento da importação de um arquivo txt. exemplo quero alterar o conteudo da linha em vermelho quando for 1 setar S quando for 2 setar N
antes de importar para o banco de dados.
segue projeto teste para analises
grato
att
Emerson
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, DBCtrls, Mask, Gauges, DB;
type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
Edit1: TEdit;
Label3: TLabel;
SpeedButton1: TSpeedButton;
OpenDialog1: TOpenDialog;
Gauge1: TGauge;
DataSource1: TDataSource;
procedure BitBtn1Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
var
txt:TextFile;
Linha:string;
cont : integer;
begin
AssignFile(Txt,edit1.Text);
Reset(Txt); //abre o arquivo para leitura
cont := 0;
gauge1.MinValue := 0;
While not Eof(Txt) do
begin
ReadLn(txt,Linha);
cont := cont + 1;
gauge1.MaxValue := cont;
end;
begin
AssignFile(Txt,edit1.Text);
Reset(Txt); //abre o arquivo para leitura
While not Eof(Txt) do
begin
ReadLn(txt,Linha);
gauge1.AddProgress(1);
DataModule2.gpsfunc.Insert;
datamodule2.gpsfunccodi_emp.Value:=StrToint(copy(linha,06,03)); //
datamodule2.gpsfunccodi_fun.Value:=copy(linha,09,05);
[color=red:5c95b22fed]datamodule2.gpsfuncc_custo.Value:=copy(linha,14,06);[/color:5c95b22fed]
datamodule2.gpsfunccodi_sit.Value:=copy(linha,20,01);
datamodule2.gpsfunccartao_ponto.Value:=copy(linha,21,05);
datamodule2.gpsfuncnome.Value:=copy(linha,26,30);
datamodule2.gpsfuncendereco.Value:=copy(linha,56,30);
datamodule2.gpsfunccidade.Value:=copy(linha,86,30);
datamodule2.gpsfuncuf.Value:=copy(linha,101,02);
datamodule2.gpsfunccep.Value:=copy(linha,103,05);
datamodule2.gpsfunccbo.Value:=copy(linha,108,05);
datamodule2.gpsfuncnome_car.Value:=copy(linha,113,15);
datamodule2.gpsfuncctps.Value:=copy(linha,128,13);
datamodule2.gpsfuncpis.Value:=copy(linha,141,11);
datamodule2.gpsfunccic.Value:=copy(linha,152,11);
datamodule2.gpsfuncfgts.Value:=copy(linha,163,12);
datamodule2.gpsfunccontrib_banco.Value:=copy(linha,175,10);
datamodule2.gpsfunccodi_banco.Value:=copy(linha,187,03);
datamodule2.gpsfuncadmissao.Value:=copy(linha,190,06);
datamodule2.gpsfuncdataopcfgts.Value:=copy(linha,196,06);
datamodule2.gpsfuncsalario.Value:=copy(linha,280,05) + ´0´;
datamodule2.gpsfunc.Post;
end;
application.MessageBox(´Importação Realizada com sucesso´,´conclused´,MB_OK+MB_ICONINFORMATION);
closefile(txt)
end;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if opendialog1.Execute then
begin
Edit1.Text := opendialog1.FileName;
Edit1.SetFocus;
end;
end;
end.
Como faria para alterar a informação de um campo no momento da importação de um arquivo txt. exemplo quero alterar o conteudo da linha em vermelho quando for 1 setar S quando for 2 setar N
antes de importar para o banco de dados.
segue projeto teste para analises
grato
att
Emerson
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, DBCtrls, Mask, Gauges, DB;
type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
Edit1: TEdit;
Label3: TLabel;
SpeedButton1: TSpeedButton;
OpenDialog1: TOpenDialog;
Gauge1: TGauge;
DataSource1: TDataSource;
procedure BitBtn1Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
var
txt:TextFile;
Linha:string;
cont : integer;
begin
AssignFile(Txt,edit1.Text);
Reset(Txt); //abre o arquivo para leitura
cont := 0;
gauge1.MinValue := 0;
While not Eof(Txt) do
begin
ReadLn(txt,Linha);
cont := cont + 1;
gauge1.MaxValue := cont;
end;
begin
AssignFile(Txt,edit1.Text);
Reset(Txt); //abre o arquivo para leitura
While not Eof(Txt) do
begin
ReadLn(txt,Linha);
gauge1.AddProgress(1);
DataModule2.gpsfunc.Insert;
datamodule2.gpsfunccodi_emp.Value:=StrToint(copy(linha,06,03)); //
datamodule2.gpsfunccodi_fun.Value:=copy(linha,09,05);
[color=red:5c95b22fed]datamodule2.gpsfuncc_custo.Value:=copy(linha,14,06);[/color:5c95b22fed]
datamodule2.gpsfunccodi_sit.Value:=copy(linha,20,01);
datamodule2.gpsfunccartao_ponto.Value:=copy(linha,21,05);
datamodule2.gpsfuncnome.Value:=copy(linha,26,30);
datamodule2.gpsfuncendereco.Value:=copy(linha,56,30);
datamodule2.gpsfunccidade.Value:=copy(linha,86,30);
datamodule2.gpsfuncuf.Value:=copy(linha,101,02);
datamodule2.gpsfunccep.Value:=copy(linha,103,05);
datamodule2.gpsfunccbo.Value:=copy(linha,108,05);
datamodule2.gpsfuncnome_car.Value:=copy(linha,113,15);
datamodule2.gpsfuncctps.Value:=copy(linha,128,13);
datamodule2.gpsfuncpis.Value:=copy(linha,141,11);
datamodule2.gpsfunccic.Value:=copy(linha,152,11);
datamodule2.gpsfuncfgts.Value:=copy(linha,163,12);
datamodule2.gpsfunccontrib_banco.Value:=copy(linha,175,10);
datamodule2.gpsfunccodi_banco.Value:=copy(linha,187,03);
datamodule2.gpsfuncadmissao.Value:=copy(linha,190,06);
datamodule2.gpsfuncdataopcfgts.Value:=copy(linha,196,06);
datamodule2.gpsfuncsalario.Value:=copy(linha,280,05) + ´0´;
datamodule2.gpsfunc.Post;
end;
application.MessageBox(´Importação Realizada com sucesso´,´conclused´,MB_OK+MB_ICONINFORMATION);
closefile(txt)
end;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if opendialog1.Execute then
begin
Edit1.Text := opendialog1.FileName;
Edit1.SetFocus;
end;
end;
end.
Eme_matos
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)