Erro I/O 32. - Fórum DevMedia
Erro I/O 32.
O que está errado na instrução abaixo. A minha intenção na procedure abaixo é que a hora que for encontrado a linha MUDOU CONSIGNATARIA grave o nome do arquivo que vai estar na variável Recebe e assim sucessivamente. É preciso fazer isso porque grava-se o nome do banco (Banco do Brasil, Bradesco, Itaú etc....) que está na variável Recebe com os seus respectivos registros e assim sucessivamente para outros bancos (Banco do Brasil, Bradesco, Itaú etc....). Se alguém puder ajudar-me.
procedure TFmrImportExport.BitBtn7Click(Sender: TObject);
Recebe : String;
F      : TextFile;
A      : STRING;
B      : String;
//  txt : TStrings;
Recebe := ClientDataSet1NumericoCPF.AsString;
A      := ClientDataSet1Matricula.AsString;
B      := ClientDataSet1Nome.AsString;
If (ClientDataSet1Nome.AsString = ´MUDOU CONSIGNATARIA´) then
AssignFile(f,´c:\´+recebe+´.txt´);
AssignFile(f,´C:\Teste.txt´);
Writeln(f,A,b);
:idea: [color=blue:f4058be923]Mensagem alterada por oTTo. Usado BBCode pra facilitar a leitura.[/color:f4058be923]
Oziasl
Não sei se vai resolver, mas tem um ´end´ a mais.
Desculpe-me, li errado. Se encontrar algo te respondo.
Aí irmão, existem 2 pontos na sua rotina que me geraram uma dúvida, mas vou perguntar pra você antes de afirmar qualquer coisa:
[b:cde49dff10]//Porque você não colocou aqui esse comando: [color=red:cde49dff10]ClientDataSet1.next;[/color:cde49dff10]? quando sua condição cai aqui, ele não passa para o próximo registro, ou seja, você ficaria preso no seu While, não?[/b:cde49dff10] :roll:
Writeln(F, A,B);
[b:cde49dff10]//Provavelmente o erro I/O 32 ocorre pq você não fecha o arquivo aqui... Você deu um AssignFile, Rewrite, Writeln... porém não fechou o arquivo ao final da operação, creio que aqui deveria ter um [color=red:cde49dff10]CloseFile(F);[/color:cde49dff10][/b:cde49dff10] :D