⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datamodule1_b.pas

📁 飞恒进销存(超市批发)管理系统(含源程序) 语言:Delphi 6/7 相关控件:FastReport 2.4以上, Ehlib 3.4以上
💻 PAS
📖 第 1 页 / 共 4 页
字号:
    Adostp1.execproc;

    result:=Adostp1.Parameters[4].value;
end;

procedure TDataE2.InsEvent(appopr,description:string);
begin
  AdoStp1.Close;
  AdoStp1.ProcedureName :='pcdInsEvent;1';
  try
    AdoStp1.Parameters.Refresh;
  except
  end;

  AdoStp1.Parameters[1].value:=myUsrname;
  AdoStp1.Parameters[2].value:=myComputerName;
  AdoStp1.Parameters[3].value:=appopr;
  AdoStp1.Parameters[4].value:=description;
  AdoStp1.ExecProc;
end;

Procedure  TDataE2.DayAuditPayed(Billdate:TdateTime);
begin
    AdoStp1.Close;
    AdoStp1.ProcedureName :='dbo.pcdDayAuditPayed;1';
    try
      AdoStp1.Parameters.Refresh;
      AdoStp1.Parameters[1].value:=BillDate;
    except
    end;
    Adostp1.execproc;
end;

Procedure  TDataE2.DayAuditNoPay(Billdate:TdateTime);
begin
    AdoStp1.Close;
    AdoStp1.ProcedureName :='dbo.pcdDayAuditNoPay;1';
    try
      AdoStp1.Parameters.Refresh;
      AdoStp1.Parameters[1].value:=BillDate;
    except
    end;
    Adostp1.execproc;
end;

Procedure  TDataE2.UpOnhandQty1(nTarGoodsId,nTarStoreId:integer;qty1:real);
begin
    AdoStp1.Close;
    AdoStp1.ProcedureName :='dbo.pcdUpOnhandQty1;1';
    try
      AdoStp1.Parameters.Refresh;
      AdoStp1.Parameters[1].value:=nTarStoreId;
      AdoStp1.Parameters[2].value:=nTarGoodsId;
      AdoStp1.Parameters[3].value:=Qty1;
    except
    end;
    Adostp1.execproc;
end;

procedure TDataE2.InsertIOrder(nBillid,nVendorId,nEmployId:integer;dBillDate:tdatetime;sInvono,sMemo,sTable:string);
begin
    adoCmd.commandtext:='insert into '+sTable+' values ( :BillId, :invono , :Venderid, 0, :billdate, :ddate, :dPlace, :operator, :EmployId, null,null,1,0,0,0, :memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvono;
    adoCmd.parameters[2].value:=nVendorId;
    adoCmd.parameters[3].value:=dBillDate;
    adoCmd.parameters[4].value:=now;
    adoCmd.parameters[5].value:='';
    adoCmd.parameters[6].value:=myUsrName;
    adoCmd.parameters[7].value:=nEmployId;
    adoCmd.parameters[8].value:=sMemo;

    adoCmd.execute;
end;

procedure TDataE2.InsertIInstore(nTblId,nBillid,nVendorId,nEmployId,nStoreId:integer;dBillDate:tdatetime;sInvono,sMemo:string);
begin
    if nTblId=1 then
     adoCmd.commandtext:='insert into I_INSTORE values ( :BillId, :invono , :Venderid, :storeid,0, :billdate, :operator, :EmployId, null,null,0,0,0,0, :memo)'
    else    //outstore
     adoCmd.commandtext:='insert into O_OUTSTORE values ( :BillId, :invono , :Venderid, :storeid,0, :billdate, :operator, :EmployId, 0,null,null,0,0,0,0,0, :memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvoNo;
    adoCmd.parameters[2].value:=nVendorId;
    adoCmd.parameters[3].value:=nStoreId;
    adoCmd.parameters[4].value:=dBillDate;
    adoCmd.parameters[5].value:=myUsrName;
    adoCmd.parameters[6].value:=nEmployid;
    adoCmd.parameters[7].value:=sMemo;

    adoCmd.execute;
end;

