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

📄 ord500_01.pas.svn-base

📁 一个用Delphi开发的ERP软件
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
unit Ord500_01;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, BAS200_10, dxExEdtr, ActnList, DB, ADODB, Menus, dxCntner, dxTL,
  dxDBCtrl, dxDBGrid, ExtCtrls, ComCtrls, ToolWin, StdCtrls,
  wwdbdatetimepicker, Buttons, dxDBTLCl, dxGrClms;

type
  TOrd500_01Form = class(TBas200_10Form)
    lblDate: TLabel;
    sbSearch: TSpeedButton;
    edtFromDate: TwwDBDateTimePicker;
    edtToDate: TwwDBDateTimePicker;
    qryHrm150: TADOQuery;
    qryHrm150H150_001: TAutoIncField;
    qryHrm150H150_002: TWideStringField;
    qryHrm150H150_003: TWideStringField;
    ADOQuery1O500A_001: TWideStringField;
    ADOQuery1O100_002: TWideStringField;
    ADOQuery1O500A_002: TIntegerField;
    ADOQuery1O500A_003: TDateTimeField;
    ADOQuery1O500A_004: TSmallintField;
    ADOQuery1H150_002: TStringField;
    ADOQuery1H150_003: TStringField;
    ADOQuery1O500A_005: TIntegerField;
    ADOQuery1O500A_006: TIntegerField;
    ADOQuery1G100_002: TWideStringField;
    ADOQuery1G100_003: TWideStringField;
    ADOQuery1O500A_007: TIntegerField;
    ADOQuery1O500A_008: TBCDField;
    ADOQuery1O500A_009: TIntegerField;
    ADOQuery1O500A_010: TSmallintField;
    ADOQuery1O500A_011: TWideStringField;
    ADOQuery1O500A_012: TFloatField;
    ADOQuery1O500A_013: TBCDField;
    ADOQuery1O500A_014: TFloatField;
    ADOQuery1O500A_015: TFloatField;
    ADOQuery1O500A_016: TFloatField;
    ADOQuery1O150_002: TWideStringField;
    ADOQuery1O150_003: TWideStringField;
    ADOQuery1O150_005: TWideStringField;
    ADOQuery1O150_006: TWideStringField;
    ADOQuery1O150_012: TWideStringField;
    ADOQuery1O500A_017: TIntegerField;
    ADOQuery1O500A_018: TWideStringField;
    ADOQuery1O500A_020: TMemoField;
    ADOQuery1O500A_021: TMemoField;
    ADOQuery1O500A_022: TDateTimeField;
    ADOQuery1O500A_023: TWideStringField;
    ADOQuery1O500A_024: TDateTimeField;
    ADOQuery1O500A_025: TWideStringField;
    dxDBGrid1O500A_001: TdxDBGridColumn;
    dxDBGrid1O100_002: TdxDBGridColumn;
    dxDBGrid1O500A_003: TdxDBGridDateColumn;
    dxDBGrid1O500A_004: TdxDBGridMaskColumn;
    dxDBGrid1H150_002: TdxDBGridLookupColumn;
    dxDBGrid1H150_003: TdxDBGridLookupColumn;
    dxDBGrid1G100_002: TdxDBGridColumn;
    dxDBGrid1G100_003: TdxDBGridColumn;
    dxDBGrid1O500A_008: TdxDBGridCurrencyColumn;
    dxDBGrid1G110_002: TdxDBGridMaskColumn;
    dxDBGrid1O500A_010: TdxDBGridMaskColumn;
    dxDBGrid1O500A_013: TdxDBGridCurrencyColumn;
    dxDBGrid1O150_002: TdxDBGridColumn;
    dxDBGrid1O150_003: TdxDBGridColumn;
    dxDBGrid1O150_005: TdxDBGridColumn;
    dxDBGrid1O150_006: TdxDBGridColumn;
    dxDBGrid1O150_012: TdxDBGridColumn;
    dxDBGrid1O500A_018: TdxDBGridColumn;
    dxDBGrid1O500A_019: TdxDBGridMaskColumn;
    dxDBGrid1O500A_022: TdxDBGridDateColumn;
    dxDBGrid1O500A_023: TdxDBGridColumn;
    dxDBGrid1O500A_024: TdxDBGridDateColumn;
    dxDBGrid1O500A_025: TdxDBGridColumn;
    ADOQuery1G110_002: TWideStringField;
    ADOQuery1O500A_019: TSmallintField;
    dxDBGrid1O500A_012: TdxDBGridCurrencyColumn;
    dxDBGrid1O500A_014: TdxDBGridCurrencyColumn;
    dxDBGrid1O500A_015: TdxDBGridCurrencyColumn;
    dxDBGrid1O500A_016: TdxDBGridCurrencyColumn;
    adsOrd500: TADODataSet;
    adsOrd500FItemID: TStringField;
    adsOrd500FItemName: TStringField;
    adsOrd500FAmount: TFloatField;
    adsOrd500FRemark: TStringField;
    adsOrd500FItemSpec: TStringField;
    adsOrd500FPrice: TFloatField;
    adsOrd500FUnitID: TStringField;
    adsOrd500FUnitName: TStringField;
    adsOrd500FUnitRate: TFloatField;
    adsOrd500FQty: TFloatField;
    adsOrd500FDisRate: TFloatField;
    adsOrd500FDisAmt: TFloatField;
    adsOrd500FTax: TFloatField;
    adsOrd500FTaxAmt: TFloatField;
    adsOrd500FNetAmt: TFloatField;
    adsOrd500FAcrAmt: TFloatField;
    adsOrd500FDate: TDateTimeField;
    adsOrd500FFactDate: TDateTimeField;
    adsOrd500FReceQty: TFloatField;
    adsOrd500FPlace: TStringField;
    adsOrd500FNo: TIntegerField;
    adsOrd500FItemNo: TIntegerField;
    adsOrd500FUnitNo: TIntegerField;
    adsOrd500FFromID: TStringField;
    adsOrd500FLineNo: TIntegerField;
    adsOrd500FReturn: TFloatField;
    adsOrd500FIsBySum: TBooleanField;
    adsOrd500B: TADODataSet;
    adsOrd500BFItemID: TStringField;
    adsOrd500BFItemName: TStringField;
    adsOrd500BFItemSpec: TStringField;
    adsOrd500BFQty: TFloatField;
    adsOrd500BFUnitID: TStringField;
    adsOrd500BFUnitName: TStringField;
    adsOrd500BFUnitRate: TFloatField;
    adsOrd500BFPrice: TFloatField;
    adsOrd500BFAmount: TFloatField;
    adsOrd500BFDisRate: TFloatField;
    adsOrd500BFDisAmt: TFloatField;
    adsOrd500BFNetAmt: TFloatField;
    adsOrd500BFTax: TFloatField;
    adsOrd500BFTaxAmt: TFloatField;
    adsOrd500BFAcrAmt: TFloatField;
    adsOrd500BFDate: TDateTimeField;
    adsOrd500BFFactDate: TDateTimeField;
    adsOrd500BFReceQty: TFloatField;
    adsOrd500BFPlace: TStringField;
    adsOrd500BFRemark: TStringField;
    adsOrd500BFNo: TIntegerField;
    adsOrd500BFItemNo: TIntegerField;
    adsOrd500BFUnitNo: TIntegerField;
    adsOrd500BFLineNo: TIntegerField;
    adsOrd500BFFromID: TStringField;
    adsOrd500BFReturn: TFloatField;
    adsOrd500BFIsBySum: TBooleanField;
    qryOrd500B: TADOQuery;
    procedure sbSearchClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ADOQuery1O500A_004GetText(Sender: TField; var Text: String;
      DisplayText: Boolean);
    procedure ADOQuery1O500A_010GetText(Sender: TField; var Text: String;
      DisplayText: Boolean);
    procedure ADOQuery1O500A_019GetText(Sender: TField; var Text: String;
      DisplayText: Boolean);
    procedure Action1Execute(Sender: TObject);
    procedure Action2Execute(Sender: TObject);
    procedure Action3Execute(Sender: TObject);
    procedure dxDBGrid1O500A_001DrawSummaryFooter(Sender: TObject;
      ACanvas: TCanvas; ARect: TRect; var AText: String;
      var AAlignment: TAlignment; AFont: TFont; var AColor: TColor;
      var ADone: Boolean);
    procedure Action4Execute(Sender: TObject);
    procedure ActPrintExecute(Sender: TObject);
    procedure ADOQuery1AfterScroll(DataSet: TDataSet);
  private
    AStatus:array[0..4] of string;
    APick:array[0..4] of string;
    AFrom:array[0..1] of string;
    procedure GetDetailData;
    { Private declarations }
  public
    procedure SetInterface; override;
    procedure InsertEvent; override;
    procedure UpdateEvent; override;
    procedure DeleteEvent; override;
    procedure BrowseEvent; override;
    procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
    { Public declarations }
  end;

var
  Ord500_01Form: TOrd500_01Form;

implementation

uses SYSDATA, CommFun, OrdComm, Ord500_02;

{$R *.dfm}

procedure TOrd500_01Form.SetInterface;
begin
  inherited;
  Caption:=GetDBString('ORD50001001');  //销售报价维护
  lblDate.Caption:=GetDBString('ORD50001002');  //日期
  sbSearch.Caption:=GetDBString('ORD50001003');  //查询

  ADOQuery1O500A_001.DisplayLabel:=GetDBString('ORD50001004');  //报价单号
  ADOQuery1O100_002.DisplayLabel:=GetDBString('ORD50001005');  //报价类型
  ADOQuery1O500A_003.DisplayLabel:=GetDBString('ORD50001006');  //报价日期
  ADOQuery1O500A_004.DisplayLabel:=GetDBString('ORD50001007');  //报价状态
  ADOQuery1H150_002.DisplayLabel:=GetDBString('ORD50001008');  //员工编号
  ADOQuery1H150_003.DisplayLabel:=GetDBString('ORD50001009');  //员工姓名
  ADOQuery1G100_002.DisplayLabel:=GetDBString('ORD50001010');  //币别编号
  ADOQuery1G100_003.DisplayLabel:=GetDBString('ORD50001011');  //币别名称
  ADOQuery1O500A_008.DisplayLabel:=GetDBString('ORD50001012');  //币别汇率
  ADOQuery1G110_002.DisplayLabel:=GetDBString('ORD50001013');  //付款方式
  ADOQuery1O500A_010.DisplayLabel:=GetDBString('ORD50001014');  //来源类型
//  ADOQuery1O500A_011.DisplayLabel:=GetDBString('ORD50001015');  //来源单号
  ADOQuery1O500A_012.DisplayLabel:=GetDBString('ORD50001016');  //金额总计
  ADOQuery1O500A_013.DisplayLabel:=GetDBString('ORD50001017');  //折扣比率
  ADOQuery1O500A_014.DisplayLabel:=GetDBString('ORD50001018');  //折扣金额
  ADOQuery1O500A_015.DisplayLabel:=GetDBString('ORD50001019');  //特殊费用
  ADOQuery1O500A_016.DisplayLabel:=GetDBString('ORD50001020');  //应收金额
  ADOQuery1O150_002.DisplayLabel:=GetDBString('ORD50001021');  //客户编号
  ADOQuery1O150_003.DisplayLabel:=GetDBString('ORD50001022');  //客户名称
  ADOQuery1O150_005.DisplayLabel:=GetDBString('ORD50001023');  //电话号码
  ADOQuery1O150_006.DisplayLabel:=GetDBString('ORD50001024');  //传真号码
  ADOQuery1O150_012.DisplayLabel:=GetDBString('ORD50001025');  //客户址址
  ADOQuery1O500A_018.DisplayLabel:=GetDBString('ORD50001026');  //交货地址
  ADOQuery1O500A_019.DisplayLabel:=GetDBString('ORD50001027');  //提货方式
  ADOQuery1O500A_020.DisplayLabel:=GetDBString('ORD50001028');  //销售条款
  ADOQuery1O500A_021.DisplayLabel:=GetDBString('ORD50001029');  //备注说明
  ADOQuery1O500A_022.DisplayLabel:=GetDBString('ORD50001030');  //制单日期
  ADOQuery1O500A_023.DisplayLabel:=GetDBString('ORD50001031');  //制单人员
  ADOQuery1O500A_024.DisplayLabel:=GetDBString('ORD50001032');  //修改日期
  ADOQuery1O500A_025.DisplayLabel:=GetDBString('ORD50001033');  //修改人员

  //报价状态(0=新建,1=确认,2=报价,3=完成,4=取消)
  AStatus[0]:=GetDBString('ORD50001034');  //新建
  AStatus[1]:=GetDBString('ORD50001036');  //确认
  AStatus[2]:=GetDBString('ORD50001035');  //报价
  AStatus[3]:=GetDBString('ORD50001038');  //完成
  AStatus[4]:=GetDBString('ORD50001037');  //取消
  Action1.Caption:=AStatus[1];  //确定
  Action2.Caption:=AStatus[2];  //报价
  Action3.Caption:=AStatus[3];  //完成
  Action4.Caption:=AStatus[4];  //取消

  //提货方式(0=自提,1=送货,2=托运,3=邮寄,4=快递)
  APick[0]:=GetDBString('ORD50001039');  //自提
  APick[1]:=GetDBString('ORD50001040');  //送货
  APick[2]:=GetDBString('ORD50001041');  //托运
  APick[3]:=GetDBString('ORD50001042');  //邮寄
  APick[4]:=GetDBString('ORD50001043');  //快递

  //来源类型(0=手工输入,1=来电记录)
  AFrom[0]:=GetDBString('ORD50001044');  //手工输入
  AFrom[1]:=GetDBString('ORD50001045');  //来电记录
