Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.10;
Скачать: CL | DM;

Вниз

Ошибка из-за индекса   Найти похожие ветки 

 
Oleg   (2003-06-18 17:39) [0]

посоветуйте, граждане! вот такой код отрабатывается в лет, но стоит лишь включить индекс, происходит зацикливание - в файл выводится постоянно последняя строка...
if SaveDialog1.Execute then begin
AssignFile(FP, SaveDialog1.FileName);
try
Rewrite(FP);
with Table2 do try
//IndexName:="FIO";
DisableControls;
First;

WHILE NOT EOF DO BEGIN
s_nom:=Fields[5].AsString;
L1:="";
L3:="";
L1:=Fields[0].AsString+"*************"+Fields[5].Asstring;
WriteLn(FP, L1);

WHILE Fields[5].AsString=s_nom DO begin
L3:=Table2.Fields[3].AsString+" / "+ Table2.Fields[4].AsString;
WriteLn(FP, L3);
next;
END;

Writeln(FP, "-------------------------");
end;

finally
EnableControls;
end;
CloseFile(FP);
except
on EInOutError do
MessageDlg("Writing error.", mtError, [mbOk], 0);
end;
end;

как же лечить-то


 
Соловьев ©   (2003-06-18 17:43) [1]


> WHILE Fields[5].AsString=s_nom DO begin
> L3:=Table2.Fields[3].AsString+" / "+ Table2.Fields[4].AsString;
> WriteLn(FP, L3);
> next;
> END;

а что это еще такое?


 
Oleg   (2003-06-18 17:47) [2]

это вывод всех записей, относящихся к Fields[5] - фамилия


 
Соловьев ©   (2003-06-18 17:49) [3]

а зачем там цыкл?


 
SaS13   (2003-06-18 18:17) [4]

индекс сортирует данные таким образом что условие Fields[5].AsString=s_nom всегда верно, и происходит зацикливание
сделай проверку
if Eof then Break;


 
Oleg   (2003-06-18 18:20) [5]

ok, thanks!



Страницы: 1 вся ветка

Текущий архив: 2003.07.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
14-31494
Nox
2003-06-23 02:07
2003.07.10
День программиста


14-31475
Voland777
2003-06-23 18:21
2003.07.10
Помогите,!!! проблемы перехода с Delphi5 на Delphi7


1-31339
Bless
2003-06-26 10:59
2003.07.10
Поменять область видимости метода


3-31080
Тимофеев Илья
2003-06-16 11:30
2003.07.10
Список серверов и баз данных


1-31191
ОРЕН
2003-06-27 21:24
2003.07.10
Вставить строку в чужую программу.