📄 hrms00_01.pas.svn-base
字号:
Edit9.Color:=AEnableColor;
Edit10.Color:=AEnableColor;
Edit11.Color:=AEnableColor;
Edit12.Color:=AEnableColor;
Edit13.Color:=AEnableColor;
//进制转换
ComboBox1.Color:=AEnableColor;
ComboBox1.Enabled:=True;
end;
//事务处理数据是否必须审核('Y'必须审核,'N'=无须审核)
CheckBox1.Checked:=copy(GetSysParams('PAY0006'),1,1)='Y';
TabSheet2.Enabled:=GetSetup('PAY');
TabSheet3.Enabled:=GetSetup('CWA');
bbtnOk.Enabled:=(GetSetup('PAY')) or (GetSetup('CWA'));
end;
procedure THrmS00_01Form.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
qrySys000.Close;
end;
procedure THrmS00_01Form.bbtnOkClick(Sender: TObject);
var
S:string;
J:Integer;
St,St2,St3:String;
begin
inherited;
//确定
//每月计薪天数
if RadioGroup1.ItemIndex=0 then //按每月实际天数
SetSysParams('PAY0001','1');
if RadioGroup1.ItemIndex=1 then //按固定天数
SetSysParams('PAY0001','2'+wwDBSpinEdit1.Text); //天数
//工资核算方法:
{ if RadioGroup2.ItemIndex=0 then //按实际出勤天数计算实发工资
SetSysParams('PAY0002','1');
if RadioGroup2.ItemIndex=1 then //按缺勤天数扣减计算实发工资
SetSysParams('PAY0002','2'); }
//工资尾数舍入
if RadioGroup3.ItemIndex=0 then //每个工资项目舍入
SetSysParams('PAY0003','1');
if RadioGroup3.ItemIndex=1 then //仅实发工资舍入
SetSysParams('PAY0003','2');
if RadioGroup3.ItemIndex=2 then //不舍入
SetSysParams('PAY0003','3');
//尾数舍入方法
if RadioGroup4.ItemIndex=0 then //四舍五入
SetSysParams('PAY0004','1');
if RadioGroup4.ItemIndex=1 then //自定公式
SetSysParams('PAY0004','2');
//全勤奖
if RadioGroup5.ItemIndex=0 then //新进员工按比例发放全勤奖
SetSysParams('PAY0005','1');
if RadioGroup5.ItemIndex=1 then //新进员工不发放全勤奖
SetSysParams('PAY0005','2');
if RadioGroup5.ItemIndex=2 then //新进员工全额发放全勤奖
SetSysParams('PAY0005','3');
//个人所得税免税额
SetSysParams('PAY0007',Edit1.Text); //金额
//新进员工
{ if RadioGroup7.ItemIndex=0 then //新进员工当月工资发放
SetSysParams('HRM0001','1');
if RadioGroup7.ItemIndex=1 then //新进员工当月工资不发放,下月才发放
SetSysParams('HRM0001','2'); }
SetSysParams('CWA0001', Edit3.Text); //刷卡允许误差时间
SetSysParams('CWA0002', Edit4.Text); //迟到(早退)多少分钟以内算旷工半天(超过算旷工一天)
SetSysParams('CWA0003', Edit5.Text); //允许提前时间(分钟)
SetSysParams('CWA0004', Edit6.Text); //允许推后时间(分钟)
SetSysParams('CWA0005', Edit7.Text); //全勤奖金金额
SetSysParams('CWA0006', Edit8.Text); //每日开工时间(小时)
//考勤数据来源('1'=手工输入,'2'=刷卡钟)
if RadioButton1.Checked then
begin
SetSysParams('CWA0007','1');
end;
if RadioButton2.Checked then
begin
if Edit2.Text='' then Exit;
St3:=''; J:=0; St2:=Trim(Copy(MaskEdit1.Text,1,1));
if (St2='') or (St2='0') then
begin
ShowMsg('UMS10000045'); //读取格式输入错误
MaskEdit1.SetFocus;
Exit;
end else
begin
J:=J+StrToInt(St2);
St:=St+St2+'.';St3:=St3+St2;
St2:=Trim(Copy(MaskEdit1.Text,3,1));
if (St2<>'') and (St2<>'0') then
begin
J:=J+StrToInt(St2);
St:=St+St2+'.'; St3:=St3+St2;
St2:=Trim(Copy(MaskEdit1.Text,5,1));
if (St2<>'') and (St2<>'0') then
begin
J:=J+StrToInt(St2);
St:=St+St2+'.'; St3:=St3+St2;
St2:=Trim(Copy(MaskEdit1.Text,7,1));
if (St2<>'') and (St2<>'0') then
begin
J:=J+StrToInt(St2);
St:=St+St2+'.'; St3:=St3+St2;
St2:=Trim(Copy(MaskEdit1.Text,9,1));
if (St2<>'') and (St2<>'0') then
begin
J:=J+StrToInt(St2);
St:=St+St2; St3:=St3+St2;
end else
St:=St+'0';
end else
St:=St+'0.0';
end else
St:=St+'0.0.0';
end else
St:=St+'0.0.0.0';
end;
MaskEdit1.Text:=St;
if J<>StrToInt(Edit2.Text) then
begin
ShowMsg('UMS10000046'); //[读取格式]中长度不等于[读取长度]
MaskEdit1.SetFocus;
Exit;
end;
if Edit9.Text='' then
begin
ShowMsg('UMS10000047'); //请指定卡号段位置
Edit9.SetFocus;
Exit;
end;
if Edit10.Text='' then
begin
ShowMsg('UMS10000048'); //请指定日期段位置
Edit10.SetFocus;
Exit;
end;
if Edit11.Text='' then
begin
ShowMsg('UMS10000049'); //请指定小时段位置
Edit11.SetFocus;
Exit;
end;
if Edit12.Text='' then
begin
ShowMsg('UMS10000050'); //请指定分钟段位置
Edit12.SetFocus;
Exit;
end;
S:='2'+Edit2.Text+MaskEdit1.Text+Edit9.Text+Edit10.Text+Edit11.Text+Edit12.Text+Edit13.Text+IntToStr(ComboBox1.ItemIndex);
SetSysParams('CWA0007',S);
end;
//事务处理数据是否必须审核('Y'必须审核,'N'=无须审核)
if CheckBox1.Checked then SetSysParams('PAY0006','Y') else SetSysParams('PAY0006','N');
//考勤数据来源('2'=刷卡钟)
if copy(GetSysParams('CWA0007'),1,1)='2' then
begin
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('update SYS500D set S500D_006='+GetBoolean(True)+' where S500D_001 in (''CWA510'',''CWA130'')');
SYSDM.qryQuery.ExecSQL;
//将系统缺省的考勤项目设置成"按公式计算"
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('update CWA150 set C150_004=1 where C150_001 in (1,2,3)');
SYSDM.qryQuery.ExecSQL;
end else
begin
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('update SYS500D set S500D_006='+GetBoolean(False)+' where S500D_001 in (''CWA510'',''CWA130'')');
SYSDM.qryQuery.ExecSQL;
//将系统缺省的考勤项目设置成"按考勤事务处理"
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('update CWA150 set C150_004=0 where C150_001 in (1,2,3)');
SYSDM.qryQuery.ExecSQL;
end;
ShowMsg('UMS10000051'); //系统参数设置成功
Close;
end;
procedure THrmS00_01Form.bbtnExitClick(Sender: TObject);
begin
inherited;
//退出
Close;
end;
procedure THrmS00_01Form.RadioGroup1Click(Sender: TObject);
begin
inherited;
wwDBSpinEdit1.Enabled:=RadioGroup1.ItemIndex=1;
if RadioGroup1.ItemIndex=1 then
wwDBSpinEdit1.Color:=AEnableColor
else
wwDBSpinEdit1.Color:=ADisableColor;
end;
procedure THrmS00_01Form.RadioButton1Click(Sender: TObject);
begin
inherited;
//手工输入(考勤数据)
Edit2.Enabled:=False;
MaskEdit1.Enabled:=False;
Edit9.Enabled:=False;
Edit10.Enabled:=False;
Edit11.Enabled:=False;
Edit12.Enabled:=False;
Edit13.Enabled:=False;
ComboBox1.Enabled:=False;
Edit2.Color:=ADisableColor;
MaskEdit1.Color:=ADisableColor;
Edit9.Color:=ADisableColor;
Edit10.Color:=ADisableColor;
Edit11.Color:=ADisableColor;
Edit12.Color:=ADisableColor;
Edit13.Color:=ADisableColor;
ComboBox1.Color:=ADisableColor;
end;
procedure THrmS00_01Form.RadioButton2Click(Sender: TObject);
begin
inherited;
//刷卡钟(考勤数据)
Edit2.Enabled:=True;
MaskEdit1.Enabled:=True;
Edit9.Enabled:=True;
Edit10.Enabled:=True;
Edit11.Enabled:=True;
Edit12.Enabled:=True;
Edit13.Enabled:=True;
ComboBox1.Enabled:=True;
Edit2.Color:=AEnableColor;
MaskEdit1.Color:=AEnableColor;
Edit9.Color:=AEnableColor;
Edit10.Color:=AEnableColor;
Edit11.Color:=AEnableColor;
Edit12.Color:=AEnableColor;
Edit13.Color:=AEnableColor;
ComboBox1.Color:=AEnableColor;
end;
procedure THrmS00_01Form.BitBtn1Click(Sender: TObject);
begin
inherited;
//自定义
ShowMsg('UMS10000052'); //此模块正在开发当中...
end;
procedure THrmS00_01Form.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
inherited;
ValidInteger(Sender,Key);
end;
procedure THrmS00_01Form.Edit1Exit(Sender: TObject);
begin
inherited;
if trim(Edit1.Text)='' then Edit1.Text:='0';
end;
initialization
RegisterClass(THrmS00_01Form);
finalization
UnRegisterClass(THrmS00_01Form);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -