frm_r_jbtjpas.pas
来自「是一个用delphi设计的考勤系统」· PAS 代码 · 共 203 行
PAS
203 行
unit Frm_R_JbtjPas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ModalForm, Menus, StdCtrls, ExtCtrls, DB, DBTables, ComCtrls,
Buttons, QRCtrls, QuickRpt, Grids, DBGrids, YLabelButton, ChangeImage,
ADODB;
type
TFrm_R_Jbtj = class(TMyModalForm)
Panel1: TPanel;
DBGrid1: TDBGrid;
TV: TTreeView;
Qrjbtj: TQuickRep;
QRGroup2: TQRGroup;
QRExpr1: TQRExpr;
QRBand2: TQRBand;
QRDBText2: TQRDBText;
QRDBText3: TQRDBText;
QRDBText5: TQRDBText;
QRDBText7: TQRDBText;
QRDBText8: TQRDBText;
QRDBText9: TQRDBText;
QRDBText10: TQRDBText;
QRShape14: TQRShape;
QRBand3: TQRBand;
QRLabel15: TQRLabel;
QRExpr3: TQRExpr;
QRBand5: TQRBand;
QRLabel18: TQRLabel;
QRExpr4: TQRExpr;
QRBand1: TQRBand;
QRShape32: TQRShape;
QRLblzbbm: TQRLabel;
QRlbldwmc: TQRLabel;
QRLabel40: TQRLabel;
QRSysData3: TQRSysData;
QRSysData4: TQRSysData;
QRLabel10: TQRLabel;
QRShape4: TQRShape;
QRLabel3: TQRLabel;
QRLabel4: TQRLabel;
QRLabel6: TQRLabel;
QRLabel5: TQRLabel;
QRLabel8: TQRLabel;
QRLabel9: TQRLabel;
QRLabel11: TQRLabel;
QRLabel12: TQRLabel;
QRLabel1: TQRLabel;
PageFooterBand1: TQRBand;
QRShape33: TQRShape;
QRLabel2: TQRLabel;
QRLabel7: TQRLabel;
QRlblzd: TQRLabel;
Panel2: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
ksrq: TDateTimePicker;
jsrq: TDateTimePicker;
GroupBox2: TGroupBox;
Label2: TLabel;
yhbh: TEdit;
chk2: TCheckBox;
GroupBox3: TGroupBox;
Label3: TLabel;
xm: TEdit;
chk3: TCheckBox;
chk4: TCheckBox;
bm: TEdit;
Djbjl: TDataSource;
BtnPrint: TChangeImg;
LBtnPrint: TLabelB;
BtnRefresh: TChangeImg;
LBtnRefresh: TLabelB;
ChangeImg4: TChangeImg;
LabelB5: TLabelB;
Quryjbjl: TADOQuery;
Quryjbjlyhbh: TStringField;
Quryjbjljbksrq: TStringField;
Quryjbjljbkssj: TStringField;
Quryjbjljbjzrq: TStringField;
Quryjbjljbjzsj: TStringField;
Quryjbjljbyy: TStringField;
Quryjbjlyhxm: TStringField;
Quryjbjlbmbh: TStringField;
Quryjbjlbmmc: TStringField;
procedure ChangeImg4Click(Sender: TObject);
procedure TVClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BtnRefreshClick(Sender: TObject);
procedure chk2Click(Sender: TObject);
procedure chk3Click(Sender: TObject);
procedure BtnPrintClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Frm_R_Jbtj: TFrm_R_Jbtj;
implementation
uses DM_DataModal, UGlobal;
{$R *.dfm}
procedure TFrm_R_Jbtj.ChangeImg4Click(Sender: TObject);
begin
inherited;
Close;
end;
procedure TFrm_R_Jbtj.TVClick(Sender: TObject);
begin
inherited;
bm.text := TV.Selected.Text;
end;
procedure TFrm_R_Jbtj.FormCreate(Sender: TObject);
begin
inherited;
ksrq.date := date;
jsrq.date := date;
gtKqgl.LoadOrganTree(WindData.AdoConn, TV, 4); //初始化用户信息
end;
procedure TFrm_R_Jbtj.BtnRefreshClick(Sender: TObject);
var
nodeValue, cs, csz: string;
begin
if ksrq.datetime > jsrq.datetime then
begin
application.MessageBox('时间顺序错误!', '信息提示', mb_ok + mb_IconInformation);
ksrq.SetFocus;
exit;
end;
with Quryjbjl do
begin
sql.Clear;
sql.add('select a.*,b.yhxm,b.bjbh as bmbh,b.bjmc as bmmc from kq_jbjl a,vzx_s_yhxx b where a.yhbh=b.yhbh');
sql.add('and ((jbksrq>=''' + datetostr(ksrq.date) + ''' and jbjzrq<=''' + datetostr(jsrq.date) + ''')');
sql.add('or (jbjzrq>=''' + datetostr(ksrq.date) + ''' and jbjzrq<=''' + datetostr(jsrq.date) + '''))');
if chk2.Checked then
sql.Add('and a.yhbh=' + chr(39) + trim(yhbh.text) + chr(39));
if chk3.Checked then
sql.Add('and b.yhxm like ''' + trim(xm.Text) + '%''');
if chk4.Checked then
begin
try
NodeValue := ptTreeNode(TV.Selected.data)^.nodeValue;
except
application.MessageBox('请选择部门', '信息提示', mb_ok + mb_IconInformation);
TV.SetFocus;
exit;
end;
cs := copy(NodeValue, 1, 1);
csz := copy(NodeValue, 2, length(NodeValue) - 1);
if cs = 'a' then
sql.Add('and b.xqbh=''' + csz + '''')
else if cs = 'b' then
sql.Add('and b.yxbh=''' + csz + '''')
else if cs = 'c' then
sql.Add('and b.zybh=''' + csz + '''')
else if cs = 'd' then
sql.Add('and b.bjbh=''' + csz + '''');
end;
sql.add('order by b.bjbh,a.yhbh');
open;
end;
end;
procedure TFrm_R_Jbtj.chk2Click(Sender: TObject);
begin
inherited;
if chk2.checked then yhbh.SetFocus;
end;
procedure TFrm_R_Jbtj.chk3Click(Sender: TObject);
begin
inherited;
if chk3.checked then xm.SetFocus;
end;
procedure TFrm_R_Jbtj.BtnPrintClick(Sender: TObject);
begin
inherited;
try
QRlbldwmc.Caption := '单位名称:' + gtSysCs.sSydw;
QRLblzbbm.Caption := '制表部门:' + GtSysCs.sZbdw;
QRlblzd.caption := '制单:' ;
QRLabel12.caption := '统计日期:' + datetostr(ksrq.date) + '至' + datetostr(jsrq.date);
Qrjbtj.preview;
except
end;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?