⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hm_pinf.~pas

📁 本课题是为企业人事管理提供现代化技术支持的管理信息系统
💻 ~PAS
📖 第 1 页 / 共 3 页
字号:
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 + -