📄 stoppay.pas
字号:
if i<fcount then sortexp:=sortexp+',';
end;
end;
if sortexp<>'' then datamod.ADOstoppay.Sort :=sortexp;
end;
procedure Tformstoppay.N3Click(Sender: TObject);
var i:1..5;
begin
for i:=1 to fcount do
dbgrid1.Columns[findex[i]].Color :=clwindow;
fcount:=0;
end;
procedure Tformstoppay.FormKeyPress(Sender: TObject; var Key: Char);
begin
if activecontrol=dbgrid1 then
exit;
if key=#13 then
begin
key:=#0;
if activecontrol=dbedit12 then
begin
if datamod.adostoppay.state=dsinsert then
begin
datamod.adostoppay.Post;
datamod.adostoppay.append;
end;
dbedit1.setfocus;
end
else
selectnext(activecontrol,true,true);
end;
end;
procedure Tformstoppay.FormCreate(Sender: TObject);
begin
datetimepicker1.date:=date;
datetimepicker2.date:=date;
datetimepicker3.date:=date;
datetimepicker4.date:=date;
datetimepicker5.date:=date;
datetimepicker6.date:=date;
datetimepicker7.date:=date;
datetimepicker8.date:=date;
datetimepicker9.date:=date;
adonowstoppay.open;
pagecontrol1.activepageindex:=0;
pagecontrol1.onchange(pagecontrol1);
with Datamod.adoquery2 do
begin
close;
sql.clear;
sql.add('select leavereason from per13010 where lkind=1');
open;
first;
while not eof do
begin
dbcombobox1.items.add(fieldbyname('leavereason').asstring);
next;
end;
close;
end;
end;
//输入姓名,带出员工的所有信息
procedure Tformstoppay.DBEdit4Change(Sender: TObject);
begin
{ if (datamod.adostoppay.state=dsinsert) and (dbedit4.text<>'') then
with datamod.adoquery2 do
begin
close;
sql.clear;
sql.add('select workno,cardno,name,deptno,prof from per24010 where name like '''+dbedit4.text+'''+''%'' ');
open;
first;
if not eof then
begin
datamod.adostoppayworkno.AsString :=fieldbyname('workno').asstring;
datamod.adostoppaycardno.AsString :=fields[1].asstring;
datamod.adostoppaydeptno.asstring:=fieldbyname('deptno').asstring;
datamod.adostoppayprof.asstring:=fieldbyname('prof').asstring;
end;
close;
end; }
end;
procedure Tformstoppay.DBEdit2Change(Sender: TObject);
begin
if (datamod.adostoppay.state=dsinsert) and (dbedit2.text='') then
begin
datamod.adostoppayworkno.AsString :='';
datamod.adostoppaycardno.AsString :='';
datamod.adostoppayname.AsString :='';
datamod.adostoppaydeptno.asstring:='';
datamod.adostoppayprof.asstring:='';
end;
end;
procedure Tformstoppay.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
dbgrid_keypress(sender,key);
end;
procedure Tformstoppay.DateTimePicker1CloseUp(Sender: TObject);
var dtpname:string;
dtp:Tdatetimepicker;
begin
dtpname:=(sender as Tdatetimepicker).name;
dtp:=Tdatetimepicker(findcomponent('datetimepicker'+copy(dtpname,15,1)));
with dtp do
begin
case strtoint(copy(dtpname,15,1)) of
1:begin
datamod.adostoppay.fieldbyname('sdate').asstring :=datetostr(dtp.date);
dbedit8.setfocus;
end;
2:begin
datamod.adostoppay.fieldbyname('edate').asstring :=datetostr(dtp.date);
dbcombobox1.setfocus;
end;
5:begin
datamod.adostoppay.fieldbyname('checkdate').asstring :=datetostr(dtp.date);
dbedit12.setfocus;
end;
end;
end;
end;
procedure Tformstoppay.PageControl1Change(Sender: TObject);
begin
(sender as Tpagecontrol).activepage.highlighted:=true;
case pagecontrol1.ActivePageIndex of
0:begin
dbnavigator1.DataSource :=datamod.DSstoppay;
tbnsort.enabled:=true;
end;
1:begin
dbnavigator1.DataSource :=datasource1; //现在处于停薪留职人员状态的
tbnsort.enabled:=false;
end;
2:begin
dbnavigator1.DataSource :=datasource2; //已恢复的员工
tbnsort.enabled:=false;
end;
end;
end;
procedure Tformstoppay.DBNavigator1BeforeAction(Sender: TObject;
Button: TNavigateBtn);
begin
case pagecontrol1.ActivePageIndex of
0:dbnavigator1.datasource:=datamod.DSstoppay;
1:dbnavigator1.datasource:=datasource1;
2:dbnavigator1.datasource:=datasource2;
end;
if (button=nbinsert) or (button=nbinsert) then
dbedit1.setfocus;
end;
procedure Tformstoppay.PageControl1Changing(Sender: TObject;
var AllowChange: Boolean);
begin
(Sender as TPageControl).ActivePage.highlighted:=false;
end;
procedure Tformstoppay.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_f1 then
begin
Application.helpfile :=extractfilepath(application.exename)+'help\pasahelp.hlp';
application.helpjump('shm_contents0015');
end;
end;
procedure Tformstoppay.tbnprintClick(Sender: TObject);
begin
if not assigned(reportofstoppay) then
reportofstoppay:=Treportofstoppay.create(self);
reportofstoppay.show;
end;
procedure Tformstoppay.DBGrid3TitleClick(Column: TColumn);
begin
if f='DESC' then
f:='ASC'
else
f:='DESC';
ADOstoppayed.Sort :=column.FieldName+' '+f;
end;
procedure Tformstoppay.DBGrid2TitleClick(Column: TColumn);
begin
if f='DESC' then
f:='ASC'
else
f:='DESC';
ADOnowstoppay.Sort :=column.FieldName+' '+f;
end;
procedure Tformstoppay.Edit1Exit(Sender: TObject);
begin
datamod.Adostoppay.close;
if trim(edit1.text)<>'' then
datamod.Adostoppay.commandtext:='select * from per28010 where state=0 and (workno='''+edit1.text+''' or cardno='''+edit1.text+''' or name='''+edit1.text+''') ';
datamod.Adostoppay.open;
end;
procedure Tformstoppay.Edit2Exit(Sender: TObject);
begin
ADOnowstoppay.close;
if trim(edit2.text)<>'' then
ADOnowstoppay.commandtext:='select * from per28010 where state=1 and (workno='''+edit2.text+''' or cardno='''+edit2.text+''' or name='''+edit2.text+''') ';
ADOnowstoppay.open;
end;
procedure Tformstoppay.Edit3Exit(Sender: TObject);
begin
ADOstoppayed.close;
if trim(edit3.text)<>'' then
ADOstoppayed.commandtext:='select * from per28010 where state=2 and (workno='''+edit3.text+''' or cardno='''+edit3.text+''' or name='''+edit3.text+''') ';
ADOstoppayed.open;
end;
procedure Tformstoppay.MaskEdit2Exit(Sender: TObject);
var fmat1:string;
begin
if fmat='/' then
fmat1:=' / / ';
if fmat='-' then
fmat1:=' - - ';
if maskedit2.text<>fmat1 then
if (not isdate(maskedit1.Text)) or (not isdate(maskedit2.text)) then
begin
Application.MessageBox('对不起,您输入的不是有效日期','Warning',mb_ok+mb_iconwarning);
maskedit1.SetFocus;
end
else begin
datamod.Adostoppay.close;
datamod.Adostoppay.commandtext:='select * from per28010 where state=0 and ((sdate<='''+maskedit2.text+''' and sdate>='''+maskedit1.text+''') or (edate<='''+maskedit2.text+''' and edate>='''+maskedit1.text+''')) ';
datamod.Adostoppay.open;
end;
end;
procedure Tformstoppay.MaskEdit4Exit(Sender: TObject);
var fmat1:string;
begin
if fmat='/' then
fmat1:=' / / ';
if fmat='-' then
fmat1:=' - - ';
if maskedit4.text<>fmat1 then
if (not isdate(maskedit3.Text)) or (not isdate(maskedit4.text)) then
begin
Application.MessageBox('对不起,您输入的不是有效日期','Warning',mb_ok+mb_iconwarning);
maskedit3.SetFocus;
end
else begin
ADOnowstoppay.close;
ADOnowstoppay.commandtext:='select * from per28010 where state=1 and ((sdate<='''+maskedit4.text+''' and sdate>='''+maskedit3.text+''') or (edate<='''+maskedit4.text+''' and edate>='''+maskedit3.text+''')) ';
ADOnowstoppay.open;
end;
end;
procedure Tformstoppay.MaskEdit6Exit(Sender: TObject);
var fmat1:string;
begin
if fmat='/' then
fmat1:=' / / ';
if fmat='-' then
fmat1:=' - - ';
if maskedit6.text<>fmat1 then
if (not isdate(maskedit5.Text)) or (not isdate(maskedit6.text)) then
begin
Application.MessageBox('对不起,您输入的不是有效日期','Warning',mb_ok+mb_iconwarning);
maskedit5.SetFocus;
end
else begin
ADOstoppayed.close;
ADOstoppayed.commandtext:='select * from per28010 where state=2 and ((sdate<='''+maskedit6.text+''' and sdate>='''+maskedit5.text+''') or (edate<='''+maskedit6.text+''' and edate>='''+maskedit5.text+''')) ';
ADOstoppayed.open;
end;
end;
procedure Tformstoppay.ToolButton1Click(Sender: TObject);
begin
case pagecontrol1.activepageindex of
0:begin
datamod.adostoppay.Close;
datamod.adostoppay.CommandText:='select * from per28010 where state=0';
datamod.adostoppay.open;
end;
1:begin
adonowstoppay.close;
adonowstoppay.CommandText:='select * from per28010 where state=1';
adonowstoppay.open;
end;
2:begin
adostoppayed.close;
adostoppayed.commandtext:='select * from per28010 where state=2';
adostoppayed.open;
end;
end;
end;
procedure Tformstoppay.DateTimePicker4CloseUp(Sender: TObject);
begin
maskedit1.text:=datetostr(datetimepicker4.date);
end;
procedure Tformstoppay.DateTimePicker3CloseUp(Sender: TObject);
begin
maskedit2.text:=datetostr(datetimepicker3.date);
end;
procedure Tformstoppay.DateTimePicker6CloseUp(Sender: TObject);
begin
maskedit3.text:=datetostr(datetimepicker6.date);
end;
procedure Tformstoppay.DateTimePicker7CloseUp(Sender: TObject);
begin
maskedit4.text:=datetostr(datetimepicker7.date);
end;
procedure Tformstoppay.DateTimePicker8CloseUp(Sender: TObject);
begin
maskedit5.text:=datetostr(datetimepicker8.date);
end;
procedure Tformstoppay.DateTimePicker9CloseUp(Sender: TObject);
begin
maskedit6.text:=datetostr(datetimepicker9.date);
end;
procedure Tformstoppay.DBGrid2KeyPress(Sender: TObject; var Key: Char);
begin
dbgrid_keypress(sender,key);
end;
procedure Tformstoppay.DBGrid2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=VK_F1 then
begin
Application.HelpFile :=Extractfilepath(application.ExeName)+ 'help\pasahelp.hlp';
application.HelpJump('SHM_CONTENTS0052');
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -