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

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

?? sledsaleclientgtp.pas

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

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
  TSLEdSaleClientGTPForm = class(TBaseVoucherEditForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    ClientName: TADODataSet;
    EmployeeName: TADODataSet;
    GoodName: TADODataSet;
    Label5: TLabel;
    PackUnit: TADODataSet;
    dsPackUnit: TDataSource;
    DSClientName: TDataSource;
    DSEmployeeName: TDataSource;
    ClientQLDBLookup: TQLDBLookupComboBox;
    LookupEmployee: TQLDBLookupComboBox;
    Label6: TLabel;
    Label7: TLabel;
    LookupPackUint: TQLDBLookupComboBox;
    TempAds: TADODataSet;
    adsMaster: TADODataSet;
    adsDetail: TADODataSet;
    adsDetailID: TAutoIncField;
    adsDetailMasterID: TIntegerField;
    adsDetailGoodsID: TIntegerField;
    adsDetailQuantity: TBCDField;
    adsDetailQuantityPcs: TBCDField;
    adsDetailPackUnitID: TIntegerField;
    adsDetailPriceBase: TBCDField;
    adsDetailAmount: TBCDField;
    adsDetailDiscount: TBCDField;
    adsDetailGoalQuantity: TBCDField;
    adsDetailSundryFee: TBCDField;
    adsDetailGoalUnitID: TIntegerField;
    adsMasterID: TAutoIncField;
    adsMasterCreateDate: TDateTimeField;
    adsMasterCreateUserID: TIntegerField;
    adsMasterRecordState: TStringField;
    adsMasterDate: TDateTimeField;
    adsMasterCode: TStringField;
    adsMasterClientID: TIntegerField;
    adsMasterBillMode: TStringField;
    adsMasterPeriodID: TIntegerField;
    adsMasterClearDate: TDateTimeField;
    adsMasterMemo: TStringField;
    adsMasterSundryFee: TBCDField;
    Label8: TLabel;
    adsMasterClientName: TStringField;
    adsDetailPackUnit: TStringField;
    DiscountMode: TAction;
    adsMasterEmployeeID: TIntegerField;
    adsMasterApportion: TStringField;
    adsMasterDeliver: TStringField;
    adsMasterOriginID: TIntegerField;
    adsMasterOriginTable: TStringField;
    adsMasterBillAffix: TBytesField;
    adsDetailMemo: TStringField;
    adsMasterBrief: TStringField;
    BriefComboBox: TDBComboBox;
    Label9: TLabel;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    Label10: TLabel;
    DBEdit3: TDBEdit;
    DBEdit4: TDBEdit;
    Label4: TLabel;
    DBEdit5: TDBEdit;
    GEdit1: TGEdit;
    adsDetailTaxAmount: TBCDField;
    adsDetailGoodsSpec: TStringField;
    adsGoodsSpec: TADODataSet;
    dsGoodsSpec: TDataSource;
    adsMasterEmployee: TStringField;
    GoalUnit: TADODataSet;
    dsGoalUnit: TDataSource;
    adsDetailGoalUnit: TStringField;
    adsMasterModeDC: TIntegerField;
    adsMasterModeC: TIntegerField;
    adsMasterWarehouseID: TIntegerField;
    adsDetailGoodsName: TStringField;
    TpPackUnit: TADOQuery;
    PackUintFltAQ: TADODataSet;
    PackUintFltDS: TDataSource;
    adsDetailPriceCost: TBCDField;
    adsDetailPriceGoal: TBCDField;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure adsDetailGoodsIDChange(Sender: TField);
    procedure ClientQLDBLookupEnter(Sender: TObject);
    procedure ClientQLDBLookupExit(Sender: TObject);
    procedure adsDetailGoalQuantityChange(Sender: TField);
    procedure LookupPackUintEnter(Sender: TObject);
  private
    { Private declarations }
  public
     SLPubQuerrySql,SLPubQuerryCaption:string;
    { Public declarations }
    procedure Open(VoucherID: Integer); override;
    procedure New; override;
  end;

var
  SLEdSaleClientGTPForm: TSLEdSaleClientGTPForm;

implementation

uses CommonDM, WSUtils, WSSecurity;

{$R *.dfm}
procedure TSLEdSaleClientGTPForm.New;
begin
  inherited;
  adsMaster.FieldByName('Date').AsDateTime :=DAte;
  adsMaster.FieldByName('Code').AsString:=GetMaxCode('Code','SLSaleClientMaster',number);
  adsMaster.FieldByName('CreateUserID').AsInteger :=Guarder.UserID;
//  adsMaster.FieldByName('BIllMode').ReadOnly :=False;
  adsMaster.FieldByName('BillMode').AsString:='連鎖加盟銷售';
  adsMaster.FieldByName('ModeDC').AsInteger:=1;
  adsMaster.FieldByName('ModeC').AsInteger:=1;
  adsMaster.FieldByName('Deliver').AsString:='--';
  adsMaster.FieldByName('Apportion').AsString:='--';
  adsMaster.FieldByName('OriginTable').AsString:='SLSaleClientMaster';
end;

procedure TSLEdSaleClientGTPForm.Open(VoucherID: Integer);
begin
  inherited Open(VoucherID);
end;


procedure TSLEdSaleClientGTPForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  adsMaster.Close;
  adsDetail.Close;
  ClientName.Close;
  EmployeeName.Close;
  GoodName.Close;
  PackUnit.Close;
  adsGoodsSpec.Close;
end;

procedure TSLEdSaleClientGTPForm.FormCreate(Sender: TObject);
var GoodsSpecStr:string;
begin
  inherited;
  VoucherTableName := 'SLSale';
  ClientName.Open;
  EmployeeName.Open;
  GoodName.Open;
  PackUnit.Open;

  TempAds.close;
  TempAds.CommandText :='select distinct levelcode from DAAttribute'
      +' where name like'+Quotedstr('%商品%')+' and upid=-1';
  TempAds.open;
  TempAds.First;
  GoodsSpecStr :=' where (1<>1 ';
  while not TempAds.Eof do
  begin
    GoodsSpecStr :=GoodsSpecStr+' or Levelcode like '+Quotedstr('%'+
        Trim(TempAds.fieldbyname('Levelcode').AsString)+'%') ;
    TempAds.Next;
  end;
  GoodsSpecStr :=' select * from DAAttribute '+ GoodsSpecStr
      +' ) and (upid<>-1 and Recordstate<>'+Quotedstr('刪除')+')';
  adsGoodsSpec.Close;
  adsGoodsSpec.CommandText :=GoodsSpecStr;
  adsGoodsSpec.Open;
  TempAds.Close;
  TempAds.CommandText :=' select Distinct brief from SLSaleClientMaster';
  TempAds.Open;
  TempAds.First;
  while not TempAds.Eof do
  begin
    BriefComboBox.Items.Add(TempAds.FieldByName('brief').AsString);
    TempAds.Next;
  end;
  if  TempAds.IsEmpty then  BriefComboBox.Items.Add('客戶銷售');
end;

procedure TSLEdSaleClientGTPForm.FormShow(Sender: TObject);
var  adoTemp: TADOQuery;
begin
  inherited;
  adoTemp := TADOQuery.Create(nil);
  adoTemp.Connection := CommonData.acnConnection;
  adoTemp.Close;
  adoTemp.SQL.Text :=' IF EXISTS(  SELECT * FROM tempdb..sysobjects '
        +' WHERE ID = OBJECT_ID('+Quotedstr('tempdb..#TempPackUnit1')
        +' )) DROP TABLE #TempPackUnit1 ' ;
  adoTemp.ExecSQL;
  adoTemp.Close;
  adoTemp.SQL.Text :=' create table #TempPackUnit1 ('
      +'	PID [int] IDENTITY (1, 1) NOT NULL ,'
      +'	ID [int] NULL ,'
      +'	[CreateDate] [datetime] NULL ,       '
      +'	[CreateUserID] [int] NULL ,          '
      +'	[RecordState] [varchar] (12)  NULL , '
      +'	[Name] [varchar] (20)   NULL ,'
      +'	[ExchangeRate] [decimal](9, 4) NULL ,'
      +'	[GoalUnitID] [int] NULL ,            '
      +'	[IsGoalUnit] [bit] NOT NULL    )     ';
  adoTemp.ExecSQL;

  ClientQLDBLookup.SetFocus;
end;

procedure TSLEdSaleClientGTPForm.adsDetailGoodsIDChange(Sender: TField);
var SGoodsID,SUnitID,IsInGoods:integer;
begin
  inherited;
  if (adsDetail.fieldbyname('GoodsID').IsNull) or (adsDetail.fieldbyname('GoodsID').AsInteger=0)
     then  SGoodsID :=1 else  SGoodsID :=adsDetail.fieldbyname('GoodsID').AsInteger;
  TempAds.Close;   //取標準單位和基本單價
  TempAds.CommandText :='select UnitID,PriceSales from DAGoods where Id='
      + Inttostr(SGoodsID);
  TempAds.Open;
  if  TempAds.FieldByName('UnitID').IsNull then SunitID :=1
    else SunitID :=TempAds.FieldByName('UnitID').AsInteger;

//  adsDetail.FieldByName('GoalUnitID').ReadOnly :=False;
  adsDetail.FieldByName('GoalUnitID').AsInteger :=SunitID;
//  adsDetail.FieldByName('GoalUnitID').ReadOnly :=True;

//  adsDetail.FieldByName('PriceBase').ReadOnly :=False;
  adsDetail.FieldByName('PriceBase').AsFloat := TempAds.FieldByName('PriceSales').AsFloat  ;
  if adsDetail.FieldByName('PriceBase').IsNull then adsDetail.FieldByName('PriceBase').AsFloat :=0;

  IsInGoods :=0;
  TpPackUnit.Close;
  TpPackUnit.SQL.Text :='Truncate Table #TempPackUnit1 ';
  TpPackUnit.ExecSQL;
  TpPackUnit.Close;
  TpPackUnit.SQL.Text :=' select a.AddUnitID ID, b.name,a.AddUnitRate '
    +' ExchangeRate,a.UnitID GoalUnitID,b.IsGoalUnit '
    +' from DAGoods a    '
    +' left outer join MSUnit b on b.ID=a.AddUnitID    '
    +' where a.AddUnitID is not null and AddUnitID<>0 and a.AddUnitRate '
    +' is not null and a.AddUnitRate<>0 and a.ID= '+inttostr(SGoodsID) ;
  TpPackUnit.Open;
  if not TpPackUnit.IsEmpty then
  begin
    IsInGoods :=1;
    TpPackUnit.Close;   //將商品資料表的單位換算率插入  #TempPackUnit1
    TpPackUnit.SQL.Text :=' insert into #TempPackUnit1 '
      +' (ID, Name, ExchangeRate, GoalUnitID, IsGoalUnit )'
      +'select a.AddUnitID ID, b.name,a.AddUnitRate '
      +' ExchangeRate,a.UnitID GoalUnitID,b.IsGoalUnit '
      +' from DAGoods a    '
      +' left outer join MSUnit b on b.ID=a.AddUnitID    '
      +' where a.AddUnitID is not null and AddUnitID<>0 and a.AddUnitRate '
      +' is not null and a.AddUnitRate<>0 and a.ID= '+inttostr(SGoodsID) ;
    TpPackUnit.ExecSQL;
  end;
  TpPackUnit.Close;    //將單位資料表的換算率插入  #TempPackUnit1
  TpPackUnit.SQL.Text :=' insert into #TempPackUnit1 '
      +' (ID, Name, ExchangeRate, GoalUnitID, IsGoalUnit )  '
      +' select ID, Name, ExchangeRate, GoalUnitID, IsGoalUnit '
      +' from MSUnit where RecordState<>'+QuotedStr('刪除')
      +' Order by GoalUnitID,IsGoalUnit desc ';
  TpPackUnit.ExecSQL;
  PackUnit.Close;  //顯示單位列表與換算率
  PackUnit.CommandText :=' select PID, ID, Name, ExchangeRate, GoalUnitID, IsGoalUnit '
      +' from #TempPackUnit1 Order by PID';
  PackUnit.Open;
  if IsInGoods=0 then
  begin
   PackUnit.Locate('ID',Inttostr(SunitID),[]);
   if not PackUnit.Eof then PackUnit.Next;
  end else   PackUnit.First;
  adsDetail.FieldByName('PackUnitID').AsInteger :=PackUnit.FieldByName('ID').AsInteger;

end;



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

procedure TSLEdSaleClientGTPForm.ClientQLDBLookupExit(Sender: TObject);
var  adoTemp: TADOQuery;
begin
  inherited;
  if   (adsMaster.fieldbyname('ClientID').IsNull) or
          (adsMaster.fieldbyname('ClientID').AsInteger=0)  then exit;
  adoTemp := TADOQuery.Create(nil);
  adoTemp.Connection := CommonData.acnConnection;
  with adoTemp do
  begin
    close;
    sql.Text := 'select sum(isnull(AmountC,0))-sum(isnull(AmountD,0)) '
        +' as Balance from (  '
        +' ( select 0 as AmountD,b.Amount*Isnull(a.ModeDC,1)*Isnull(a.ModeC,1) as AmountC   '
        +' from SLSaleMaster a left outer join                        '
        +' (select MasterID,sum(isnull(amount,0))-                   '
        +' -sum(isnull(Discount,0))+sum(isnull(TaxAmount,0))         '
        +' +sum(isnull(SundryFee,0)) as amount '
        +' from  SLSaleDetail  group by  MasterId) as b on a.ID=b.MasterID '
        +' where a.ClientID='+adsMaster.fieldbyname('ClientID').AsString
        +' and RecordState<>'+QuotedStr('刪除') +' )'
        +' UNION ALL '
        +' ( select Sum(Isnull(AmountD*Isnull(ModeDC,1)*Isnull(ModeC,1),0)) as AmountD,   '
        +'   Sum(Isnull(AmountRed*Isnull(ModeDC,1)*Isnull(ModeC,1)*(-1),0)) as Amountc   '
        +' from FNClearSLMaster where ClientID='
        + adsMaster.fieldbyname('ClientID').AsString
        +' and RecordState<>'+QuotedStr('刪除') +' ) '
        +'  ) as SLBalance';
    open;
    GEdit1.Enabled :=true;
    if  adoTemp.IsEmpty then     GEdit1.Text :='0'
      else   GEdit1.Text :=fieldbyname('Balance').asstring;
    GEdit1.Enabled :=False;
  end;
end;

procedure TSLEdSaleClientGTPForm.adsDetailGoalQuantityChange(Sender: TField);
var ExChRate :real;
begin
  PackUnit.Locate('ID', adsDetail.fieldbyname('PackUnitID').AsString, []);
//  if not PackUnit.Locate('ID', Sender.AsInteger, []) then
//    raise Exception.Create('內部錯誤');
  if PackUnit.fieldbyname('ExchangeRate').IsNull then ExChRate :=1
     else ExChRate :=PackUnit.fieldbyname('ExchangeRate').AsFloat;
  adsDetail.FieldByName('Amount').AsFloat :=
    adsDetail.fieldbyname('GoalQuantity').asfloat*adsDetail.fieldbyname('PriceGoal').AsFloat;

  adsDetail.FieldByName('Quantity').AsFloat :=
    adsDetail.fieldbyname('GoalQuantity').AsFloat/ExChRate;
    
  if adsDetail.FieldByName('Quantity').AsFloat<>0 then
  adsDetail.FieldByName('PriceBase').AsFloat :=
    adsDetail.fieldbyname('Amount').AsFloat/adsDetail.FieldByName('Quantity').AsFloat;
end;

procedure TSLEdSaleClientGTPForm.LookupPackUintEnter(Sender: TObject);
var GoodsIDstr :string;
begin
  if adsDetail.FieldByName('GoodsID').IsNull then Exit;
  GoodsIDstr :=adsDetail.fieldbyname('GoodsID').asstring;
  if Trim(GoodsIDstr)='' then  exit;
  LookupPackUint.ListSource := PackUintFltDS;
  PackUintFltAQ.Close;
  PackUintFltAQ.CommandText :=' select ID, Name, ExchangeRate, GoalUnitID,'
      +' IsGoalUnit from MSUnit where RecordState<>'+Quotedstr('刪除')
      +' and  GoalUnitID in (select UnitID from DaGoods where ID='
      +GoodsIDstr +' ) order by GoalUnitID,ExchangeRate' ;
  PackUintFltAQ.Open;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人在线视频网址| 色欧美88888久久久久久影院| 国产三级欧美三级| 91国内精品野花午夜精品| 久久国产精品免费| 一区二区三区在线影院| ww亚洲ww在线观看国产| 在线观看91视频| 成人av免费在线| 久久国产精品第一页| 亚洲小说欧美激情另类| 欧美激情自拍偷拍| 精品国内二区三区| 91麻豆精品国产91久久久使用方法| 成人免费看片app下载| 经典三级视频一区| 亚洲成年人网站在线观看| 国产精品久久久久国产精品日日 | 7777精品伊人久久久大香线蕉最新版| 国产精品白丝av| 美腿丝袜在线亚洲一区| 亚洲一区二区三区影院| 亚洲美女免费在线| 亚洲欧洲性图库| 国产三级欧美三级| 久久综合久久综合亚洲| 欧美一区二区三区播放老司机| 91老师国产黑色丝袜在线| 不卡一区二区三区四区| 丁香网亚洲国际| 免费看黄色91| 免费观看久久久4p| 亚洲精品成人精品456| 欧美韩日一区二区三区四区| 日韩欧美国产精品| 欧美成人bangbros| 日韩网站在线看片你懂的| 欧美久久一区二区| 欧美日韩高清一区二区三区| 欧洲精品中文字幕| 欧美日韩一区久久| 欧美亚洲综合另类| 欧美午夜免费电影| 欧美无砖砖区免费| 欧美亚洲另类激情小说| 欧美在线一区二区| 欧美高清hd18日本| 在线成人av影院| 欧美一级专区免费大片| 日韩精品中午字幕| 久久久精品中文字幕麻豆发布| 久久影院视频免费| 久久久国际精品| 国产精品久久久久久久裸模| 亚洲人快播电影网| 亚洲国产精品久久人人爱蜜臀| 天天综合网 天天综合色| 秋霞国产午夜精品免费视频| 精久久久久久久久久久| 国产.欧美.日韩| 91毛片在线观看| 欧美日韩一区不卡| 日韩精品中午字幕| 中文字幕+乱码+中文字幕一区| 日韩伦理av电影| 亚洲成人动漫一区| 老汉av免费一区二区三区| 国产成a人亚洲| 91福利社在线观看| 日韩视频一区二区在线观看| 欧美激情一二三区| 亚洲成人免费在线观看| 日本成人超碰在线观看| 国产乱码精品一区二区三区忘忧草| 成人中文字幕合集| 欧美在线免费观看亚洲| 精品国产在天天线2019| 自拍偷拍亚洲欧美日韩| 五月婷婷色综合| 国产乱码字幕精品高清av | 久久综合久久综合九色| 中文一区二区完整视频在线观看| 亚洲欧美电影一区二区| 麻豆久久久久久| 91首页免费视频| 日韩三级.com| 亚洲美女视频在线| 国内精品久久久久影院一蜜桃| 91香蕉视频mp4| 日韩视频一区二区| 亚洲激情欧美激情| 国产成人av在线影院| 欧美日韩一区二区三区高清| 中文字幕成人在线观看| 日韩精品福利网| 成人福利电影精品一区二区在线观看 | 亚洲va国产天堂va久久en| 国产麻豆91精品| 欧美色涩在线第一页| 欧美国产精品劲爆| 蜜桃av一区二区在线观看| 91福利区一区二区三区| 中文字幕免费观看一区| 蜜臀av一区二区在线免费观看| 91无套直看片红桃| 国产三级精品三级在线专区| 三级欧美在线一区| 色综合中文字幕国产| 中文在线资源观看网站视频免费不卡 | 精品欧美黑人一区二区三区| 亚洲精品国产第一综合99久久| 久久国产三级精品| 884aa四虎影成人精品一区| 亚洲靠逼com| caoporm超碰国产精品| 国产欧美一区二区三区在线看蜜臀 | 国产亚洲一二三区| 日韩av一区二| 欧美视频精品在线| 亚洲欧美成人一区二区三区| 成人深夜在线观看| 久久久www成人免费毛片麻豆 | 99re视频精品| 国产欧美日韩卡一| 国产美女娇喘av呻吟久久| 欧美一区三区二区| 日韩不卡免费视频| 制服视频三区第一页精品| 一区二区三区 在线观看视频| 国产98色在线|日韩| 久久久不卡网国产精品二区| 韩国精品主播一区二区在线观看| 日韩女优视频免费观看| 蜜臀av一级做a爰片久久| 日韩亚洲欧美成人一区| 九九视频精品免费| 精品久久国产老人久久综合| 老汉av免费一区二区三区| 欧美不卡一二三| 麻豆精品在线播放| 26uuu另类欧美| 国产一区二区三区高清播放| 欧美精品一区二区精品网| 国产成人综合网| 中文子幕无线码一区tr| av动漫一区二区| 亚洲曰韩产成在线| 欧美一区日韩一区| 国产原创一区二区| 国产精品视频在线看| 99国产精品久久久久久久久久久| 亚洲欧洲另类国产综合| 色综合久久久久网| 香蕉久久夜色精品国产使用方法| 欧美日韩精品三区| 久久99蜜桃精品| 国产欧美日产一区| 色狠狠av一区二区三区| 亚洲成va人在线观看| 91精品国产综合久久久久| 精品在线亚洲视频| 国产精品婷婷午夜在线观看| 欧美在线免费观看亚洲| 日本成人中文字幕| 久久久久久黄色| 在线视频一区二区三| 麻豆精品视频在线观看视频| 国产精品女主播av| 精品视频在线看| 国产一区二区三区av电影| 中文字幕在线不卡| 在线不卡一区二区| 成人国产精品免费观看| 亚洲综合久久久| 久久久亚洲国产美女国产盗摄 | 国产a级毛片一区| 蜜臀久久久久久久| 日本一区二区三区免费乱视频| 91首页免费视频| 精品午夜久久福利影院| 亚洲精品免费在线播放| 日韩欧美你懂的| 色哟哟在线观看一区二区三区| 蜜桃传媒麻豆第一区在线观看| 国产精品青草综合久久久久99| 欧美精品 国产精品| av成人老司机| 另类小说综合欧美亚洲| 亚洲欧美日韩小说| 精品免费国产一区二区三区四区| 99国内精品久久| 国产在线国偷精品免费看| 亚洲国产视频一区二区| 国产亚洲综合色| 欧美一区二区三区在线观看| 成人av网在线| 国产一区福利在线| 婷婷开心激情综合| 亚洲精品福利视频网站| 中文一区在线播放|