end;

procedure TOrd500_01Form.sbSearchClick(Sender: TObject);
begin
  inherited;
//查询
  if (edtFromDate.Text='') or (edtToDate.Text='') then
  begin
    ShowMsg('UMS10000319');  //起止日期不可为空
    if edtFromDate.Text='' then edtFromDate.SetFocus else edtToDate.SetFocus;
    Abort;
  end;
  if edtFromDate.Date>edtToDate.Date then
  begin
    ShowMsg('UMS10000320');  //结束日期不能小于起始日期
    edtToDate.SetFocus;
    Abort;
  end;

  Screen.Cursor:=crHourGlass;
  ADOQuery1.DisableControls;
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('select A.*,');
  ADOQuery1.SQL.Add('    B.O100_002,');
  ADOQuery1.SQL.Add('    C.O150_002,C.O150_003,C.O150_005,C.O150_006,C.O150_012,');
  ADOQuery1.SQL.Add('    D.G100_002,D.G100_003,');
  ADOQuery1.SQL.Add('    E.G110_002');
  ADOQuery1.SQL.Add('from ORD500A A,ORD100 B,ORD150 C,GLD100 D,GLD110 E');
  ADOQuery1.SQL.Add('where A.O500A_002=B.O100_001 and A.O500A_017=C.O150_001 and A.O500A_007=D.G100_001 and A.O500A_009=E.G110_001');
  ADOQuery1.SQL.Add('      and O500A_003>='+GetDateString(edtFromDate.Date)+' and O500A_003<='+GetDateString(edtToDate.Date));
  ADOQuery1.SQL.Add('order by A.O500A_001');
  ADOQuery1.Open;
  ARecordCount:=GetDataSetCount(ADOQuery1);
  ADOQuery1.EnableControls;
  Screen.Cursor:=crDefault;
end;

procedure TOrd500_01Form.FormCreate(Sender: TObject);
var
  ADate:TDateTime;
begin
  inherited;
  ADate:=GetServerDate;
  edtFromDate.Date:=GetMonthFirstDate(ADate);
  edtToDate.Date:=GetMonthEndDate(ADate);
  sbSearch.Click;
end;

procedure TOrd500_01Form.FormClose(Sender: TObject;

⌨️ 快捷键说明

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