procedure TDataE2.InsertIReturn(nBillid,nVendorId,nEmployId,nStoreId,IsRCash:integer;dBillDate:tdatetime;sInvono,sMemo,sChekcNo,sTable:string);
begin
    adoCmd.commandtext:='insert into '+sTable+' values ( :BillId, :invono , :VendorId, :storId,0, :billdate, :operator, :EmployId,0,0, :checkNo, :IsRCash,1, :Memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvoNo;
    adoCmd.parameters[2].value:=nVendorId;
    adoCmd.parameters[3].value:=nStoreId;
    adoCmd.parameters[4].value:=dBillDate;
    adoCmd.parameters[5].value:=myUsrName;
    adoCmd.parameters[6].value:=nEmployid;
    adoCmd.parameters[7].value:='';
    adoCmd.parameters[8].value:=IsRCash;
    adoCmd.parameters[9].value:=sMemo;
    adoCmd.execute;
end;

procedure TDataE2.InsertIPay(nBillid,nCusId,nEmployid,nBankId,nPayTypeId:integer;dBillDate:Tdatetime;sInvoNo,sMemo,sCheckNo,sPayStyle,sTable:string);
begin
    adoCmd.commandtext:='insert into '+sTable+' values ( :BillId, :invono ,:Cusid, 0, :billdate, :operator, :EmployId, :paytypeid, :bankId, :paystyle, :checkNo,null,null,0,0, :Memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvoNo;
    adoCmd.parameters[2].value:=nCusId;
    adoCmd.parameters[3].value:=dBillDate;
    adoCmd.parameters[4].value:=myUsrName;
    adoCmd.parameters[5].value:=nEmployid;
    adoCmd.parameters[6].value:=nPayTypeid;
    adoCmd.parameters[7].value:=nBankid;
    adoCmd.parameters[8].value:=sPayStyle;
    adoCmd.parameters[9].value:=sCheckNo;
    adoCmd.parameters[10].value:=sMemo;
    adoCmd.execute;
end;

//其它收入
procedure TDataE2.InsertDIncome(nBillid,nEmployid,nBankId,nPayTypeId:integer;dBillDate:Tdatetime;sInvoNo,sMemo,sCheckNo,sTable:string);
begin
    adoCmd.commandtext:='insert into '+sTable+' values ( :BillId, :invono , 0, :billdate, :operator, :EmployId, :paytypeid, :bankId, :checkNo, :Memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvoNo;
    adoCmd.parameters[2].value:=dBillDate;
    adoCmd.parameters[3].value:=myUsrName;
    adoCmd.parameters[4].value:=nEmployid;
    adoCmd.parameters[5].value:=nPayTypeid;
    adoCmd.parameters[6].value:=nBankid;
    adoCmd.parameters[7].value:=sCheckNo;
    adoCmd.parameters[8].value:=sMemo;
    adoCmd.execute;
end;

//盘点,
procedure TDataE2.InsertDCheck(nBillid,nStoreid:integer;dBillDate:tdatetime;sInvono,sMemo:string);
begin
    adoCmd.commandtext:='insert into d_check values ( :BillId, :invono ,  :billdate, :operator, :StoreId, 0, :memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvono;
    adoCmd.parameters[2].value:=dBillDate;
    adoCmd.parameters[3].value:=myUsrName;
    adoCmd.parameters[4].value:=nStoreId;
    adoCmd.parameters[5].value:=sMemo;

    adoCmd.execute;
end;

//盘点,
procedure TDataE2.InsertDMove(nBillid,nStoreid,nOutStoreId:integer;dBillDate:tdatetime;sInvono,sMemo:string);
begin
    adoCmd.commandtext:='insert into d_Move values ( :BillId, :invono ,  :billdate, :operator, :OutStoreId, :StoreId, 0, :memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvono;
    adoCmd.parameters[2].value:=dBillDate;
    adoCmd.parameters[3].value:=myUsrName;
    adoCmd.parameters[4].value:=nOutStoreId;
    adoCmd.parameters[5].value:=nStoreId;
    adoCmd.parameters[6].value:=sMemo;

    adoCmd.execute;
end;

//其它出入库
procedure TDataE2.InsertDInOut(nBillid,nStoreid,nEmployid,nIoTypeId:integer;dBillDate:TDatetime;sInvono,sMemo:string);
begin
    adoCmd.commandtext:='insert into d_InOut values ( :BillId, :invono , :billdate, :StoreId, :TypeId, :operator , :employId,0,0, :rsunit, :memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvono;
    adoCmd.parameters[2].value:=dBillDate;
    adoCmd.parameters[3].value:=nStoreId;
    adoCmd.parameters[4].value:=nIoTypeId;
    adoCmd.parameters[5].value:=myUsrName;
    adoCmd.parameters[6].value:=nEmployId;
    adoCmd.parameters[7].value:='';
    adoCmd.parameters[8].value:=sMemo;

    adoCmd.execute;
end;

procedure TDataE2.InsertIBuildTear(bNew:boolean;nBillid,nStoreId,nOutStoreId,nEmployId,GoodsId:integer;dBillDate:tdatetime;sInvono,sMemo,sTable:string;nQty,nPrice:real);
begin
  if bNew then
  begin
    adoCmd.commandtext:='insert into '+sTable+' values ( :BillId, :invono , :storId, :outstoreid, :billdate, :operator, :EmployId, :Goodsid, :qty, :price, :BillAmt, :Memo)';
    adoCmd.parameters[0].value:=nBillId;
    adoCmd.parameters[1].value:=sInvoNo;
    adoCmd.parameters[2].value:=nStoreId;
    adoCmd.parameters[3].value:=nOutStoreId;
    adoCmd.parameters[4].value:=dBillDate;
    adoCmd.parameters[5].value:=myUsrName;
    adoCmd.parameters[6].value:=nEmployid;
    adoCmd.parameters[7].value:=GoodsId;
    adoCmd.parameters[8].value:=nQty;
    adoCmd.parameters[9].value:=nPrice;
    adoCmd.parameters[10].value:=nQty*nPrice;
    adoCmd.parameters[11].value:=sMemo;
    adoCmd.execute; end
  else begin
    adoCmd.commandtext:='update  '+sTable+' set StoreId= :storId,EmployId= :EmployId,GoodsId= :Goodsid,Qty= :qty,Price= :price,BillAmt :BillAmt,Memo= :Memo where billid= :billid';
    adoCmd.parameters[0].value:=nStoreId;
    adoCmd.parameters[1].value:=nEmployid;
    adoCmd.parameters[2].value:=GoodsId;
    adoCmd.parameters[3].value:=nQty;
    adoCmd.parameters[4].value:=nPrice;
    adoCmd.parameters[5].value:=nQty*nPrice;
    adoCmd.parameters[6].value:=sMemo;
    adoCmd.parameters[7].value:=nBillId;
    adoCmd.execute;
  end;
end;

procedure TDataE2.InsertDMaterial(nBillid,nEmployId,GoodsId:integer;dBillDate:tdatetime;sInvono,sMemo,sSelfCode:string;nQty:real);
begin
   adoCmd.commandtext:='insert into D_Material values ( :BillId, :invono , :billdate, :EmployId, :selfCode, :Goodsid, :qty, :operator, :Memo)';
   adoCmd.parameters[0].value:=nBillId;
   adoCmd.parameters[1].value:=sInvoNo;
   adoCmd.parameters[2].value:=dBillDate;
   adoCmd.parameters[3].value:=nEmployid;
   adoCmd.parameters[4].value:=sSelfcode;
   adoCmd.parameters[5].value:=GoodsId;
   adoCmd.parameters[6].value:=nQty;
   adoCmd.parameters[7].value:=myUsrName;
   adoCmd.parameters[8].value:=sMemo;
   adoCmd.execute; 
end;

Procedure TDataE2.InsertOnHand(nStoreId,nGoodsId:integer);
begin
    AdoStp1.Close;
    AdoStp1.ProcedureName :='dbo.pcdInsOnHand;1';
    try
      AdoStp1.Parameters.Refresh;
      AdoStp1.Parameters[1].value:=nStoreid;
      AdoStp1.Parameters[2].value:=nGoodsId;
    except
    end;
    Adostp1.execproc;
end;

Function TDataE2.GetPriorNext(bPrior:boolean;tablename:string;nBillId:integer):boolean;
begin
    sSql:='select top 1 *  from ';
    if bPrior then
      sSql:=sSql+ tableName+ ' where billid < :billId order by billid desc'
    else
      sSql:=sSql+ tableName+ ' where billid > :billId ';

    if adoquery1.active then adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add(sSql);
    adoquery1.parameters[0].value:=nBillid;
    adoQuery1.open;

    result:=not adoquery1.eof;
