📄 cwa550_01.pas.svn-base
字号:
qryCwa550A.Close;
qryCwa550B.Close;
qryCwa510.Close;
Action:=cafree;
end;
procedure TCwa550_01Form.cbYearChange(Sender: TObject);
begin
inherited;
GetMonths(StrToInt(cbYear.Text),cbMonth);
end;
procedure TCwa550_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='C550A_001' then ParValue:=GetDBString('CWA55001005') //年份
else if ParName='C550A_002' then ParValue:=GetDBString('CWA55001006') //月份
else if ParName='C550A_006' then ParValue:=GetDBString('CWA55001014') //项目名称
else if ParName='C550A_007' then ParValue:=GetDBString('CWA55001015') //数值
else if ParName='C550A_008' then ParValue:=GetDBString('CWA55001016') //单位
else if ParName='C550A_009' then ParValue:=GetDBString('CWA55001017') //已审核否
else if ParName='H150_002' then ParValue:=GetDBString('CWA55001008') //员工编号
else if ParName='H150_003' then ParValue:=GetDBString('CWA55001009') //员工姓名
end;
procedure TCwa550_01Form.sbOkClick(Sender: TObject);
var
AYear:Integer;
AEmpNo:String;
begin
inherited;
//确定
if (cbYear.Text='') or (cbMonth.Text='') then Exit;
AYear:=StrToInt(cbYear.Text);
AEmpNo:=qryHrm150.FieldByName('H150_001').AsString;
if AEmpNo='' then AEmpNo:='0';
//取得期段的起始结束日期
GetPeriodDate(cbYear.Text,cbMonth.Text,AStartDate,AEndDate,APeriod);
//考勤汇总
qryCwa550A.Close;
qryCwa550A.SQL.Clear;
qryCwa550A.SQL.Add('select * from CWA550A A,CWA150 B where A.C550A_004=B.C150_001 and A.C550A_003='+AEmpNo+' and A.C550A_001='+IntToStr(AYear)+' and A.C550A_002='+IntToStr(APeriod)+' order by B.C150_002');
qryCwa550A.Open;
//考勤明细
qryCwa550B.Close;
qryCwa550B.SQL.Clear;
qryCwa550B.SQL.Add('select * from CWA550B A,CWA150 B where A.C550B_003=B.C150_001 and C550B_002='+AEmpNo+' and A.C550B_001>='+GetDateString(AStartDate)+' and A.C550B_001<='+GetDateString(AEndDate)+' order by B.C150_002,A.C550B_001');
qryCwa550B.Open;
//卡钟数据
qryCwa510.Close;
qryCwa510.SQL.Clear;
qryCwa510.SQL.Add('select * from CWA510 A, CWA130 B where A.C510_001=B.C130_001 and B.C130_002='+AEmpNo+' and A.C510_002>='+GetDateString(AStartDate)+' and A.C510_002<='+GetDateString(AEndDate)+' order by A.C510_002');
qryCwa510.Open;
end;
procedure TCwa550_01Form.cbMonthChange(Sender: TObject);
begin
inherited;
//取得期段的起始结束日期
GetPeriodDate(cbYear.Text,cbMonth.Text,AStartDate,AEndDate,APeriod);
end;
procedure TCwa550_01Form.ActFirstExecute(Sender: TObject);
begin
inherited;
//最前
if qryHrm150.IsEmpty then Exit;
qryHrm150.First;
ActFirst.Enabled:=False;
ActPrior.Enabled:=False;
ActNext.Enabled:=True;
ActLast.Enabled:=True;
end;
procedure TCwa550_01Form.ActPriorExecute(Sender: TObject);
begin
inherited;
//上移
if qryHrm150.IsEmpty then Exit;
qryHrm150.Prior;
ActNext.Enabled:=not qryHrm150.Eof;
ActLast.Enabled:=not qryHrm150.Eof;
ActFirst.Enabled:=not qryHrm150.Bof;
ActPrior.Enabled:=not qryHrm150.Bof;
end;
procedure TCwa550_01Form.ActNextExecute(Sender: TObject);
begin
inherited;
//下移
if qryHrm150.IsEmpty then Exit;
qryHrm150.Next;
ActNext.Enabled:=not qryHrm150.Eof;
ActLast.Enabled:=not qryHrm150.Eof;
ActFirst.Enabled:=not qryHrm150.Bof;
ActPrior.Enabled:=not qryHrm150.Bof;
end;
procedure TCwa550_01Form.ActLastExecute(Sender: TObject);
begin
inherited;
//最后
if qryHrm150.IsEmpty then Exit;
qryHrm150.Last;
ActNext.Enabled:=False;
ActLast.Enabled:=False;
ActFirst.Enabled:=True;
ActPrior.Enabled:=True;
end;
procedure TCwa550_01Form.ActLocateExecute(Sender: TObject);
begin
inherited;
//查找
if qryHrm150.IsEmpty then
begin
ShowMsg('UMS10000002'); //表记录为空,操作无效
Exit;
end;
LocateDialog(dsHrm150);
end;
procedure TCwa550_01Form.ActSearchExecute(Sender: TObject);
begin
inherited;
//查询
FilterDialog(dsHrm150);
end;
procedure TCwa550_01Form.ActPrintExecute(Sender: TObject);
begin
inherited;
//打印
SelectReport(qryHrm150,AProgramID,AReportName,ReportGetValue);
end;
procedure TCwa550_01Form.ActExportExecute(Sender: TObject);
begin
inherited;
//导出数据
if qryHrm150.IsEmpty then
begin
ShowMsg('UMS10000002'); //表记录为空,操作无效
Abort;
end;
SaveToExcel(dxDBGrid1);
end;
procedure TCwa550_01Form.ActCheckExecute(Sender: TObject);
begin
inherited;
//审核
if qryHrm150.IsEmpty then
begin
ShowMsg('UMS10000002'); //表记录为空,操作无效
Exit;
end;
Cwa550_04Form:=TCwa550_04Form.Create(Application);
Cwa550_04Form.ShowModal;
qryHrm150.Refresh;
qryCwa550A.Refresh;
qryCwa550B.Refresh;
end;
procedure TCwa550_01Form.ActProvExecute(Sender: TObject);
begin
inherited;
//签卡
if qryHrm150.IsEmpty then
begin
ShowMsg('UMS10000002'); //表记录为空,操作无效
Exit;
end;
Cwa550_03Form:=TCwa550_03Form.Create(Application);
Cwa550_03Form.ShowModal;
qryHrm150.Refresh;
qryCwa550A.Refresh;
qryCwa550B.Refresh;
end;
procedure TCwa550_01Form.ActCalcExecute(Sender: TObject);
begin
inherited;
//计算
Cwa550_02Form:=TCwa550_02Form.Create(Application);
Cwa550_02Form.ShowModal;
sbOk.Click;
end;
procedure TCwa550_01Form.ActExitExecute(Sender: TObject);
begin
inherited;
//退出
Close;
end;
procedure TCwa550_01Form.qryHrm150AfterScroll(DataSet: TDataSet);
begin
inherited;
sbOk.Click;
end;
procedure TCwa550_01Form.qryCwa550AC150_005GetText(Sender: TField;
var Text: String; DisplayText: Boolean);
begin
inherited;
if qryCwa550A.IsEmpty then Exit;
case Sender.AsInteger of
0:Text:=AType[0]; //分钟
1:Text:=AType[1]; //小时
2:Text:=AType[2]; //天
3:Text:=AType[3]; //次
4:Text:=AType[4]; //月
5:Text:=AType[5]; //年
end;
end;
procedure TCwa550_01Form.qryCwa550BC150_005GetText(Sender: TField;
var Text: String; DisplayText: Boolean);
begin
inherited;
if qryCwa550A.IsEmpty then Exit;
case Sender.AsInteger of
0:Text:=AType[0]; //分钟
1:Text:=AType[1]; //小时
2:Text:=AType[2]; //天
3:Text:=AType[3]; //次
4:Text:=AType[4]; //月
5:Text:=AType[5]; //年
end;
end;
initialization
RegisterClass(TCwa550_01Form);
finalization
UnRegisterClass(TCwa550_01Form);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -