Доброе время суток. Столкнулся с такой проблемой.
У меня выборка происходит в цикле,запрос с 4 динамическими параметрами,потому в цикле.
Код:
col:=2;
while Sheet.GetCellObject(col,3).Text <> '' do
begin
cgroup:=StrToInt(Sheet.GetCellObject(col,3).Text);
subj:=Sheet.GetCellObject(col,2).Text;
with IBQuery2 do
begin
Close;
SQL.Clear;
SQL.Text:='';
ParamByName('cgroup').AsInteger:=cgroup;
ParamByName('subj').AsString:=subj;
ParamByName('code').AsString:=code;
Active:=true;
Open;
end;
SetCellText(Sheet,col,4,IBQuery2.FieldByName('allh').AsString);
col:=col+1;
end;Судя по DBGrid IBQuery сохраняет все записи, т.е. все три.. Но в цикле добавляет 3 раза последнюю в таблицу.. Подскажите как этого избежать?
Решение:
Active:=true;
Open;
А зачем дважды открытие вызывать?
Это же аналоги.