end;

{Function TDataE2.GetNext(tablename:string;nBillId:integer):boolean;
begin
    sSql:='select top 1 *  from ';
    sSql:=sSql+ tableName+ ' where billid > :billId ';
    if adoquery1.active then adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add(sSql);
    adoquery1.parameters[0].value:=nBillid;
    adoQuery1.open;

    result:=not adoquery1.eof;
end;
}
Function  TDataE2.GetReftblName(nTblId:integer):string;
begin
  result:='NULL';
  case nTblId of
    1:   result:=aTblName[0];
    2:   result:=aTblName[1];
    3:   result:=aTblName[1];
    11:  result:=aTblName[10];
    12:  result:=aTblName[11];
    13:  result:=aTblName[11];    
  end;
end;

Function TDataE2.UPdateMasterAmt(nTblId,nBillId:integer):boolean;
begin
    AdoStp1.Close;
    AdoStp1.ProcedureName :='dbo.pcdUpdateMasterAmt;1';
    try
      AdoStp1.Parameters.Refresh;
      AdoStp1.Parameters[1].value:=aTblName[nTblId];
      AdoStp1.Parameters[2].value:=GetRefTblName(nTblId);
      AdoStp1.Parameters[3].value:=nBillid;
      AdoStp1.Parameters[4].value:=nTblid;
      if ( nTblId =11 ) and bBatchSale then
        AdoStp1.Parameters[5].value:=1
      else
        AdoStp1.Parameters[5].value:=0;
    except
    end;
    Adostp1.execproc;

    result:=Adostp1.Parameters[0].value;
end;

Function TDataE2.UPdateRefTableAmt(nTblId,nBillId:integer):boolean;
begin
    AdoStp1.Close;
    AdoStp1.ProcedureName :='dbo.pcdUpdateRefTable;1';
    try
      AdoStp1.Parameters.Refresh;
      AdoStp1.Parameters[1].value:=aTblName[nTblId];
      AdoStp1.Parameters[2].value:=GetRefTblName(nTblId);
      AdoStp1.Parameters[3].value:=nBillid;
      AdoStp1.Parameters[4].value:=nTblid;      
    except
    end;
    Adostp1.execproc;

    result:=Adostp1.Parameters[0].value;
 end;

procedure TDataE2.queryDetailNewRecord(DataSet: TDataSet);
begin
  with queryDetail do
  begin
    fieldbyname('BillId').asinteger:=nBillId;
    fieldbyname('itemno').asinteger:=nId;
    fieldbyname('memo1').asstring:='';
    if (gTableid mod 10 <>3) and ( gTableid <= 30 ) then
    begin
      fieldbyname('qty').asinteger:=0;
      fieldbyname('code').asstring:='';
      if gTableId <> 30 then
        fieldbyname('price').asinteger:=0;
    end;
  end;
  inc(nid);
end;

procedure TDataE2.queryDetailCalcFields(DataSet: TDataSet);
begin
  with queryDetail do
    case gTableId of
      3,13:
    fieldbyname('Total').AsCurrency :=fieldbyname('BillAmt').AsCurrency-fieldbyname('TakeAmt').ascurrency-fieldbyname('RtnAmt').ascurrency;
      23:  //pos查询
    fieldbyname('Total').AsCurrency :=fieldbyname('qty').Asfloat*fieldbyname('Price').ascurrency;//*fieldbyname('disc').asinteger/100;
    else
    fieldbyname('Total').AsCurrency :=fieldbyname('qty').AsFloat*fieldbyname('price').ascurrency;
  end;
end;

procedure TDataE2.tblTypeNewRecord(DataSet: TDataSet);
begin
  with tblType do
  begin
    //edit;
    fieldbyname('type').asstring:='*';
    fieldbyname('name').asstring:='';
    fieldbyname('desk').asstring:='';
  end;
end;

procedure TDataE2.tblType1NewRecord(DataSet: TDataSet);
begin
  with tblType1 do
  begin
    fieldbyname('type').asstring:=tblType.fieldbyname('type').asstring;
    fieldbyname('code1').asstring:='*';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -