📄 ord500_01.pas.svn-base
字号:
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 + -