Quizás este otro que es más corto te ayude más.
Código Delphi
[-]Procedure Leer_Incidencias();
Var
F :TextFile;
S :string;
cIncidencia:String;
cCli:String;
dFecha:TDate;
begin
cNomFicIncide:='Inc010'+Vendedor+cTipFileim;
cNomFicIncide:=cCaminoTerminales + cNomFicIncide;
if FileExists(cNomFicIncide) then
begin
AssignFile(F, cNomFicIncide);
Reset(F);
While not Eof(F) Do
begin
Readln(F, S);
cCli :=Trim(Copy(S,1,10));
dFecha:=Invierte_Fecha(Copy(S,13,10));
if Not DmTerm.BusInci.FindKey([cCli,Serie]) then
begin
DmTerm.PInciCli.Append;
DmTerm.PInciCliCodClient.Value := Trim(Copy(S,1,10));
if DmTerm.QrClient.Locate('Codigo',Trim(Copy(S,0,10)),[]) then
DmTerm.PInciCliNombre.Value := DmTerm.QrClientBuscar.Value
else
DmTerm.PInciCliNombre.Value := 'No encontrado';
DmTerm.PInciCliCodigo.Value := Copy(S,11,2);
Case StrToInt(Copy(S,11,2)) of
01:cIncidencia:=AInciden[01];
02:cIncidencia:=AInciden[02];
03:cIncidencia:=AInciden[03];
04:cIncidencia:=AInciden[04];
05:cIncidencia:=AInciden[05];
06:cIncidencia:=AInciden[06];
07:cIncidencia:=AInciden[07];
08:cIncidencia:=AInciden[08];
09:cIncidencia:=AInciden[09];
10:cIncidencia:=AInciden[10];
11:cIncidencia:=AInciden[11];
end;
DmTerm.PInciCliIncidencia.Value := cIncidencia;
DmTerm.PInciCliFecha.Value :=Invierte_Fecha(Copy(S,13,10));
DmTerm.PInciCliHora.Value :=StrToTime(Copy(S,24,5));
DmTerm.PInciCliObservaciones.Value:=Copy(S,29,60);
DmTerm.PInciCli.Post;
end;
end;
CloseFile(F);
end;
end;
Un Saludo.