📄 hm_pinf.pas
字号:
Label48.Font.Style:=[];
end;
//------------------第五种奖惩记录导引,显示奖惩记录TabSheet4,等待输入查询信息-----
procedure Thm_pinfForm.Label49Click(Sender: TObject);
begin
if Label21.Enabled <> false then
begin
DBGrid1.Enabled:=false;
PageControl1.ActivePage:=TabSheet4;
ADOQuery2.Close;
ADOQuery4.Close;
SpeedButton1.Visible :=true;
Label21.Enabled:=false;
Label46.Enabled:=false;
Label47.Enabled:=false;
Label48.Enabled:=false;
Label50.Enabled:=false;
Image4.Top:=Label49.Top-4;
Image4.Visible:=true;
end
end;
//--------------鼠标进入改变字体格式------------------
procedure Thm_pinfForm.Label49MouseEnter(Sender: TObject);
begin
Label49.Font.Style:=[fsItalic, fsUnderline];
end;
//--------------鼠标离开恢复字体格式-------------------
procedure Thm_pinfForm.Label49MouseLeave(Sender: TObject);
begin
Label49.Font.Style:=[];
end;
//------------------第六种培训经历导引,显示培训经历TabSheet5,等待输入查询信息-----
procedure Thm_pinfForm.Label50Click(Sender: TObject);
begin
if Label21.Enabled <> false then
begin
DBGrid1.Enabled:=false;
PageControl1.ActivePage:=TabSheet5;
ADOQuery2.Close;
ADOQuery4.Close;
SpeedButton1.Visible :=true;
Label21.Enabled:=false;
Label46.Enabled:=false;
Label47.Enabled:=false;
Label48.Enabled:=false;
Label49.Enabled:=false;
Image4.Top:=Label50.Top-4;
Image4.Visible:=true;
end
end;
//--------------鼠标进入改变字体格式------------------
procedure Thm_pinfForm.Label50MouseEnter(Sender: TObject);
begin
Label50.Font.Style:=[fsItalic, fsUnderline];
end;
//--------------鼠标离开恢复字体格式-------------------
procedure Thm_pinfForm.Label50MouseLeave(Sender: TObject);
begin
Label50.Font.Style:=[];
end;
//--------------点击查询结果表,显示基本信息TabSheet1
procedure Thm_pinfForm.DBGrid1CellClick(Column: TColumn);
begin
if not (PageControl1.ActivePage = TabSheet1) then
begin
PageControl1.ActivePage:=TabSheet1;
end
else
begin
TabSheet1Show(nil);
end;
end;
//-------------基本信息TabSheet1显示时触发的操作,根据查询结果表显示相应的员工信息
procedure Thm_pinfForm.TabSheet1Show(Sender: TObject);
begin
ShowData;
{var
i: integer;
FileName: string;
begin
ADOQuery1.close;
ADOQuery1.Open;
//提取部门信息
if not ADOQuery1.Eof then
begin
hm_pdep.Clear;
for i :=0 to ADOQuery1.RecordCount - 1 do
begin
hm_pdep.AddItem(ADOQuery1.FieldByName('名称').AsString, nil);
ADOQuery1.next;
end;
end;
ADOQuery3.close;
if (DBGrid1.Enabled =true) and (trim(DBGrid1.Fields[0].AsString)<>'') then
begin
//提取信息
ADOQuery3.SQL.Clear;
ADOQuery3.SQL.Text := 'select * from 基本信息 where 编号=' + DBGrid1.Fields[0].AsString;
ADOQuery3.Open;
//显示照片
FileName := ExtractFilePath(Application.ExeName) + 'images\' + trim(ADOQuery3.FieldByName('照片').AsString);
if FileExists(FileName) then
imgi.Picture.LoadFromFile(FileName)
else
begin
FileName := ExtractFilePath(Application.ExeName) + 'images\1.bmp';
if FileExists(FileName) then
imgi.Picture.LoadFromFile(FileName);
end;
end;}
end;
//-------------工作经历TabSheet2显示时触发的操作,根据查询结果表显示相应的员工信息
procedure Thm_pinfForm.TabSheet2Show(Sender: TObject);
begin
ADOQuery4.close;
if (DBGrid1.Enabled =true) and (trim(DBGrid1.Fields[0].AsString)<>'') then
begin
ADOQuery4.SQL.Clear;
ADOQuery4.SQL.Text := 'select * from 工作经历 where 员工编号=' + DBGrid1.Fields[0].AsString;
ADOQuery4.Open;
//清除原有信息
//edit1.Clear;
//edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
end;
end;
//-------------工作经历TabSheet2上表格点击,下方显示详细信息
procedure Thm_pinfForm.dbgrid2CellClick(Column: TColumn);
begin
if ADOQuery4.RecordCount = 0 then exit;
//Edit1.Text := DBGrid2.Fields[0].AsString ;
//Edit2.Text := DBGrid2.Fields[1].AsString ;
DateTimePicker1.DateTime := DBGrid2.Fields[0].AsDateTime;
DateTimePicker2.DateTime := DBGrid2.Fields[1].AsDateTime;
Edit3.Text := DBGrid2.Fields[2].AsString ;
Edit4.Text := DBGrid2.Fields[3].AsString ;
Edit5.Text := DBGrid2.Fields[4].AsString ;
end;
//-------------社会关系TabSheet3显示时触发的操作,根据查询结果表显示相应的员工信息
procedure Thm_pinfForm.TabSheet3Show(Sender: TObject);
begin
ADOQuery4.close;
if (DBGrid1.Enabled =true) and (trim(DBGrid1.Fields[0].AsString)<>'') then
begin
ADOQuery4.SQL.Clear;
ADOQuery4.SQL.Text := 'select * from 社会关系 where 员工编号=' + DBGrid1.Fields[0].AsString;
ADOQuery4.Open;
//清除原有信息
edit6.Clear;edit7.Clear;edit8.Clear;edit9.Clear;memo1.Clear;
end;
end;
//-------------社会关系TabSheet3上表格点击,下方显示详细信息
procedure Thm_pinfForm.dbgrid3CellClick(Column: TColumn);
begin
if ADOQuery4.RecordCount = 0 then exit;
Edit6.Text := DBGrid3.Fields[0].AsString ;
Edit7.Text := DBGrid3.Fields[1].AsString ;
Edit8.Text := DBGrid3.Fields[2].AsString ;
Edit9.Text := DBGrid3.Fields[3].AsString ;
Memo1.Text := DBGrid3.Fields[4].AsString ;
end;
//-------------奖惩记录TabSheet4显示时触发的操作,根据查询结果表显示相应的员工信息
procedure Thm_pinfForm.TabSheet4Show(Sender: TObject);
begin
ADOQuery4.close;
if (DBGrid1.Enabled =true) and (trim(DBGrid1.Fields[0].AsString)<>'') then
begin
ADOQuery4.SQL.Clear;
ADOQuery4.SQL.Text := 'select * from 奖惩记录 where 员工编号=' + DBGrid1.Fields[0].AsString;
ADOQuery4.Open;
combobox1.Clear;
//清除原有信息
edit10.Clear;
edit11.Clear;
//edit12.Clear;
memo2.Clear;
end;
end;
//-------------奖惩记录TabSheet4上表格点击,下方显示详细信息
procedure Thm_pinfForm.dbgrid4CellClick(Column: TColumn);
begin
if ADOQuery4.RecordCount = 0 then exit;
ComboBox1.Text := DBGrid4.Fields[0].AsString ;
Edit10.Text := DBGrid4.Fields[1].AsString ;
Edit11.Text := DBGrid4.Fields[2].AsString ;
//Edit12.Text := DBGrid4.Fields[3].AsString ;
DateTimePicker3.DateTime := DBGrid4.Fields[3].AsDateTime;
Memo2.Text := DBGrid4.Fields[4].AsString ;
end;
//-------------培训经历TabSheet5显示时触发的操作,根据查询结果表显示相应的员工信息
procedure Thm_pinfForm.TabSheet5Show(Sender: TObject);
begin
if (DBGrid1.Enabled =true) and (trim(DBGrid1.Fields[0].AsString)<>'') then
begin
ADOQuery4.close;
ADOQuery4.SQL.Clear;
ADOQuery4.SQL.Text := 'select * from 培训经历 where 员工编号=' + DBGrid1.Fields[0].AsString;
ADOQuery4.Open;
edit13.Clear;edit14.Clear;edit15.Clear;edit16.Clear;edit17.Clear;edit18.Clear;
end;
end;
//-------------培训经历TabSheet5上表格点击,下方显示详细信息
procedure Thm_pinfForm.dbgrid5CellClick(Column: TColumn);
begin
if ADOQuery4.RecordCount = 0 then exit;
Edit13.Text := DBGrid5.Fields[0].AsString ;
Edit14.Text := DBGrid5.Fields[1].AsString ;
Edit15.Text := DBGrid5.Fields[2].AsString ;
Edit16.Text := ADOQuery4.FieldByName('结束时间').AsString;
Edit17.Text := DBGrid5.Fields[3].AsString ;
Edit18.Text := DBGrid5.Fields[4].AsString ;
end;
//---------------点击启动查询按钮,确认后五种查询操作-----------
procedure Thm_pinfForm.SpeedButton1Click(Sender: TObject);
var
tempstr:string;
tag:integer;
begin
DBGrid1.Enabled :=true;
//初始SQL语句
ADOQuery2.close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Text := 'select * from 基本信息 where 编号 > 0';
//第二种方式基本信息查询状态
if PageControl1.ActivePageIndex = 0 then
begin
//是否有编号限定
if trim(hm_pnum.EditText) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 编号 = '+ trim(hm_pnum.EditText);
end;
//是否有姓名限定
if trim(hm_pname.EditText) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 姓名 = '''+ trim(hm_pname.EditText)+'''';
end;
//是否有身份证号限定
if trim(hm_pcardid.EditText) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 身份证号 = '''+ trim(hm_pcardid.EditText)+'''';
end;
//是否有性别限定
if trim(hm_psex.Text) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 性别 = '''+ trim(hm_psex.Text)+'''';
end;
//是否有工种限定
if trim(hm_psorts.EditText) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 工种 = '''+ trim(hm_psorts.EditText)+'''';
end;
//是否有籍贯限定
if trim(hm_pprovi.EditText) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 省市 = '''+ trim(hm_pprovi.EditText)+'''';
end;
//是否有民族限定
if trim(hm_pfolk.EditText) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 民族 = '''+ trim(hm_pfolk.EditText)+'''';
end;
//是否有学历限定
if trim(hm_pslevel.Text) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 学历 = '''+ trim(hm_pslevel.Text)+'''';
end;
//是否有专业限定
if trim(hm_pspecial.EditText) <> '' then
begin
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+'and 专业 = '''+ trim(hm_pspecial.EditText)+'''';
end;
end;
//后四种方式都需要基本信息表与其它表合作,即员工编号都要在其他表
//(工作经历,社会关系,奖惩记录,培训经历)查询得到的信息中出现
tempstr:=' and 编号 in (select 员工编号 from ';
tag:=0;
tempstr:=tempstr+PageControl1.ActivePage.Caption+' where 条目号 >0 ';
//第三种方式工作经历导引查询状态
if PageControl1.ActivePageIndex = 1 then
begin
//是否有曾任职公司限定
if trim(Edit3.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 公司 = '''+ trim(Edit3.Text)+'''';
end;
//是否有曾任职职责限定
if trim(Edit5.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 职责 = '''+ trim(Edit5.Text)+'''';
end;
end;
//第四种方式社会关系导引查询状态
if PageControl1.ActivePageIndex = 2 then
begin
//是否有亲属姓名限定
if trim(Edit6.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 姓名 = '''+ trim(Edit6.Text)+'''';
end;
//是否有亲属单位限定
if trim(Edit9.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 单位 = '''+ trim(Edit9.Text)+'''';
end;
end;
//第五种方式奖惩记录导引查询状态
if PageControl1.ActivePageIndex = 3 then
begin
//是否有事件类别限定
if trim(Combobox1.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 类别 = '''+ trim(Combobox1.Text)+'''';
end;
//是否有事件名称限定
if trim(Edit10.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 事件 = '''+ trim(Edit10.Text)+'''';
end;
//是否有处理部门限定
if trim(Edit11.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 处理部门 = '''+ trim(Edit11.Text)+'''';
end;
end;
//第六种方式培训经历导引查询状态
if PageControl1.ActivePageIndex = 4 then
begin
//是否有培训课程限定
if trim(Edit13.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 培训课程 = '''+ trim(Edit10.Text)+'''';
end;
//是否有培训单位限定
if trim(Edit17.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 培训单位 = '''+ trim(Edit17.Text)+'''';
end;
//是否有所获证书限定
if trim(Edit18.Text) <> '' then
begin
tag:=1;
tempstr :=tempstr+'and 证书 = '''+ trim(Edit18.Text)+'''';
end;
end;
if tag=1 then//针对后四种方式,分别加入相对应的表的限定
begin
tempstr :=tempstr+' )';
ADOQuery2.SQL.Text :=ADOQuery2.SQL.Text+ tempstr;
end;
//启动查询
ADOQuery2.Open;
Label51.Caption:=inttostr(ADOQuery2.RecordCount)+' 人';
//本次查询导引结束
Label21.Enabled:=true;
Label46.Enabled:=true;
Label47.Enabled:=true;
Label48.Enabled:=true;
Label49.Enabled:=true;
Label50.Enabled:=true;
SpeedButton1.Visible:=false;
Image4.Visible:=false;
end;
//------------------选择修改--------------------
procedure Thm_pinfForm.SpeedButton2Click(Sender: TObject);
begin
SpeedButton5.Visible:=true;
SpeedButton6.Visible:=true;
SpeedButton3.Enabled:=false;
SpeedButton4.Enabled:=false;
if PageControl1.ActivePageIndex = 0 then
begin
if not ADOQuery3.Active then Exit;
ADOQuery3.Edit;
Button1.Enabled:=true;
Button2.Enabled:=true;
end
else
begin
if not ADOQuery4.Active then Exit;
ADOQuery4.Edit;
end;
ShowData;
TabSheetState(PageControl1.ActivePageIndex);
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -