📄 cwa100_01.pas.svn-base
字号:
unit Cwa100_01;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Bas100_01, Db, Menus, StdCtrls, ExtCtrls, Grids,
ComCtrls, ToolWin, wwdbdatetimepicker, Buttons, dxExEdtr, dxCntner, dxTL,
dxDBCtrl, dxDBGrid, ADODB, ActnList, dxDBTLCl, dxGrClms;
type
TCwa100_01Form = class(TBas100_01Form)
CoolBar1: TCoolBar;
ToolBar2: TToolBar;
tlbFirst: TToolButton;
tlbPrior: TToolButton;
tlbNext: TToolButton;
tlbLast: TToolButton;
ToolButton1: TToolButton;
tlbLocate: TToolButton;
tlbPrint: TToolButton;
ToolButton4: TToolButton;
tlbSet: TToolButton;
ToolButton3: TToolButton;
tlbExit: TToolButton;
Panel1: TPanel;
Image1: TImage;
PopupMenu1: TPopupMenu;
mmiPrint: TMenuItem;
mmiExport: TMenuItem;
dsCwa100: TDataSource;
Label1: TLabel;
wwDBDateTimePicker1: TwwDBDateTimePicker;
Label2: TLabel;
wwDBDateTimePicker2: TwwDBDateTimePicker;
SpeedButton1: TSpeedButton;
qryCwa100: TADOQuery;
tlbSearch: TToolButton;
ActionList1: TActionList;
ActFirst: TAction;
ActPrior: TAction;
ActNext: TAction;
ActLast: TAction;
ActLocate: TAction;
ActSearch: TAction;
ActPrint: TAction;
ActExport: TAction;
ActExit: TAction;
ActSet: TAction;
SaveDialog1: TSaveDialog;
qryCwa100C100_001: TDateTimeField;
qryCwa100C100_004: TStringField;
ScrollBox1: TScrollBox;
dxDBGrid1: TdxDBGrid;
dxDBGrid1C100_001: TdxDBGridDateColumn;
dxDBGrid1C100_002: TdxDBGridColumn;
dxDBGrid1C100_003: TdxDBGridColumn;
dxDBGrid1C100_004: TdxDBGridColumn;
qryCwa100C100_002: TSmallintField;
qryCwa100C100_003: TSmallintField;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure SpeedButton1Click(Sender: TObject);
procedure wwDBDateTimePicker1Change(Sender: TObject);
procedure ReportGetValue(const ParName: String;
var ParValue: Variant);
procedure ActFirstExecute(Sender: TObject);
procedure ActPriorExecute(Sender: TObject);
procedure ActNextExecute(Sender: TObject);
procedure ActLastExecute(Sender: TObject);
procedure ActLocateExecute(Sender: TObject);
procedure ActSearchExecute(Sender: TObject);
procedure ActPrintExecute(Sender: TObject);
procedure ActExportExecute(Sender: TObject);
procedure ActSetExecute(Sender: TObject);
procedure ActExitExecute(Sender: TObject);
procedure qryCwa100C100_003GetText(Sender: TField; var Text: String;
DisplayText: Boolean);
procedure qryCwa100C100_002GetText(Sender: TField; var Text: String;
DisplayText: Boolean);
private
WeekDay: array [1..7] of string;
WorkDay: array [1..5] of string;
procedure SetInterface;
{ Private declarations }
public
{ Public declarations }
end;
var
Cwa100_01Form: TCwa100_01Form;
implementation
uses Cwa100_02, CommFun, SYSDATA;
{$R *.DFM}
procedure TCwa100_01Form.SetInterface;
begin
Image1.Picture.Bitmap.LoadFromResourceName(AImgHandle,'TOPTITL');
Caption:=GetDBString('CWA10001001'); //工作日历维护
ActFirst.Caption:=GetDBString('COM00005001'); //最前
ActPrior.Caption:=GetDBString('COM00005002'); //上移
ActNext.Caption:=GetDBString('COM00005003'); //下移
ActLast.Caption:=GetDBString('COM00005004'); //最后
ActLocate.Caption:=GetDBString('COM00005011'); //查找
ActSearch.Caption:=GetDBString('COM00005012'); //查询
ActPrint.Caption:=GetDBString('COM00005013'); //打印
ActExport.Caption:=GetDBString('COM00005014'); //导出数据
ActExit.Caption:=GetDBString('COM00005015'); //退出
ActFirst.Hint:=GetDBString('COM00005001',2); //移到第一条记录
ActPrior.Hint:=GetDBString('COM00005002',2); //移到上一条记录
ActNext.Hint:=GetDBString('COM00005003',2); //移到下一条记录
ActLast.Hint:=GetDBString('COM00005004',2); //移到最后一条记录
ActLocate.Hint:=GetDBString('COM00005011',2); //快速定位记录
ActSearch.Hint:=GetDBString('COM00005012',2); //按条件查询数据
ActPrint.Hint:=GetDBString('COM00005013',2); //将数据打印出来
ActExport.Hint:=GetDBString('COM00005014',2); //导出数据到文件中
ActExit.Hint:=GetDBString('COM00005015',2); //关闭当前窗口
ActSet.Caption:=GetDBString('CWA10001009'); //设置
Label1.Caption:=GetDBString('CWA10001011'); //起始日期
Label2.Caption:=GetDBString('CWA10001012'); //结束日期
SpeedButton1.Caption:=GetDBString('CWA10001013'); //确定
qryCwa100C100_001.DisplayLabel:=GetDBString('CWA10001014'); //日期
qryCwa100C100_002.DisplayLabel:=GetDBString('CWA10001015'); //类型
qryCwa100C100_003.DisplayLabel:=GetDBString('CWA10001016'); //星期
qryCwa100C100_004.DisplayLabel:=GetDBString('CWA10001017'); //备注
WeekDay[1]:=GetDBString('CWA10001020'); //星期日
WeekDay[2]:=GetDBString('CWA10001021'); //星期一
WeekDay[3]:=GetDBString('CWA10001022'); //星期二
WeekDay[4]:=GetDBString('CWA10001023'); //星期三
WeekDay[5]:=GetDBString('CWA10001024'); //星期四
WeekDay[6]:=GetDBString('CWA10001025'); //星期五
WeekDay[7]:=GetDBString('CWA10001026'); //星期六
WorkDay[1]:=GetDBString('CWA10001027'); //工作日
WorkDay[2]:=GetDBString('CWA10001028'); //全天公休
WorkDay[3]:=GetDBString('CWA10001029'); //国定假日
WorkDay[4]:=GetDBString('CWA10001030'); //下午公休半天
WorkDay[5]:=GetDBString('CWA10001031'); //上午公休半天
end;
procedure TCwa100_01Form.FormCreate(Sender: TObject);
begin
inherited;
wwDBDateTimePicker1.Date:=GetMonthFirstDate(Date);
wwDBDateTimePicker2.Date:=GetMonthEndDate(Date);
//设置界面信息
SetInterface;
SpeedButton1.Click;
end;
procedure TCwa100_01Form.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
qryCwa100.Close;
end;
procedure TCwa100_01Form.SpeedButton1Click(Sender: TObject);
begin
inherited;
//确定
if wwDBDateTimePicker1.Date>wwDBDateTimePicker2.Date then
begin
ShowMsg('UMS10000044'); //起始日期不能大于结束日期
Abort;
end;
qryCwa100.Close;
qryCwa100.SQL.Clear;
qryCwa100.SQL.Add('select * from CWA100 where C100_001>='+GetDateString(wwDBDateTimePicker1.Date)+' and C100_001<='+GetDateString(wwDBDateTimePicker2.Date));
qryCwa100.Open;
end;
procedure TCwa100_01Form.wwDBDateTimePicker1Change(Sender: TObject);
begin
inherited;
wwDBDateTimePicker2.Date:=GetMonthEndDate(wwDBDateTimePicker1.Date);
end;
procedure TCwa100_01Form.ReportGetValue(const ParName: String;
var ParValue: Variant);
begin
inherited;
if ParName='USENM' then ParValue:=AUserName
else if ParName='PRNDT' then ParValue:=GetDBString('COM00006006') //列印日期
else if ParName='PRNNM' then ParValue:=GetDBString('COM00006007') //列印人員
else if ParName='REPNM' then ParValue:=AReportTitle
else if ParName='C100_001' then ParValue:=GetDBString('CWA10001014') //日期
else if ParName='C100_002' then ParValue:=GetDBString('CWA10001015') //类型
else if ParName='C100_003' then ParValue:=GetDBString('CWA10001016') //星期
else if ParName='C100_004' then ParValue:=GetDBString('CWA10001017') //备注
end;
procedure TCwa100_01Form.ActFirstExecute(Sender: TObject);
begin
inherited;
//最前
if qryCwa100.IsEmpty then Exit;
qryCwa100.First;
ActFirst.Enabled:=False;
ActPrior.Enabled:=False;
ActNext.Enabled:=True;
ActLast.Enabled:=True;
end;
procedure TCwa100_01Form.ActPriorExecute(Sender: TObject);
begin
inherited;
//上移
if qryCwa100.IsEmpty then Exit;
qryCwa100.Prior;
ActNext.Enabled:=not qryCwa100.Eof;
ActLast.Enabled:=not qryCwa100.Eof;
ActFirst.Enabled:=not qryCwa100.Bof;
ActPrior.Enabled:=not qryCwa100.Bof;
end;
procedure TCwa100_01Form.ActNextExecute(Sender: TObject);
begin
inherited;
//下移
if qryCwa100.IsEmpty then Exit;
qryCwa100.Next;
ActNext.Enabled:=not qryCwa100.Eof;
ActLast.Enabled:=not qryCwa100.Eof;
ActFirst.Enabled:=not qryCwa100.Bof;
ActPrior.Enabled:=not qryCwa100.Bof;
end;
procedure TCwa100_01Form.ActLastExecute(Sender: TObject);
begin
inherited;
//最后
if qryCwa100.IsEmpty then Exit;
qryCwa100.Last;
ActNext.Enabled:=False;
ActLast.Enabled:=False;
ActFirst.Enabled:=True;
ActPrior.Enabled:=True;
end;
procedure TCwa100_01Form.ActLocateExecute(Sender: TObject);
begin
inherited;
//查找
if qryCwa100.IsEmpty then
begin
ShowMsg('UMS10000002'); //表记录为空,操作无效
Exit;
end;
LocateDialog(dsCwa100);
end;
procedure TCwa100_01Form.ActSearchExecute(Sender: TObject);
begin
inherited;
//查询
FilterDialog(dsCwa100);
end;
procedure TCwa100_01Form.ActPrintExecute(Sender: TObject);
begin
inherited;
//打印
SelectReport(qryCwa100,AProgramID,AReportName,ReportGetValue);
end;
procedure TCwa100_01Form.ActExportExecute(Sender: TObject);
begin
inherited;
//导出到Excel
if qryCwa100.IsEmpty then
begin
ShowMsg('UMS10000002'); //表记录为空,操作无效
Abort;
end;
SaveToExcel(dxDBGrid1);
end;
procedure TCwa100_01Form.ActSetExecute(Sender: TObject);
begin
inherited;
//设置
Cwa100_02Form:=TCwa100_02Form.Create(Application);
Cwa100_02Form.ShowModal;
SpeedButton1.Click;
end;
procedure TCwa100_01Form.ActExitExecute(Sender: TObject);
begin
inherited;
//退出
Close;
end;
procedure TCwa100_01Form.qryCwa100C100_003GetText(Sender: TField;
var Text: String; DisplayText: Boolean);
begin
inherited;
if qryCwa100.IsEmpty then Exit;
case Sender.AsInteger of
0:Text:=WeekDay[1]; //星期日
1:Text:=WeekDay[2]; //星期一
2:Text:=WeekDay[3]; //星期二
3:Text:=WeekDay[4]; //星期三
4:Text:=WeekDay[5]; //星期四
5:Text:=WeekDay[6]; //星期五
6:Text:=WeekDay[7]; //星期六
end;
end;
procedure TCwa100_01Form.qryCwa100C100_002GetText(Sender: TField;
var Text: String; DisplayText: Boolean);
begin
inherited;
if qryCwa100.IsEmpty then Exit;
case Sender.AsInteger of
1:Text:=WorkDay[1]; //工作日
2:Text:=WorkDay[2]; //全天公休
3:Text:=WorkDay[3]; //国定假日
4:Text:=WorkDay[4]; //下午公休半天
5:Text:=WorkDay[5]; //上午公休半天
end;
end;
initialization
RegisterClass(TCwa100_01Form);
finalization
UnRegisterClass(TCwa100_01Form);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -