Re: [delphi-br] Firebird não atualiza
Bom dia Stainle2003 quando preciso importar dados TXT para um CDS ... clientDataSet eu uso assim um Componente ClientDataSet um DataSource ... um OpenDialog ... um Edit 2 button(Gerar Dados no CDS e Localizar o Arquivo TXT) e um DBGrid. OnClick do Button para Localizar o Arquivo TXT OpenDialog1.Execute ; edit1.text := OpenDialog1.FileName ; no clique do Button para Gerar Dados no CDS var texto : TStringList; i,total : integer; begin ClientDataSet1.Open ; texto := TStringList.create ; texto.LoadFromFile(Edit1.Text) ; texto.Text := trim(texto.Text) ; for i := 0 to texto.Count -1 do begin ClientDataSet1.Insert; ClientDataSet1NOME.AsString := trimRight(copy(texto[i],01,45)); ClientDataSet1N_DOC.AsString := TrimRight(copy(texto[i],45,59)); ClientDataSet1ENDERECO.AsString := TrimRight(copy(texto[i],66,120)); ClientDataSet1BAIRRO.AsString := TrimRight(copy(texto[i],119,149)); ClientDataSet1CEP.AsString := TrimRight(copy(texto[i],150,159)) ; ClientDataSet1.post ; end; texto.Free ; total := ClientDataSet1.RecordCount ; ShowMessage('Total de Registros Importados: ' + inttostr(total)) ; Espero ter ajudado ... Luciano Angelini Prefeitura de Lupionopolis stainle2003 escreveu: Amigos, estou com Delphi 7 lendo arquivos textos e tentando atualizar tabelas no Firebird 1.5, leio os textos e coloco num CDS que está ligado a um Provider que por sua vez está ligado ao SqlDataSet e este ao SQLConnection(DBExpress), algumas tabelas são atualizadas outras não, a configuração do DSP estão todas iguais, não uso Transaction, não sei se precisa, estou perdido, se alguem puder ajudar desde já agradeço. Stainle, segue abaixo o codigo que utilizo: if FileExists('c:\remoto\descon\txtdes.txt') then begin Dados.CDSDes.First; While not (Dados.CDSDes.Eof) do begin Dados.CDSDes.Delete; end; Dados.CDSDes.ApplyUpdates(0); AssignFile(aa, 'c:\remoto\descon\txtdes.txt'); reset(aa); While not eof(aa) do begin readln(aa, linho); if Dados.CDSDes.FindKey([copy(linho, 1, 8)]) then begin Dados.CDSDes.Edit; Dados.CDSDesRFornece.Value := copy(linho, 9, 20); Dados.CDSDes.Post; Dados.CDSDes.ApplyUpdates(0); end else begin Dados.CDSDes.Insert; Dados.CDSDesRNrolinha.Value := copy(linho, 1, 8); Dados.CDSDesRFornece.Value := copy(linho, 9, 20); Dados.CDSDes.Post; Dados.CDSDes.ApplyUpdates(0); end; end;
Re: [delphi-br] Firebird não atualiza
entendi o que você faz; eu consigo alimentar o CDS, o problema está quando mando para o Firebird 1.5, não sei se preciso ou não usar Transaction, o que acontece é que nem todas as tabelas vão para o Banco, é este o meu problema, de qualquer forma grato pela atenção. Stainle --- Em sex, 14/11/08, Luciano Angelini - uol [EMAIL PROTECTED] escreveu: De: Luciano Angelini - uol [EMAIL PROTECTED] Assunto: Re: [delphi-br] Firebird não atualiza Para: delphi-br@yahoogrupos.com.br Data: Sexta-feira, 14 de Novembro de 2008, 9:25 Bom dia Stainle2003 quando preciso importar dados TXT para um CDS ... clientDataSet eu uso assim um Componente ClientDataSet um DataSource ... um OpenDialog ... um Edit 2 button(Gerar Dados no CDS e Localizar o Arquivo TXT) e um DBGrid. OnClick do Button para Localizar o Arquivo TXT OpenDialog1. Execute ; edit1.text := OpenDialog1. FileName ; no clique do Button para Gerar Dados no CDS var texto : TStringList; i,total : integer; begin ClientDataSet1. Open ; texto := TStringList. create ; texto.LoadFromFile( Edit1.Text) ; texto.Text := trim(texto.Text) ; for i := 0 to texto.Count -1 do begin ClientDataSet1. Insert; ClientDataSet1NOME. AsString := trimRight(copy( texto[i], 01,45)); ClientDataSet1N_ DOC.AsString := TrimRight(copy( texto[i], 45,59)); ClientDataSet1ENDER ECO.AsString := TrimRight(copy( texto[i], 66,120)); ClientDataSet1BAIRR O.AsString := TrimRight(copy( texto[i], 119,149)) ; ClientDataSet1CEP. AsString := TrimRight(copy( texto[i], 150,159)) ; ClientDataSet1. post ; end; texto.Free ; total := ClientDataSet1. RecordCount ; ShowMessage( 'Total de Registros Importados: ' + inttostr(total) ) ; Espero ter ajudado ... Luciano Angelini Prefeitura de Lupionopolis stainle2003 escreveu: Amigos, estou com Delphi 7 lendo arquivos textos e tentando atualizar tabelas no Firebird 1.5, leio os textos e coloco num CDS que está ligado a um Provider que por sua vez está ligado ao SqlDataSet e este ao SQLConnection( DBExpress) , algumas tabelas são atualizadas outras não, a configuração do DSP estão todas iguais, não uso Transaction, não sei se precisa, estou perdido, se alguem puder ajudar desde já agradeço. Stainle, segue abaixo o codigo que utilizo: if FileExists(' c:\remoto\ descon\txtdes. txt') then begin Dados.CDSDes. First; While not (Dados.CDSDes. Eof) do begin Dados.CDSDes. Delete; end; Dados.CDSDes. ApplyUpdates( 0); AssignFile(aa, 'c:\remoto\descon\ txtdes.txt' ); reset(aa); While not eof(aa) do begin readln(aa, linho); if Dados.CDSDes. FindKey([ copy(linho, 1, 8)]) then begin Dados.CDSDes. Edit; Dados.CDSDesRFornec e.Value := copy(linho, 9, 20); Dados.CDSDes. Post; Dados.CDSDes. ApplyUpdates( 0); end else begin Dados.CDSDes. Insert; Dados.CDSDesRNrolin ha.Value := copy(linho, 1, 8); Dados.CDSDesRFornec e.Value := copy(linho, 9, 20); Dados.CDSDes. Post; Dados.CDSDes. ApplyUpdates( 0); end; end; Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]
RE: [delphi-br] Firebird não atualiza
Putz ... me desculpem coloquei o exemplo errado . esse é pra converter txt para xml foi mal To: [EMAIL PROTECTED]: [EMAIL PROTECTED]: Fri, 14 Nov 2008 09:25:38 -0200Subject: Re: [delphi-br] Firebird não atualiza Bom dia Stainle2003 quando preciso importar dados TXT para um CDS ... clientDataSet eu uso assim um Componente ClientDataSet um DataSource ... um OpenDialog ... um Edit2 button(Gerar Dados no CDS e Localizar o Arquivo TXT) e um DBGrid.OnClick do Button para Localizar o Arquivo TXTOpenDialog1.Execute ;edit1.text := OpenDialog1.FileName ;no clique do Button para Gerar Dados no CDSvartexto : TStringList;i,total : integer;beginClientDataSet1.Open ;texto := TStringList.create ;texto.LoadFromFile(Edit1.Text) ;texto.Text := trim(texto.Text) ;for i := 0 to texto.Count -1 dobeginClientDataSet1.Insert;ClientDataSet1NOME.AsString := trimRight(copy(texto[i],01,45));ClientDataSet1N_DOC.AsString := TrimRight(copy(texto[i],45,59));ClientDataSet1ENDERECO.AsString := TrimRight(copy(texto[i],66,120));ClientDataSet1BAIRRO.AsString := TrimRight(copy(texto[i],119,149));ClientDataSet1CEP.AsString := TrimRight(copy(texto[i],150,159)) ;ClientDataSet1.post ;end;texto.Free ;total := ClientDataSet1.RecordCount ;ShowMessage('Total de Registros Importados: ' + inttostr(total)) ;Espero ter ajudado ...Luciano AngeliniPrefeitura de Lupionopolisstainle2003 escreveu: Amigos, estou com Delphi 7 lendo arquivos textos e tentando atualizar tabelas no Firebird 1.5, leio os textos e coloco num CDS que está ligado a um Provider que por sua vez está ligado ao SqlDataSet e este ao SQLConnection(DBExpress), algumas tabelas são atualizadas outras não, a configuração do DSP estão todas iguais, não uso Transaction, não sei se precisa, estou perdido, se alguem puder ajudar desde já agradeço. Stainle, segue abaixo o codigo que utilizo: if FileExists('c:\remoto\descon\txtdes.txt') then begin Dados.CDSDes.First; While not (Dados.CDSDes.Eof) do begin Dados.CDSDes.Delete; end; Dados.CDSDes.ApplyUpdates(0); AssignFile(aa, 'c:\remoto\descon\txtdes.txt'); reset(aa); While not eof(aa) do begin readln(aa, linho); if Dados.CDSDes.FindKey([copy(linho, 1, 8)]) then begin Dados.CDSDes.Edit; Dados.CDSDesRFornece.Value := copy(linho, 9, 20); Dados.CDSDes.Post; Dados.CDSDes.ApplyUpdates(0); end else begin Dados.CDSDes.Insert; Dados.CDSDesRNrolinha.Value := copy(linho, 1, 8); Dados.CDSDesRFornece.Value := copy(linho, 9, 20); Dados.CDSDes.Post; Dados.CDSDes.ApplyUpdates(0); end; end; _ Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver offline. Conheça o MSN Mobile! http://mobile.live.com/signup/signup2.aspx?lc=pt-br [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Firebird não atualiza
Amigos, estou com Delphi 7 lendo arquivos textos e tentando atualizar tabelas no Firebird 1.5, leio os textos e coloco num CDS que está ligado a um Provider que por sua vez está ligado ao SqlDataSet e este ao SQLConnection(DBExpress), algumas tabelas são atualizadas outras não, a configuração do DSP estão todas iguais, não uso Transaction, não sei se precisa, estou perdido, se alguem puder ajudar desde já agradeço. Stainle, segue abaixo o codigo que utilizo: if FileExists('c:\remoto\descon\txtdes.txt') then begin Dados.CDSDes.First; While not (Dados.CDSDes.Eof) do begin Dados.CDSDes.Delete; end; Dados.CDSDes.ApplyUpdates(0); AssignFile(aa, 'c:\remoto\descon\txtdes.txt'); reset(aa); While not eof(aa) do begin readln(aa, linho); if Dados.CDSDes.FindKey([copy(linho, 1, 8)]) then begin Dados.CDSDes.Edit; Dados.CDSDesRFornece.Value := copy(linho, 9, 20); Dados.CDSDes.Post; Dados.CDSDes.ApplyUpdates(0); end else begin Dados.CDSDes.Insert; Dados.CDSDesRNrolinha.Value := copy(linho, 1, 8); Dados.CDSDesRFornece.Value := copy(linho, 9, 20); Dados.CDSDes.Post; Dados.CDSDes.ApplyUpdates(0); end; end;