📄 ooutstore.pas
字号:
unit OOutstore;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Unitmb, StdCtrls, Grids, DBGridEh, Buttons, ComCtrls, ExtCtrls,
ToolWin, ImgList, Menus,adodb, FR_Ctrls;
type
TOOutstoreForm = class(TmbForm)
procedure cmdSaveClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cmdPrintClick(Sender: TObject);
private
{ Private declarations }
procedure InsertDetail;override;
public
{ Public declarations }
end;
var
OOutstoreForm: TOOutstoreForm;
implementation
uses datamodule1, report2;
{$R *.dfm}
procedure TOOutstoreForm.InsertDetail;
var
sSql:string;
begin
with dataE2 do
begin
sSql:='( :billid, :itemno, :goodsid, :qty, :price,0,0, :xBillId, :xItemNo,0, :memo1)';
adoCmd.commandtext:='insert into '+myTable+'D values '+sSql;
adoCmd.parameters[0].value:=nBillId;
adoCmd.parameters[1].value:=queryDetail.fieldbyname('itemno').asinteger;
adoCmd.parameters[2].value:=nGoodsId;
adoCmd.parameters[3].value:=nQty;
adoCmd.parameters[4].value:=queryDetail.fieldbyname('price').ascurrency;
adoCmd.parameters[5].value:=queryDetail.fieldbyname('xBillId').asinteger;
adoCmd.parameters[6].value:=queryDetail.fieldbyname('xItemNo').asinteger;
adoCmd.parameters[7].value:=queryDetail.fieldbyname('memo1').asstring;
adoCmd.execute;
//插入或修改onhand
InsertOnhand(nGoodsid,nStoreid,queryDetail.fieldbyname('xBillId').asinteger,queryDetail.fieldbyname('xItemNo').asinteger,-nQty);
end;
end;
procedure TOOutstoreForm.cmdSaveClick(Sender: TObject);
var
sStatus:TRecordStatusset;
sInvono:string;
begin
inherited;
with DataE2 do
begin
queryDetail.First;
while not queryDetail.eof do
begin
sStatus:=queryDetail.RecordStatus;
UpdateBatchDetail(sStatus);
queryDetail.Next;
end;
DeleteDetail;
sInvoNo:=getInvono(mytable,'NEW');
//queryDetail.updatebatch;
if bNew then
InsertIInstore(nTableid,nBillid,nCusid,nEmployid,nStoreid,edtBillDate.date,edtInvoNo.text,edtmemo.text);
end;
end;
procedure TOOutstoreForm.FormShow(Sender: TObject);
begin
inherited;
mySql:='select o.*,s.code,s.name,s.units from O_OUTSTORED o inner join goods s on o.goodsid=s.goodsid where billid= :billid ';
myTable:='O_OUTSTORE';
nTableId:=11;
with DataE2 do
begin
nBillId:=8888888;
if queryDetail.active then queryDetail.close;
querydetail.sql.clear;
queryDetail.sql.add(mySql);
end;
// DatePicker.Date:=now;
end;
procedure TOOutstoreForm.cmdPrintClick(Sender: TObject);
begin
inherited;
sName:='销售开单';
//FormRpt1.Printporder(false);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -