For i :=0 to StringGrid1.RowCount-1 do
begin
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('exec proc_StockTask InsertBody,'''','''+stringgrid1.Cells[0,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.cells[1,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[2,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[3,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[4,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[5,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[6,row]+'''');
adoquery2.ExecSQL;
end;
CREATE PROCEDURE proc_StockTask
@flag varchar (10)='',@进货单号 varchar(20)='',@店内码 varchar(20)='',@条码 varchar(20)='', @商品名称 varchar(200)='',
@规格 varchar(200)='',@供应商 varchar(10)='',@数量 varchar(10)='',@单价 varchar(10)=''
as
if @Flag='InsertBody' ---添加明细
begin
if not exists (Select * From bill_calgai where 进货单号=@进货单号 and 店内码=@店内码)
Insert Into bill_calgai (店内码,条码,商品名称,规格,供应商,数量,单价)
values (@店内码,@条码,@商品名称,@规格,@供应商,@数量,@单价)
else
Update bill_calgai set 店内码=@店内码, @条码=@条码,商品名称=@商品名称,规格=@规格,供应商=@供应商,数量=@数量,单价=@单价
where 进货单号 =@进货单号 and 店内码=@店内码
end
begin
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('exec proc_StockTask InsertBody,'''','''+stringgrid1.Cells[0,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.cells[1,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[2,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[3,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[4,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[5,row]+'''');
adoquery2.SQL.Add(','''+stringgrid1.Cells[6,row]+'''');
adoquery2.ExecSQL;
end;
CREATE PROCEDURE proc_StockTask
@flag varchar (10)='',@进货单号 varchar(20)='',@店内码 varchar(20)='',@条码 varchar(20)='', @商品名称 varchar(200)='',
@规格 varchar(200)='',@供应商 varchar(10)='',@数量 varchar(10)='',@单价 varchar(10)=''
as
if @Flag='InsertBody' ---添加明细
begin
if not exists (Select * From bill_calgai where 进货单号=@进货单号 and 店内码=@店内码)
Insert Into bill_calgai (店内码,条码,商品名称,规格,供应商,数量,单价)
values (@店内码,@条码,@商品名称,@规格,@供应商,@数量,@单价)
else
Update bill_calgai set 店内码=@店内码, @条码=@条码,商品名称=@商品名称,规格=@规格,供应商=@供应商,数量=@数量,单价=@单价
where 进货单号 =@进货单号 and 店内码=@店内码
end
adoquery2.Close;
adoquery2.SQL.text := 'Select * from bill_calgai where 进货单号 = ''' + stringgrid1.Cells[0,row]+ '''';
adoquery2.open; For i :=0 to StringGrid1.RowCount-1 do
begin
adoquery2.append;
adoquery2.FieldByName('进货单号').AsString := stringgrid1.Cells[0,row];
.......
AdoQuery2.Post;
end;