Tu sugieres que quede asi??? no hay necesidad de colocar el values???
Código Delphi
[-]
IBDataset2.Close;
Ibdataset2.InsertSQL.Clear;
IBdataset2.InsertSQL.Add('insert into prod_comp(codigo_prod, codigo_comp, item_subcomp, item_subprod) select :1001, codigo_comp, item_subcomp, :1 from subcomp where flag_subcomp = 1');
IBDataset2.Open;
IBDataset2.Active:=true;
Next;