📄 ord330_01.pas.svn-base
字号:
unit Ord330_01;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Bas200_03, dxExEdtr, ActnList, DB, ADODB, Menus, dxCntner, dxTL,
dxDBCtrl, dxDBGrid, ExtCtrls, ComCtrls, ToolWin, Buttons, StdCtrls,
wwdbdatetimepicker, dxDBTLCl, dxGrClms;
type
TOrd330_01Form = class(TBas200_03Form)
lblType: TLabel;
cbType: TComboBox;
edtDays: TEdit;
UpDown1: TUpDown;
lblDays: TLabel;
sbSearch: TSpeedButton;
edtFromDate: TwwDBDateTimePicker;
lblDate: TLabel;
dxDBGrid1O150_002: TdxDBGridColumn;
dxDBGrid1O150_003: TdxDBGridColumn;
dxDBGrid1O150_004: TdxDBGridColumn;
dxDBGrid1I150_003: TdxDBGridColumn;
dxDBGrid1O153_003: TdxDBGridColumn;
dxDBGrid1O153_004: TdxDBGridColumn;
dxDBGrid1FFromdate: TdxDBGridDateColumn;
dxDBGrid1FDay: TdxDBGridMaskColumn;
ADOQuery1O150_002: TWideStringField;
ADOQuery1O150_003: TWideStringField;
ADOQuery1O150_004: TWideStringField;
ADOQuery1I150_003: TWideStringField;
ADOQuery1O153_003: TWideStringField;
ADOQuery1O153_004: TWideStringField;
ADOQuery1FFromdate: TDateTimeField;
ADOQuery1FDay: TFloatField;
procedure FormCreate(Sender: TObject);
procedure sbSearchClick(Sender: TObject);
private
{ Private declarations }
procedure ByPay(AFromDate:TDateTime;ADays:integer);
procedure ByFree(AFromDate:TDateTime;ADays:integer);
public
{ Public declarations }
procedure SetInterface; override;
procedure BrowseEvent; override;
procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
end;
var
Ord330_01Form: TOrd330_01Form;
implementation
uses SYSDATA, CommFun, HwSelData;
{$R *.dfm}
procedure TOrd330_01Form.BrowseEvent;
begin
inherited;
end;
procedure TOrd330_01Form.ByFree(AFromDate: TDateTime; ADays: integer);
begin
//免费保养
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select O150_002,O150_003,O150_004,I150_003,O153_003,O153_004,O153_010 as FFromdate,O153_010-now as FDay');
ADOQuery1.SQL.Add(' from ORD150,INV150,ORD153');
ADOQuery1.SQL.Add(' where O150_001=O153_001 and O153_002=I150_001 and O153_010>='+GetDateString(AFromDate)+' and O153_010-'+GetDateString(AFromDate)+'<='+ inttostr(ADays));
ADOQuery1.SQL.Add(' order by O150_002,O153_010');
ADOQuery1.Open;
end;
procedure TOrd330_01Form.ByPay(AFromDate: TDateTime; ADays: integer);
begin
//收费保养
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select O150_002,O150_003,O150_004,I150_003,O153_003,O153_004,O153_008 as FFromdate,O153_008-now as FDay');
ADOQuery1.SQL.Add(' from ORD150,INV150,ORD153');
ADOQuery1.SQL.Add(' where O150_001=O153_001 and O153_002=I150_001 and O153_008>='+GetDateString(AFromDate)+' and O153_008-'+GetDateString(AFromDate)+'<='+ inttostr(ADays));
ADOQuery1.SQL.Add(' order by O150_002,O153_008');
ADOQuery1.Open;
end;
procedure TOrd330_01Form.FormCreate(Sender: TObject);
var
ADate:TDateTime;
begin
inherited;
ADate:=GetServerDate;
edtFromDate.Date:=ADate;
sbSearch.Click;
end;
procedure TOrd330_01Form.ReportGetValue(const ParName: String;
var ParValue: Variant);
begin
inherited;
end;
procedure TOrd330_01Form.sbSearchClick(Sender: TObject);
var
AFromDate:TDateTime;
ADays:Integer;
begin
inherited;
//查询
if (edtFromDate.Text='') then
begin
ShowMsg('UMS10000319'); //起止日期不可为空
if edtFromDate.Text='' then edtFromDate.SetFocus;
Abort;
end;
AFromDate:=edtFromDate.Date;
ADays:=UpDown1.Position;
Screen.Cursor:=crHourGlass;
if Assigned(SYSDM.wwFilterDialog1.Form) then SYSDM.wwFilterDialog1.ClearFilter;
ADOQuery1.DisableControls;
case cbType.ItemIndex of
0:ByPay(AFromDate,ADays); //收费保养
1:ByFree(AFromDate,ADays); //免费保养
end;
ADOQuery1.EnableControls;
Screen.Cursor:=crDefault;
end;
procedure TOrd330_01Form.SetInterface;
begin
inherited;
Caption:=GetDBString('ORD30001001'); //销售产品查询
lblType.Caption:=GetDBString('ORD30001002'); //类型
lblDate.Caption:=GetDBString('ORD30001003'); //开始日期
lblDays.Caption:=GetDBString('ORD30001004'); //提前天数
sbSearch.Caption:=GetDBString('ORD30001005'); //查询
cbType.Clear;
cbType.Items.Add(GetDBString('ORD30001006')); //收费保养
cbType.Items.Add(GetDBString('ORD30001007')); //免费保养
cbType.ItemIndex:=0;
ADOQuery1O150_002.DisplayLabel:=GetDBString('ORD30001008'); //客户编号
ADOQuery1O150_003.DisplayLabel:=GetDBString('ORD30001009'); //客户名称
ADOQuery1O150_004.DisplayLabel:=GetDBString('ORD30001010'); //客户简称
ADOQuery1I150_003.DisplayLabel:=GetDBString('ORD30001011'); //料品名称
ADOQuery1O153_003.DisplayLabel:=GetDBString('ORD30001012'); //机身编号
ADOQuery1O153_004.DisplayLabel:=GetDBString('ORD30001013'); //控制器号
ADOQuery1FFromdate.DisplayLabel:=GetDBString('ORD30001014'); //保养结束日期
ADOQuery1FDay.DisplayLabel:=GetDBString('ORD30001015'); //距离天数
end;
initialization
RegisterClass(TOrd330_01Form);
finalization
UnRegisterClass(TOrd330_01Form);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -