亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sledsalebill.pas

?? 詳細的ERP設計資料
?? PAS
字號:
unit SLEdSaleBill;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, BaseVoucherEdit, Menus, ActnList, DB, ComCtrls, StdCtrls, Mask,
  DBCtrls, ExtCtrls, ToolWin, Grids, DBGrids, QLDBGrid, ADODB, GEdit,
  QLDBLkp;

type
  TSLEdSaleBillForm = class(TBaseVoucherEditForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    ClientName: TADODataSet;
    EmployeeName: TADODataSet;
    Label4: TLabel;
    DBEdit2: TDBEdit;
    GoodName: TADODataSet;
    Label5: TLabel;
    GEdit1: TGEdit;
    MSUnit: TADODataSet;
    DSMSUnit: TDataSource;
    DSClientName: TDataSource;
    DSEmployeeName: TDataSource;
    ClientQLDBLookup: TQLDBLookupComboBox;
    QLDBLookupEmployee: TQLDBLookupComboBox;
    DBEdit1: TDBEdit;
    DBEdit4: TDBEdit;
    DBComboBox1: TDBComboBox;
    Label6: TLabel;
    MSGoalUnit: TADODataSet;
    dsMSGoalUnit: TDataSource;
    DBComboBox3: TDBComboBox;
    DBComboBox4: TDBComboBox;
    Label7: TLabel;
    QLDBLookuppACKUNIT: TQLDBLookupComboBox;
    TempAds: TADODataSet;
    adsSalesMaster: TADODataSet;
    adsSalesDetail: TADODataSet;
    adsSalesDetailID: TAutoIncField;
    adsSalesDetailMasterID: TIntegerField;
    adsSalesDetailGoodsID: TIntegerField;
    adsSalesDetailQuantity: TBCDField;
    adsSalesDetailQuantityPcs: TBCDField;
    adsSalesDetailPackUnitID: TIntegerField;
    adsSalesDetailPriceBase: TBCDField;
    adsSalesDetailAmount: TBCDField;
    adsSalesDetailDiscountRate: TBCDField;
    adsSalesDetailDiscount: TBCDField;
    adsSalesDetailNetAmount: TBCDField;
    adsSalesDetailTaxAmount: TBCDField;
    adsSalesDetailSalesMode: TStringField;
    adsSalesDetailGoalQuantity: TBCDField;
    adsSalesDetailSundryFee: TBCDField;
    adsSalesDetailGoalUnitID: TIntegerField;
    adsSalesMasterID: TAutoIncField;
    adsSalesMasterCreateDate: TDateTimeField;
    adsSalesMasterCreateUserID: TIntegerField;
    adsSalesMasterRecordState: TStringField;
    adsSalesMasterDate: TDateTimeField;
    adsSalesMasterCode: TStringField;
    adsSalesMasterClientID: TIntegerField;
    adsSalesMasterEmployeID: TIntegerField;
    adsSalesMasterDiscountRate: TBCDField;
    adsSalesMasterBillMode: TStringField;
    adsSalesMasterBillModeDC: TIntegerField;
    adsSalesMasterOriginBillID: TIntegerField;
    adsSalesMasterOriginBillTypeID: TIntegerField;
    adsSalesMasterPeriodID: TIntegerField;
    adsSalesMasterClearDate: TDateTimeField;
    adsSalesMasterMemo: TStringField;
    adsSalesMasterSundryFee: TBCDField;
    adsSalesMasterIsApportion: TStringField;
    Label8: TLabel;
    DBEdit5: TDBEdit;
    adsSalesMasterClientName: TStringField;
    adsSalesMasterEmployeeName: TStringField;
    adsSalesDetailGoodsName: TStringField;
    adsSalesDetailPackUnit: TStringField;
    adsSalesDetailGoallUnit: TStringField;
    N7: TMenuItem;
    N13: TMenuItem;
    LastPrice: TAction;
    DiscountMode: TAction;
    adsSalesMasterIsDeliver: TStringField;
    adsSalesMasterIsTax: TStringField;
    adsSalesDetailTaxrate: TBCDField;
    adsSalesMasterTaxRate: TBCDField;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure DBComboBox3Change(Sender: TObject);
    procedure GoodsIDChange;
    procedure QuantityChange;
    procedure adsSalesDetailPackUnitIDChange(Sender: TField);
    procedure adsSalesDetailQuantityChange(Sender: TField);
    procedure adsSalesDetailGoodsIDChange(Sender: TField);
    procedure SaveActionExecute(Sender: TObject);
    procedure ImportActionExecute(Sender: TObject);
    procedure LastPriceExecute(Sender: TObject);
    procedure DiscountModeExecute(Sender: TObject);
    procedure ClientQLDBLookupEnter(Sender: TObject);
    procedure ClientQLDBLookupExit(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure Open(VoucherID: Integer); override;
    procedure New; override;
  end;

var
  SLEdSaleBillForm: TSLEdSaleBillForm;

implementation

uses CommonDM, WSUtils, WSSecurity,PkVoucher, SLPriceSearch,SLDiscountMode,
  SLPricequery;

{$R *.dfm}
procedure TSLEdSaleBillForm.New;
begin
  inherited;
  ClientName.Open;
  EmployeeName.Open;
  GoodName.Open;
  MSUnit.Open;
  MSGoalUnit.Open;
  adsSalesMaster.FieldByName('Date').Value:=date;
  adsSalesMaster.FieldByName('Code').AsString:=GetMaxCode('Code','SLSaleMaster',number);
  adsSalesMaster.FieldByName('CreateUserID').Value:=Guarder.UserID;
  adsSalesMaster.FieldByName('BillMode').Value:='銷售開單';
  adsSalesMaster.FieldByName('BillModeDC').Value:=1;
  adsSalesMaster.FieldByName('IsTax').Value:='已含稅';
  adsSalesMaster.FieldByName('IsDeliver').Value:='不送貨';
  adsSalesMaster.FieldByName('IsApportion').Value:='不分攤';
end;

procedure TSLEdSaleBillForm.Open(VoucherID: Integer);
begin
  inherited Open(VoucherID);
  ClientName.Open;
  EmployeeName.Open;
  GoodName.Open;
  MSUnit.Open;
  MSGoalUnit.Open;
end;


procedure TSLEdSaleBillForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  adsSalesMaster.Close;
  adsSalesDetail.Close;
  ClientName.Close;
  EmployeeName.Close;
  GoodName.Close;
  MSUnit.Close;
  MSGoalUnit.Close;
end;

procedure TSLEdSaleBillForm.FormCreate(Sender: TObject);
begin
  inherited;
  VoucherTableName := 'SLSale';
end;

procedure TSLEdSaleBillForm.FormShow(Sender: TObject);
begin
  inherited;
  ClientQLDBLookup.SetFocus;
end;



procedure TSLEdSaleBillForm.DBComboBox3Change(Sender: TObject);
begin
  inherited;
  if DBComboBox3.Text ='不含稅' then DBEdit4.Enabled :=true
    else DBEdit4.Enabled :=False;
end;



procedure TSLEdSaleBillForm.GoodsIDChange;
begin
  TempAds.Close;   //取標準單位
  TempAds.CommandText :='select UnitID from DAGoods where Id='
      + QuotedStr(adsSalesDetail.fieldbyname('GoodsID').AsString);
  TempAds.Open;
  TempAds.First;
  adsSalesDetail.FieldByName('GoalUnitID').ReadOnly :=False;
  adsSalesDetail.FieldByName('GoalUnitID').AsInteger :=TempAds.fieldbyname('UnitID').AsInteger;
  adsSalesDetail.FieldByName('GoalUnitID').ReadOnly :=True;
                //取包裝單位
  MSUnit.Close;
  MSUnit.CommandText :='select * from MSUnit where GoalUnitID= '
      +' ( select GoalUnitID from msunit where id = '
      +' (select top 1 UnitID from dagoods where id='
       + QuotedStr(adsSalesDetail.fieldbyname('GoodsID').AsString)+ ' ) )';
  MSUnit.Open;
end;


procedure TSLEdSaleBillForm.QuantityChange;
begin
  adsSalesDetail.FieldByName('Amount').ReadOnly :=False;
  adsSalesDetail.FieldByName('Amount').AsFloat :=
       adsSalesDetail.fieldbyname('Quantity').asfloat
         *adsSalesDetail.fieldbyname('PriceBase').asfloat;
//       (adsSalesDetail.fieldbyname('QuantityPcs').asfloat*adsSalesDetail.fieldbyname('PriceBase').asfloat) ;
  adsSalesDetail.FieldByName('Amount').ReadOnly :=True;

  adsSalesDetail.FieldByName('GoalQuantity').ReadOnly :=False;
  adsSalesDetail.FieldByName('GoalQuantity').AsFloat :=
       adsSalesDetail.fieldbyname('Quantity').AsFloat
         *MSUnit.fieldbyname('ExchangeRate').AsFloat+
           adsSalesDetail.FieldByName('QuantityPcs').AsFloat;
  adsSalesDetail.FieldByName('GoalQuantity').ReadOnly :=True;


  adsSalesDetail.FieldByName('NetAmount').ReadOnly :=False;
  adsSalesDetail.FieldByName('NetAmount').AsFloat :=
       adsSalesDetail.fieldbyname('Amount').AsFloat-
         adsSalesDetail.fieldbyname('Discount').AsFloat;
  adsSalesDetail.FieldByName('NetAmount').ReadOnly :=True;
end;

procedure TSLEdSaleBillForm.adsSalesDetailPackUnitIDChange(Sender: TField);
begin
  inherited;
  adsSalesDetail.FieldByName('GoalQuantity').ReadOnly :=False;
  adsSalesDetail.FieldByName('GoalQuantity').AsFloat :=
       adsSalesDetail.fieldbyname('Quantity').AsFloat
       *MSUnit.fieldbyname('ExchangeRate').AsFloat+
       adsSalesDetail.FieldByName('QuantityPcs').AsFloat;
  adsSalesDetail.FieldByName('GoalQuantity').ReadOnly :=True;

  adsSalesDetail.FieldByName('PriceBase').ReadOnly :=False;
  adsSalesDetail.FieldByName('PriceBase').AsFloat :=
       GoodName.fieldbyname('PriceSales').AsFloat;
  adsSalesDetail.FieldByName('PriceBase').ReadOnly :=True;
end;

procedure TSLEdSaleBillForm.adsSalesDetailQuantityChange(Sender: TField);
begin
  inherited;
  QuantityChange;
end;

procedure TSLEdSaleBillForm.adsSalesDetailGoodsIDChange(Sender: TField);
begin
  inherited;
  GoodsIDChange;
end;

procedure TSLEdSaleBillForm.SaveActionExecute(Sender: TObject);
var adoTemp: TADOQuery;
    code:string;
begin
  inherited;
  adoTemp := TADOQuery.Create(nil);
  adoTemp.Connection := CommonData.acnConnection;
  with adoTemp do
  begin
    close;
    sql.Text :='select top 1 code from SLClearBillMaster order by id desc';
    open;
    if adoTemp.IsEmpty then code :='00000001'
      else code :=fieldbyname('Code').AsString;
//    close;
    sql.Text := 'insert into SLClearBillMaster '
        +' (CreateUserID ,Date,Code, BillMode, BillModeDC,ClientID,EmployeID,'
        +'    OriginBillID,PeriodID,SaleAmount,Memo)  '
        +' select a.CreateUserID ,a.Date,'+QuotedStr(code)+', a.BillMode, a.BillModeDC ,a.ClientID,a.EmployeID, '
        +' a.ID,PeriodID,  b.AcceptAmount*a.BillModeDC, A.Memo from SLSaleMaster a inner join  '
        +' ( select masterID,sum(isnull(Amount,0)) as  AcceptAmount from   SLSaleDetail Group by masterID  ) as b '
        +' on b.masterID=a.ID '
        +' where not ( a.ID in (select OriginBillID from SLClearBillMaster) '
        +'      and a.BillMode in (select BillMode from SLClearBillMaster) ) ';
    ExecSQL;
    close;
    sql.Text := 'update SLClearBillMaster set AmountBalance= (SaleAmount'
        +' -AcceptAmount )  where AmountBalance=0 or AmountBalance is null';
    ExecSQL;
  end;
end;

procedure TSLEdSaleBillForm.ImportActionExecute(Sender: TObject);
begin
  inherited;
  Application.CreateForm(TVoucherPickForm, VoucherPickForm);
  VoucherPickForm.ShowModal;
  VoucherPickForm.Free;
end;

procedure TSLEdSaleBillForm.LastPriceExecute(Sender: TObject);
begin
  inherited;
  if (not adsSalesMaster.FieldByName('ClientID').IsNull) and (not adsSalesDetail.FieldByName('GoodsID').IsNull)
    then begin
    SLPricequeryForm:= TSLPricequeryForm.Create(self);
    with SLPricequeryForm do
    begin
      AdsPricequery.Close;
      AdsPricequery.CommandText := 'select top 100 '
            +' M.code,m.date, D.PriceBase,d.Amount,d.GoalQuantity ,  '
            +' f.name as goodsname,xs.name as ClientName  from SLSaleDetail D '
            +' inner join DAGoods  f on d.goodsID=f.id   '
            +' inner join SLSaleMaster M on D.MasterID=M.ID inner join  DAClient  '
            +' xs on xs.id=m.ClientID  '
            + '  where M.CLientID=:CLientID '
            + '  order by M.id DESC';
//            + '  and D.GoodsID=:GoodsID order by M.id DESC';
      AdsPricequery.Parameters.ParamByName('ClientID').Value
                         := adsSalesMaster.FieldByName('ClientID').Value;
//      AdsPricequery.Parameters.ParamByName('GoodsID').Value
//                         := adsSalesDetail.FieldByName('GoodsID').Value;
      AdsPricequery.Open;
      SLPricequeryForm.Show;
    end;
  end;end;

procedure TSLEdSaleBillForm.DiscountModeExecute(Sender: TObject);
begin
  inherited;
  Application.CreateForm(TSLDiscountModeForm, SLDiscountModeForm);
  SLDiscountModeForm.ShowModal;
  SLDiscountModeForm.Free;
end;


procedure TSLEdSaleBillForm.ClientQLDBLookupEnter(Sender: TObject);
begin
  inherited;
  GEdit1.Enabled :=true;
  GEdit1.Text :='0';
  GEdit1.Enabled :=false;
end;

procedure TSLEdSaleBillForm.ClientQLDBLookupExit(Sender: TObject);
var  adoTemp: TADOQuery;
begin
  inherited;
  adoTemp := TADOQuery.Create(nil);
  adoTemp.Connection := CommonData.acnConnection;
  with adoTemp do
  begin
    close;
    sql.Text := 'select sum(isnull(AmountBalance,0)) as Balance from '
        + 'SLClearBillMaster where RecordState<>' + QuotedStr('刪除')
        + ' and ClientID='+ClientName.fieldbyname('ID').AsString;
    open;
    GEdit1.Enabled :=true;
    if  adoTemp.IsEmpty then     GEdit1.Text :='0'
      else   GEdit1.Text :=fieldbyname('Balance').asstring;
    GEdit1.Enabled :=False;
  end;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美性一区二区| 欧美国产一区在线| 久久久久久久久久电影| 亚洲免费毛片网站| 国产成人免费在线视频| 91国模大尺度私拍在线视频| 亚洲精品一区二区三区蜜桃下载 | 欧美一级一级性生活免费录像| 精品久久一二三区| 亚洲二区视频在线| 北条麻妃一区二区三区| 日韩一级大片在线观看| 一区二区三区在线免费视频| 国产精品亚洲а∨天堂免在线| 欧美三级三级三级| 亚洲人成精品久久久久久| 久久91精品久久久久久秒播| 欧美日韩视频一区二区| 综合网在线视频| 成人精品免费网站| 久久亚洲二区三区| 久久机这里只有精品| 精品视频一区二区不卡| 国产精品国产三级国产有无不卡| 国精品**一区二区三区在线蜜桃 | 成人高清在线视频| 久久久久久久综合色一本| 日本网站在线观看一区二区三区 | 成人高清在线视频| 国产午夜精品美女毛片视频| 国产在线精品国自产拍免费| 91精品国产一区二区三区香蕉| 亚洲一区二区三区影院| 色偷偷成人一区二区三区91| 久久综合色鬼综合色| 人禽交欧美网站| 欧美一区二区三区视频免费| 亚洲成人av免费| 欧美精品v国产精品v日韩精品| 亚洲成人免费电影| 91一区二区在线观看| 国产精品成人免费在线| 不卡欧美aaaaa| 亚洲精品欧美在线| 欧美色综合网站| 婷婷成人激情在线网| 91精品午夜视频| 久久av资源网| 国产亚洲一区二区三区四区| 国产成人免费视频网站高清观看视频| 精品对白一区国产伦| 国产999精品久久久久久| 国产精品天美传媒沈樵| 在线日韩一区二区| 午夜激情久久久| 日韩美女一区二区三区四区| 国产精品一区二区在线观看不卡| 国产日韩欧美亚洲| 色综合久久久久综合99| 日韩精品亚洲一区二区三区免费| 日韩一区国产二区欧美三区| 国产真实乱对白精彩久久| 中文字幕一区二区三区视频| 日本乱码高清不卡字幕| 青青草国产精品97视觉盛宴| 久久久99久久| 欧美日韩日日摸| 激情欧美日韩一区二区| 欧美国产激情一区二区三区蜜月| 91久久精品一区二区二区| 日本伊人色综合网| 国产精品电影一区二区三区| 欧美日韩mp4| 岛国一区二区在线观看| 亚洲国产精品视频| 国产亚洲自拍一区| 欧美怡红院视频| 国产宾馆实践打屁股91| 亚洲成人动漫在线免费观看| 国产午夜亚洲精品午夜鲁丝片| 欧美午夜精品免费| 国产伦精一区二区三区| 亚洲成人av电影| 国产精品久久久久久久久动漫| 欧美久久久久久久久中文字幕| 国产美女在线观看一区| 亚洲第一av色| 亚洲欧美另类久久久精品| 精品久久久久av影院| 在线免费一区三区| 成人一区二区三区在线观看| 天天av天天翘天天综合网 | 丁香啪啪综合成人亚洲小说 | 99在线精品视频| 免费黄网站欧美| 亚洲国产一二三| 一区在线播放视频| 久久综合给合久久狠狠狠97色69| 欧美人妖巨大在线| 色婷婷av久久久久久久| 成人午夜av电影| 国产一区二区三区| 免费一级欧美片在线观看| 亚洲免费观看在线观看| 国产精品美女久久久久久久久久久| 久久久久久亚洲综合影院红桃 | 欧美日韩国产一级片| 91视视频在线观看入口直接观看www | 国产精品毛片大码女人| 久久久午夜精品理论片中文字幕| 欧美日韩不卡在线| 欧美伊人久久大香线蕉综合69| 国产91综合一区在线观看| 国产一区二区在线看| 九色porny丨国产精品| 久久精品国产色蜜蜜麻豆| 免费成人在线播放| 男男视频亚洲欧美| 麻豆精品国产91久久久久久| 日韩不卡一区二区| 天涯成人国产亚洲精品一区av| 午夜视频在线观看一区二区| 午夜精品视频一区| 免费成人在线网站| 国模无码大尺度一区二区三区| 韩国精品免费视频| 国产一区二区三区免费| 成人一区二区三区视频在线观看| 成人国产精品免费观看视频| 91视频国产资源| 欧美在线观看你懂的| 欧美色综合网站| 91精品在线免费| 欧美精品一区二区蜜臀亚洲| 亚洲精品一区二区三区精华液| 久久久久久久综合日本| 中文字幕在线一区二区三区| 亚洲欧美成aⅴ人在线观看| 亚洲精品日韩综合观看成人91| 亚洲国产精品一区二区www在线| 偷偷要91色婷婷| 精品一区二区在线视频| 国产成人精品一区二| 色综合久久综合| 欧美一区永久视频免费观看| 精品久久久久久久人人人人传媒| 久久久久久久久久久黄色| 国产精品色在线观看| 亚洲综合成人在线视频| 免费成人在线播放| caoporm超碰国产精品| 欧美麻豆精品久久久久久| 久久这里只有精品首页| 中文字幕一区在线| 性感美女极品91精品| 国产精品系列在线观看| 色婷婷久久99综合精品jk白丝| 欧美一区二区久久久| 亚洲国产精品成人久久综合一区| 一区二区三区日韩欧美精品| 久久国产欧美日韩精品| 97se亚洲国产综合自在线观| 日韩欧美一区二区视频| 中文字幕在线免费不卡| 国内成人自拍视频| 欧美日韩精品福利| 中文字幕国产一区| 麻豆国产一区二区| 欧美色图片你懂的| 国产日韩影视精品| 日本91福利区| 欧美日韩亚洲国产综合| 国产午夜精品一区二区三区视频| 性做久久久久久免费观看| 91免费视频网址| 欧美国产精品中文字幕| 热久久一区二区| 欧美日韩另类一区| 中文字幕一区二区三区蜜月| 精品一区二区在线视频| 欧美精选午夜久久久乱码6080| 综合久久久久综合| 成人av午夜电影| 久久精品在线观看| 久久99蜜桃精品| 日韩一区国产二区欧美三区| 香蕉成人伊视频在线观看| 欧美在线观看视频在线| 一区二区三区小说| aaa欧美日韩| 亚洲欧美综合色| 成人三级在线视频| 中文字幕成人网| 国产精品一区免费在线观看| 久久蜜臀中文字幕| 国产一区二区三区精品视频| 日韩三级免费观看| 美日韩一区二区三区| 日韩欧美在线不卡| 麻豆成人在线观看|