frm_r_dkcxpas.pas
来自「是一个用delphi设计的考勤系统」· PAS 代码 · 共 236 行
PAS
236 行
unit Frm_R_DkcxPas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ModalForm, Menus, StdCtrls, ExtCtrls, DB, DBTables, ComCtrls,
Buttons, Grids, DBGrids, QRCtrls, QuickRpt, YLabelButton, ChangeImage,
ADODB, ImgList, UErrDisplay;
type
TFrm_R_Dkcx = class(TMyModalForm)
Panel1: TPanel;
TV: TTreeView;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
QrCurrMonth: TQuickRep;
QRBand1: TQRBand;
QRShape1: TQRShape;
QRLabel2: TQRLabel;
QRLabel4: TQRLabel;
QRLabel6: TQRLabel;
QRBand2: TQRBand;
QRShape4: TQRShape;
QRDBText2: TQRDBText;
QRDBText3: TQRDBText;
QRDBText4: TQRDBText;
QRBand3: TQRBand;
QRShape5: TQRShape;
QRLabel7: TQRLabel;
QRLabel12: TQRLabel;
QRlblzd1: TQRLabel;
QRBand6: TQRBand;
QRShape6: TQRShape;
QRLblzbbm1: TQRLabel;
QRlbldwmc1: TQRLabel;
QRLabel16: TQRLabel;
QRSysData3: TQRSysData;
QRSysData4: TQRSysData;
QRLabel17: TQRLabel;
QRLabel18: TQRLabel;
DBGrid2: TDBGrid;
QrPreMonth: TQuickRep;
QRBand7: TQRBand;
QRLabel9: TQRLabel;
QRShape2: TQRShape;
QRLabel56: TQRLabel;
QRLabel59: TQRLabel;
QRLabel60: TQRLabel;
QRBand8: TQRBand;
QRShape3: TQRShape;
QRDBText19: TQRDBText;
QRDBText20: TQRDBText;
QRDBText21: TQRDBText;
QRDBText22: TQRDBText;
QRBand5: TQRBand;
QRShape32: TQRShape;
QRLblzbbm: TQRLabel;
QRlbldwmc: TQRLabel;
QRLabel40: TQRLabel;
QRSysData5: TQRSysData;
QRSysData6: TQRSysData;
QRLabel1: TQRLabel;
mjjltitle: TQRLabel;
PageFooterBand1: TQRBand;
QRShape33: TQRShape;
QRLabel3: TQRLabel;
QRLabel5: TQRLabel;
QRlblzd: TQRLabel;
TabSheet2: TTabSheet;
DBGrid1: TDBGrid;
Panel2: TPanel;
GroupBox1: TGroupBox;
yhbh: TEdit;
xm: TEdit;
bm: TEdit;
chk2: TCheckBox;
chk3: TCheckBox;
chk5: TCheckBox;
chk4: TCheckBox;
sb: TComboBox;
Panel3: TPanel;
Label7: TLabel;
Label12: TLabel;
Label6: TLabel;
Label10: TLabel;
kssj: TDateTimePicker;
jssj: TDateTimePicker;
ksrq: TDateTimePicker;
jsrq: TDateTimePicker;
Dkqjl: TDataSource;
DsCurMonth: TDataSource;
BtnFind: TChangeImg;
LBtnFind: TLabelB;
BtnPrint: TChangeImg;
LBtnPrint: TLabelB;
ChangeImg4: TChangeImg;
LabelB5: TLabelB;
QryCurMonth: TADOQuery;
qrykqjl: TADOQuery;
QryCurMonthsbh: TIntegerField;
QryCurMonthyhbh: TStringField;
QryCurMonthjlrq: TStringField;
QryCurMonthjlsj: TStringField;
QryCurMonthsgdk: TStringField;
QryCurMonthyhxm: TStringField;
QryCurMonthsbms: TStringField;
QryCurMonthbmbh: TStringField;
QryCurMonthbmmc: TStringField;
qrykqjlsbh: TIntegerField;
qrykqjlyhbh: TStringField;
qrykqjljlrq: TStringField;
qrykqjljlsj: TStringField;
qrykqjlsgdk: TStringField;
qrykqjlyhxm: TStringField;
qrykqjlsbms: TStringField;
qrykqjlbmbh: TStringField;
qrykqjlbmmc: TStringField;
procedure FormCreate(Sender: TObject);
procedure BtnFindClick(Sender: TObject);
procedure TVClick(Sender: TObject);
procedure BtnPrintClick(Sender: TObject);
procedure ChangeImg4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Frm_R_Dkcx: TFrm_R_Dkcx;
implementation
uses DM_DataModal, UGlobal;
{$R *.dfm}
procedure TFrm_R_Dkcx.FormCreate(Sender: TObject);
begin
inherited;
gtKqgl.LoadOrganTree(Winddata.AdoConn,TV,4); //初始化用户信息
ksrq.date := date;
jsrq.date := date;
gtKqgl.SetComboxItems(sb,'select sbh,sblx from Zx_d_Device where sblx=0','sbh');
end;
procedure TFrm_R_Dkcx.BtnFindClick(Sender: TObject);
var
sStartsj, sEndsj: string;
GsSql:String;
begin
inherited;
if length(timetostr(kssj.time)) < 8 then
sStartsj := '0' + timetostr(kssj.time)
else
sStartsj := timetostr(kssj.time);
if length(timetostr(jssj.time)) < 8 then
sEndsj := '0' + timetostr(kssj.time)
else
sEndsj := timetostr(jssj.time);
//
if PageControl1.ActivePageIndex = 0 then
GsSql := 'select * from vkq_kqjlCur'
else
GsSql := 'select * from vkq_kqjl';
//
GsSql := GsSql + ' where (jlrq>=''' + datetostr(ksrq.date)
+ ''' and jlrq<=''' + datetostr(jsrq.date) + ''')';
GsSql := GsSql + ' and (jlsj>=''' + sStartsj
+ ''' and jlsj<=''' + sEndsj + ''')';
if (chk2.checked) and (yhbh.text <> '') then
GsSql := GsSql + ' and yhbh=''' + trim(yhbh.Text) + '''';
if (chk3.Checked) and (xm.text <> '') then
GsSql := GsSql + ' and yhxm like ''' + trim(xm.text) + '%''';
if chk4.Checked then
GsSql := GsSql + ' and bmmc=''' + trim(bm.Text) + '''';
if (chk5.Checked) and (sb.text <> '') then
GsSql := GsSql + ' and sbh=' + sb.text;
GsSql := GsSql + ' order by yhbh,jlrq,jlsj';
//
if PageControl1.ActivePageIndex = 0 then
begin
with QryCurMonth do
begin
sql.Clear;
sql.add(gssql);
open;
end;
end
else
begin
with qrykqjl do
begin
sql.Clear;
sql.add(gssql);
open;
end;
end;
end;
procedure TFrm_R_Dkcx.TVClick(Sender: TObject);
begin
inherited;
if tv.selected.level > 1 then bm.text := TV.Selected.Text;
end;
procedure TFrm_R_Dkcx.BtnPrintClick(Sender: TObject);
begin
inherited;
try
if PageControl1.ActivePageIndex = 1 then
begin
QRlbldwmc.Caption:='单位名称:'+gtSysCs.sSydw;
QRLblzbbm.Caption:='制表部门:'+gtSysCs.sZbDw;
QRlblzd.caption:='制单:';
QrPreMonth.Preview; //运行报表
end
else begin
QRlbldwmc1.Caption:='单位名称:'+gtSysCs.sSydw;
QRLblzbbm1.Caption:='制表部门:'+gtSysCs.sZbDw;
QRlblzd1.caption:='制单:';
QrCurrMonth.preview;
end;
except
end;
end;
procedure TFrm_R_Dkcx.ChangeImg4Click(Sender: TObject);
begin
inherited;
Close;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?