Код: Выделить всё
query := TQuery.Create(nil);
query2 := TQuery.Create(nil);
opentable2(table,TEMP_PROMBASE);
SelectWhere(query,'DISTINCT*',TKMEH,'zakaz = ' + zakaz + ' and xkb59 = "' + detal + '"');
while not query.Eof do
begin
table.Insert;
table.FieldByName('zakaz').AsString := query.FieldByName('zakaz').AsString;
table.FieldByName('detal').AsString := query.FieldByName('xkb59').AsString;
table.FieldByName('kolvo').AsString := IntToStr(Count);
table.FieldByName('oper').AsString := query.FieldByName('noper').AsString;
table.FieldByName('cex').AsString := Copy(query.FieldByName('zehus').AsString,0,2);
shifr := query.FieldByName('xko99').AsString;
table.FieldByName('shifr').AsString := shifr;
if ((Length(shifr) = 2) or (Length(shifr) = 3)) then
begin
table.FieldByName('norma').AsString := query.FieldByName('norma').AsString;
query2.Close;
query2.SQL.Clear;
query2.SQL.Add('SELECT DISTINCT KPZV FROM "' + PZV + '" WHERE KODOB = ' + shifr);
query2.Open; //ошибка на этой строчке
table.FieldByName('pzv').AsString := query2.FieldByName('KPZV').AsString;
query2.Close;
..............................Вот кусок кода
))