Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > ошибка после окончания выполнения процедуры


Автор: Martisha 4.12.2008, 11:23
выполняю процедуру:
Код

procedure TForm1.Button4Click(Sender: TObject);
Var  kol:Integer;
     kol1:Integer;
     i,j:Integer;
     FileText:String;
begin
OraTable1.Active:=True;
kol:=Form1.ListBox1.Count;
  for i:=0 to kol do
    begin
      FileText:=Form1.ListBox1.Items[i];
      ListBox2.Items.LoadFromFile(FileText);
        kol1:=Form1.ListBox2.Count;
              Form1.OraStoredProc2.Prepare;
              Form1.OraStoredProc2.ExecProc;
          for j:=2 to kol1-3 do
            begin
              if Length(ListBox2.Items[j])<>0 then
              begin
              OraTable1.Insert;
              OraTable1.FieldByName('allfile').AsString:=ListBox2.Items[j];
              OraTable1.Post;
              end;
            end;
            Form1.OraStoredProc1.Prepare;
            Form1.OraStoredProc1.ExecProc;
     end;
end;


после завершения процедуры выходит ошибка, все данные вносятся в бд, вроде все работает,помогите понять почему ошибка вылазит

вот ошибка:
 
http://pic.ipicture.ru/uploads/081204/FjlI5L2rxV.jpg

Автор: Matematik 4.12.2008, 11:35
Код

  for i:=0 to kol-1 do

Автор: Данкинг 4.12.2008, 11:45
Нумерация строк в ListBox  и иже с ним начинается с 0. smile 

Автор: Martisha 4.12.2008, 12:11
Цитата(Данкинг @  4.12.2008,  11:45 Найти цитируемый пост)
Нумерация строк в ListBox  и иже с ним начинается с 0

знаю, просто во втором случае мне не все строки нужны smile 


Matematik, 
сейчас попробую)

Автор: vladimir74 4.12.2008, 13:43
вот тут у тебя ошибка...
Код

kol:=Form1.ListBox1.Count;
  for i:=0 to kol do

должно быть так.
Код

kol:=Form1.ListBox1.Count;
  for i:=0 to kol-1 do


Автор: bems 4.12.2008, 13:43
Цитата(Martisha @  4.12.2008,  12:11 Найти цитируемый пост)
во втором случае мне не все строки нужны 
а в первом ты обращаешся к несуществующему элементу на последней итерации

Автор: vladimir74 4.12.2008, 13:45
Цитата(Данкинг @  4.12.2008,  09:45 Найти цитируемый пост)
Нумерация строк в ListBox  и иже с ним начинается с 0.

вот именно по этому и должно быть  kol-1  smile  smile 

Автор: Martisha 4.12.2008, 13:52
vladimir74, 
bems, 
vladimir74, 
дадада...уже поняла))))
 smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)