📄 formpersonal1.pas
字号:
procedure Tformpersonal.SpeedButton3Click(Sender: TObject);
begin
if not assigned(formcomrecorder) then
formcomrecorder:=tformcomrecorder.create(application);
formcomrecorder.show;
end;
procedure Tformpersonal.showdbgrid(number:integer);
begin
panel2.Visible:=true;
with adoquery1 do
begin
adoquery1.Close;
SQL.clear;
copynumber:=number;
case number of
1:begin
panel2.Top:=32;
panel2.left:=64;
SQL.Add('select * from pub05010'); //部门
Open;
fields[0].Displaylabel :='部门代码';
fields[1].Displaylabel :='部门名称';
end;
2:begin
panel2.Top:=64;
panel2.left:=64;
sql.Add('select * from per01010'); //职称
open;
Fields[0].DisplayLabel :='职称代码';
Fields[1].DisplayLabel :='职称名称';
end;
3:begin
panel2.top:=96;
panel2.left:=64;
sql.add('select * from per11010');
open;
Fields[0].DisplayLabel :='职等职级编码';
Fields[1].DisplayLabel :='底薪(最多)';
Fields[2].DisplayLabel :='底薪(最少)';
Fields[3].DisplayLabel :='职务津贴(最多)';
Fields[4].DisplayLabel :='职务津贴(最少)';
Fields[5].DisplayLabel :='技术津贴(最多)';
Fields[6].DisplayLabel :='技术津贴(最少)';
end;
4:begin
panel2.Top:=128;
panel2.left:=64;
sql.Add('select * from per03010'); //籍贯
open;
Fields[0].DisplayLabel :='籍贯代码';
Fields[1].DisplayLabel :='籍贯名称';
end;
5:begin
panel2.Top:=160;
panel2.left:=64;
sql.Add('select * from per08010'); //民族
open;
Fields[0].DisplayLabel :='民族代码';
Fields[1].DisplayLabel :='民族名称';
end;
6:begin
panel2.Top:=160;
panel2.left:=320;
sql.Add('select * from per04010'); //学历
open;
Fields[0].DisplayLabel :='学历代码';
Fields[1].DisplayLabel :='学历名称';
end;
7:begin
panel2.Top:=192;
panel2.left:=320;
sql.Add('select * from per05010'); //科系
open;
Fields[0].DisplayLabel :='科系代码';
Fields[1].DisplayLabel :='科系名称';
end;
8:begin
panel2.Top:=320;
panel2.left:=450;
sql.Add('select distinct scheno,schename from atd01010'); //班别代码
open;
fields[0].Displaylabel :='班别代码';
fields[1].Displaylabel :='班别名称';
end;
9:begin
panel2.Top:=248;
panel2.left:=320;
sql.Add('select * from per07010'); //证件类别代码
open;
Fields[0].DisplayLabel :='证件代码';
Fields[1].DisplayLabel :='证件名称';
end;
10:begin
panel2.Top:=104;
panel2.left:=320;
sql.Add('select * from per09010'); //外语类别代码
open;
Fields[0].DisplayLabel :='外语代码';
Fields[1].DisplayLabel :='外语名称';
end;
11:begin
panel2.top:=320;
panel2.left:=580;
sql.add('select * from pub06010 order by comcode,deptcode'); //行事历代码
open;
fields[0].DisplayLabel :='行事历代码';
fields[1].displaylabel:='行事历名称';
fields[2].DisplayLabel :='部门代码';
fields[3].DisplayLabel :='日期';
fields[4].DisplayLabel :='星期';
fields[5].DisplayLabel :='备注';
fields[6].displaylabel:='建档日期';
fields[7].DisplayLabel :='建档人';
end;
12:begin
panel2.top:=320;
panel2.left:=660;
sql.add('select * from atd03010 order by ruleno');//按轮班规则
open;
fields[0].DisplayLabel:='轮班规则代号';
fields[1].DisplayLabel:='按日/月轮?';
fields[2].DisplayLabel:='轮班周期';
fields[3].DisplayLabel:='几种班次轮';
fields[4].DisplayLabel:='班次一';
fields[5].DisplayLabel:='班次二';
fields[6].DisplayLabel:='班次三';
fields[7].DisplayLabel:='班次四';
fields[8].DisplayLabel:='班次五';
fields[9].DisplayLabel:='班次六';
fields[10].DisplayLabel:='班次七';
fields[11].DisplayLabel:='班次八';
fields[12].DisplayLabel:='';
fields[13].DisplayLabel:='';
fields[14].DisplayLabel:='';
fields[15].DisplayLabel:='';
fields[16].DisplayLabel:='';
fields[17].DisplayLabel:='';
fields[18].DisplayLabel:='';
fields[19].DisplayLabel:='';
fields[20].DisplayLabel:='';
fields[21].DisplayLabel:='上次轮到班次';
fields[22].DisplayLabel:='上次轮到日期';
end;
end;
end;
if copynumber=11 then
dbgrid1.readonly:=true
else
dbgrid1.readonly:=false;
end;
procedure Tformpersonal.DBGrid1CellClick(Column: TColumn);
begin
with adoquery1 do
begin
datamod.adopersonal.edit;
case copynumber of
1:begin
datamod.ADOpersonal.fieldbyname('deptno').asstring:=Fields[0].AsString;
wwDBLookupCombo1.OnExit(wwDBLookupCombo1);
end;
2:datamod.ADOpersonal.fieldbyname('prof').asstring:=fields[1].asstring;
3:datamod.ADOpersonal.fieldbyname('gradename').asstring:=fields[0].asstring;
4:datamod.ADOpersonal.fieldbyname('provname').asstring:=fields[1].asstring;
5:datamod.ADOpersonal.fieldbyname('people').asstring:=fields[1].asstring;
6:datamod.ADOpersonal.fieldbyname('degreename').asstring:=fields[1].asstring;
7:datamod.ADOpersonal.fieldbyname('coursename').asstring:=fields[1].asstring;
8:datamod.ADOpersonal.fieldbyname('scheno').asstring:=fields[0].asstring;
9:datamod.ADOpersonal.fieldbyname('visa').asstring:=fields[1].asstring;
10:datamod.ADOpersonal.fieldbyname('foreignlan').asstring:=fields[1].asstring;
11:datamod.ADOpersonal.fieldbyname('dothing').asstring:=fields[0].asstring;
end;
end;
speedbutton4.click;
end;
procedure Tformpersonal.SpeedButton4Click(Sender: TObject);
begin
adoquery1.close;
panel2.Visible :=false;
copynumber:=0;
end;
procedure Tformpersonal.DBComboBox5DblClick(Sender: TObject);
begin
showdbgrid(5);
end;
procedure Tformpersonal.DBComboBox6DblClick(Sender: TObject);
begin
showdbgrid(6);
end;
procedure Tformpersonal.DBComboBox7DblClick(Sender: TObject);
begin
showdbgrid(7);
end;
procedure Tformpersonal.DBComboBox9DblClick(Sender: TObject);
begin
showdbgrid(9);
end;
procedure Tformpersonal.DBComboBox10DblClick(Sender: TObject);
begin
showdbgrid(10);
end;
procedure Tformpersonal.SpeedButton5Click(Sender: TObject);
begin
formotmoney:=TFormotmoney.create(application);
formotmoney.showmodal;
formotmoney.free;
end;
procedure Tformpersonal.FormActivate(Sender: TObject);
begin
if datamod.adopersonal.fieldbyname('birthday').Asstring<>'' then //新增时不进行算年龄
edit1.text:=datamod.adopersonal.fieldbyname('age').asstring;
datetimepicker2.date:=date;
datamod.qryexchange.Open;
if not datamod.qryexchange.eof then
panel4.Visible :=true
else
datamod.qryexchange.close;
if panel4.Visible then
begin
button2.Visible :=false;
button2.Enabled :=false;
end;
if datamod.adopersonal.FieldByName('marry').asboolean then
radiobutton1.checked:=true
else radiobutton2.checked:=true;
if datamod.adopersonal.fieldbyname('dayormon').asboolean then
radiobutton3.checked:=true
else radiobutton4.checked:=true;
end;
procedure Tformpersonal.CheckBox1Click(Sender: TObject);
var
name:string;
i:integer;
have:real;
give:real; //应得总额,应扣总额
db:Tdbedit;
begin
have:=0;
give:=0;
name:=(Sender as TCheckbox).name;
if (sender as tcheckbox).checked then
begin
che[strtoint(copy(name,9,length(Name)-8))]:=1;
end else
begin
che[strtoint(copy(name,9,length(name)-8))]:=0;
end;
for i:=1 to 8 do
begin
if che[i]=1 then
begin
db:=Tdbedit(findcomponent('dbedit'+inttostr(35+i)));
with db do
begin
if (length(trim(db.text))>0) and (not varisnull(db.text)) then
have:=have+strtoint(db.text);
end;
end;
end;
for i:=10 to 14 do
begin
if che[i]=1 then
begin
db:=Tdbedit(findcomponent('dbedit'+inttostr(36+i)));
with db do
begin
if (length(trim(db.text))>0) and (not varisnull(db.text)) then
give:=give+strtoint(db.text);
end;
end;
end;
for i:=15 to 18 do
begin
if che[i]=1 then
begin
db:=Tdbedit(findcomponent('dbedit'+inttostr(40+i)));
with db do
begin
if (length(trim(db.text))>0) and (not varisnull(db.text))then
give:=give+strtoint(db.text);
end;
end;
end;
end;
procedure Tformpersonal.CheckBox10Click(Sender: TObject);
var
name:string;
i:integer;
have:real;
give:real; //应得总额,应扣总额
db:Tdbedit;
begin
have:=0;
give:=0;
db:=TDBEdit.create(self);
name:=(Sender as TCheckbox).name;
if (sender as tcheckbox).checked then
che[strtoint(copy(name,9,length(Name)-8))]:=1
else che[strtoint(copy(name,9,length(name)-8))]:=0;
for i:=1 to 8 do
begin
if che[i]=1 then
db:=Tdbedit(findcomponent('dbedit'+inttostr(35+i)));
with db do
begin
if length(trim(db.text))>0 then
have:=have+strtoint(db.text);
end;
end;
for i:=10 to 14 do
begin
if che[i]=1 then
db:=Tdbedit(findcomponent('dbedit'+inttostr(36+i)));
with db do
begin
if length(trim(db.text))>0 then
give:=give+strtoint(db.text);
end;
end;
for i:=15 to 18 do
begin
if che[i]=1 then
db:=Tdbedit(findcomponent('dbedit'+inttostr(40+i)));
with db do
begin
if length(trim(db.text))>0 then
give:=give+strtoint(db.text);
end;
end;
end;
procedure Tformpersonal.SpeedButton6Click(Sender: TObject);
begin
panel4.Visible :=false;
button2.Enabled :=true;
end;
procedure Tformpersonal.Panel4DragDrop(Sender, Source: TObject; X,
Y: Integer);
begin
panel4.Top :=x;
panel4.Left :=y;
end;
procedure Tformpersonal.TabSheet1DragOver(Sender, Source: TObject; X,
Y: Integer; State: TDragState; var Accept: Boolean);
begin
accept:=true;
panel4.Top :=y;
panel4.Left :=x;
end;
procedure Tformpersonal.Button2Click(Sender: TObject);
begin
panel4.Visible :=true;
button2.Enabled :=false;
end;
procedure Tformpersonal.Button1Click(Sender: TObject);
begin
with datamod.adopersonal do
begin
append;
fieldbyname('name').asstring:=datamod.qryexchange.fieldbyname('name').asstring;
fieldbyname('deptno').asstring:=datamod.qryexchange.fieldbyname('dno').asstring;
fieldbyname('dept').asstring:=datamod.qryexchange.fieldbyname('reqdept').asstring;
fieldbyname('prof').asstring:=datamod.qryexchange.fieldbyname('factprof').asstring;
fieldbyname('blood').asstring:=datamod.qryexchange.fieldbyname('blood').asstring;
fieldbyname('birthday').asstring:=datamod.qryexchange.fieldbyname('birthday').asstring;
if datamod.qryexchange.fieldbyname('marry').asstring='已婚' then
fieldbyname('marry').asboolean:=true
else if datamod.qryexchange.fieldbyname('marry').asstring='未婚' then
fieldbyname('marry').asboolean:=false;
fieldbyname('peopleid').asstring:=datamod.qryexchange.fieldbyname('peopleid').asstring;
fieldbyname('provname').asstring:=datamod.qryexchange.fieldbyname('province').asstring;
fieldbyname('homeadd').asstring:=datamod.qryexchange.fieldbyname('address').asstring;
fieldbyname('introduce1').asstring:=datamod.qryexchange.fieldbyname('introduce').asstring;
fieldbyname('degreename').asstring:=datamod.qryexchange.fieldbyname('degree').asstring;
fieldbyname('coursename').asstring:=datamod.qryexchange.fieldbyname('special').asstring;
fieldbyname('experince').asstring:=datamod.qryexchange.fieldbyname('expe').asstring;
fieldbyname('operator').asstring:=pubworkname;
fieldbyname('cdate').asstring:=datetostr(date);
datamod.ADOQuery1.SQL.Clear;
datamod.ADOQuery1.SQL.Add ('update emp07010 set state2=1 where faceno='''+datamod.qryexchange.fieldbyname('faceno').asstring+'''');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -