Ao exemplo bão aí ó! Dá uma estudada no código e atente para a string que é passada como parâmetro por referência na função partetexto. é essa a alma deste rotina.
function ParteTexto(var Frase: string; Parte: string): string; // // Retorna uma parte de um texto antes de um caractere especificado // var i,max: integer; buff: string; begin i := 1; buff := ''; max := length(parte); while (i <= length(Frase)) and (buff <> parte) do begin buff := buff + Frase[i]; if length(buff) > max then buff := copy(buff,2,max); inc(i); end; if buff = Parte then begin Result := copy(Frase,1,i - max -1); Frase := copy(Frase,i,length(Frase)+1 -i); end else begin Result := Frase; Frase := ''; end; end; procedure TfDlgImportaDados.btnImportarClick(Sender: TObject); var qryImportFunc: TQuery; sFile: Textfile; sFileImportFunc, sStrData, sMes, sAno, sDataInicio, sRetornoTrab, sMotivoAfast, sDataInicioAfast, sRetornoTrabAfast : String; sChapaFunc, sBakFileImportFunc: string; vDatabaseFunc : array[0..7] of String; iFoundRegister: integer; begin iCancel := False; sFileImportFunc := eFileName.Text; btnImportar.Visible := False; btnInterromp.Visible := True; pBar.Position := 0; pBar.Max := NumLinhasArq(sFileImportFunc); AssignFile(sFile, sFileImportFunc); Reset(sFile); // qryImportFunc := TQuery.Create(nil); qryImportFunc.Databasename := corporeRM.Databasename; qryImportFunc.SQL.Add('insert into ZVTLMPRODUCAO (CODCOLIGADA, CODFILIAL, MESCOMP, ANOCOMP, CHAPA, PLACA, CODOPERADORA,'); qryImportFunc.SQL.Add('DIASPARADOSFUNC, DIASPARADOSVEIC, CODEVENTO) values (:CODCOLIGADA, :CODFILIAL, :MESCOMP, :ANOCOMP, :CHAPA, :PLACA, :CODOPERADORA,'); qryImportFunc.SQL.Add(':DIASPARADOSFUNC, :DIASPARADOSVEIC, :CODEVENTO)'); qryImportFunc.Prepare; while (not Eof(sFile)) and (not iCancel) do begin ReadLn(sFile, sStrData); // qryImportFunc.ParamByName('CODCOLIGADA').AsInteger := CorporeRM.Coligada;; qryImportFunc.ParamByName('CODFILIAL').AsInteger := Param.Filial; qryImportFunc.ParamByName('MESCOMP').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ParamByName('ANOCOMP').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ParamByName('CHAPA').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ParamByName('PLACA').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ParamByName('CODOPERADORA').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ParamByName('DIASPARADOSFUNC').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ParamByName('DIASPARADOSVEIC').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ParamByName('CODEVENTO').AsString := ParteTexto(sStrData, ';'); qryImportFunc.ExecSQL; pBar.Position := (pBar.Position + 1); Application.ProcessMessages; end; CloseFile(sFile); if FileExists(sFileImportFunc) then begin sBakFileImportFunc := ChangeFileExt(ExtractFileName(sFileImportFunc),'.old'); if FileExists(sBakFileImportFunc) then DeleteFile(sBakFileImportFunc); if not RenameFile(sFileImportFunc,sBakFileImportFunc) then MessageDlg (format('Erro criando arquivo "%s"!',[sBakFileImportFunc]),mtError,[mbOk],0); end; // qryImportFunc.Close; FreeAndNil(qryImportFunc); btnImportar.Visible := False; btnInterromp.Visible := True; end; []s Walter Alves Chagas Junior Projeto e desenvolvimento Telemont Engenharia de telecomunicações [EMAIL PROTECTED] Fone: (31) 3389-8215 Fax: (31) 3389-8200 "Pra que usar OOP, se existe Ctrl+C & Ctrl+V?" > -----Mensagem original----- > De: Francisco Thiago [mailto:[EMAIL PROTECTED] > Enviada em: quarta-feira, 6 de abril de 2005 14:16 > Para: delphi-br@yahoogrupos.com.br > Assunto: [delphi-br] Criar campos no CDS em tempo de execucao 2 > Prioridade: Alta > > > > Pra falar a verdade, eu preciso ler um arquivo separado por ";" > > Alguém sabe uma maneira fácil de se fazer isso? > > > Thiago > ----- Original Message ----- > From: "cchirolli" <[EMAIL PROTECTED]> > To: <delphi-br@yahoogrupos.com.br> > Sent: Wednesday, April 06, 2005 1:49 PM > Subject: [delphi-br] Delphi 2005 x ZeosDbo x PostGreSql > > > > > Olá pessoal, alguém ai usa os compoentes da biblioteca Zeos com > Postgresql? estou com problema de salvamento, quando tento salvar os > dados em uma tabela os dados não são realmente salvos fica com se > tivesse com cacheupdate true, os dados até aparecem no grid mas > quando fecho a aplicação vai tudo pro espaço, so consigo salvar > quando tenho queries que executam um exesql.Alguém pode ma ajudar. > > Obrigado, > Carlos. > > > > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > Para ver as mensagens antigas, acesse: > http://br.groups.yahoo.com/group/delphi-br/messages > > Para falar com o moderador, envie um e-mail para: > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > > > > > > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > Para ver as mensagens antigas, acesse: > http://br.groups.yahoo.com/group/delphi-br/messages > > Para falar com o moderador, envie um e-mail para: > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html