人力资源管理系统(Delphi)--部分源代码

本系统开发的工具为:前台有Delphi,后台数据库SQL SERVER 2000数据库。

以下程序代码:是这个人事系统部分中的主要代码,如果有需要的话可以和我联系:系统中用到的第三方FastReport报表控件。

联系方式 QQ282935410   E-malifanyw81730@eyou.com

本系统不能拷贝,由永杰工作室提供!!~

 

 

1.//登陆窗口(f_login;);代码。                                                                      

unit w_login;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, Buttons;

 

type

  Tf_login = class(TForm)

    StaticText1: TStaticText;

    gb_1: TGroupBox;

    Label1: TLabel;

    Label2: TLabel;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    ComboBox1: TComboBox;

    Edit1: TEdit;

    procedure BitBtn2Click(Sender: TObject);

    procedure BitBtn1Click(Sender: TObject);

    procedure FormShow(Sender: TObject);

    procedure FormCreate(Sender: TObject);

    procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);

    procedure ComboBox1Select(Sender: TObject);

    procedure Edit1KeyPress(Sender: TObject; var Key: Char);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  f_login: Tf_login;

  s_name:string;

  s_mima:string;

  s_gb:string;

  il:integer;

implementation

 

uses w_main, data1;

 

{$R *.dfm}

 

procedure Tf_login.BitBtn2Click(Sender: TObject);

begin

close;

end;

 

procedure Tf_login.BitBtn1Click(Sender: TObject);

begin

if combobox1.text='' then

   begin

     showmessage('请输入用户名!');

     combobox1.SetFocus ;

     exit;

   end ;

 

if edit1.text='' then

   begin

     showmessage('请输入密码!');

     edit1.SetFocus ;

     exit;

    end

else

  begin

    data_1.ado_tab.Close;

    data_1.ado_tab.SQL.Clear;

    data_1.ado_tab.SQL.Add('select* from username where name='+char(39)+trim(combobox1.Text )+char(39)

    +'and password='+char(39)+trim(edit1.text)+char(39));

    data_1.ado_tab.Open;

    if data_1.ado_tab.RecordCount>0 then

       begin

       s_name:=trim(data_1.ado_tab.fieldbyname('name').AsString );

       s_mima:=trim(data_1.ado_tab.fieldbyname('password').AsString );

       s_gb:='yes';

      f_main.show;

      f_login.Hide ;

      end

else

    begin

        il:=il+1;

        if il>=3 then begin

        application.MessageBox('你输入的密码有三次错误,返回系统!!',char(48));

        f_login.Close;

        end;

        application.MessageBox('你输入的密码有误,请重新输入!!',char(48));

        edit1.Text:='';

        edit1.SetFocus ;

    end;

 end;

end;

procedure Tf_login.FormShow(Sender: TObject);

var

i:integer;

begin

 combobox1.Text:='';

 edit1.Text:='';

 combobox1.Clear;

 data_1.ado_tab.close;

 data_1.ado_tab.SQL.Clear;

 data_1.ado_tab.SQL.Add('select distinct name from username');

 data_1.ado_tab.Open;

  if data_1.ado_tab.RecordCount-1 >0 then

       combobox1.Clear;

       data_1.ado_tab.First;

   for i:=0 to data_1.ado_tab.RecordCount-1 do

       begin

        combobox1.Items.add(trim(data_1.ado_tab.fieldbyname('name').AsString ));

        data_1.ado_tab.Next;

      end;

  end;

procedure Tf_login.FormCreate(Sender: TObject);

begin

il:=0;

end;

 

procedure Tf_login.ComboBox1KeyPress(Sender: TObject; var Key: Char);

begin

 if key=char(13) then

      if combobox1.Text<>'' then

          begin

             edit1.SetFocus ;

         end

      else

          begin

           showmessage('请选择用户名');

            combobox1.SetFocus ;

          end;

   end;

procedure Tf_login.ComboBox1Select(Sender: TObject);

begin

 

      if combobox1.Text<>'' then

          begin

             edit1.SetFocus ;

         end

      else

          begin

           showmessage('请选择用户名');

            combobox1.SetFocus ;

          end;

end;

 

procedure Tf_login.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

 if ord(key)=13 then

 BitBtn1Click(sender);

end;

end.

2//用户管理(f_yhgl

unit w_yhgl;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, ComCtrls, StdCtrls, Buttons, DB, ADODB, Grids, DBGrids;

 

type

  Tf_yhgl = class(TForm)

    DBGrid1: TDBGrid;

    ADOQuery1: TADOQuery;

    DataSource1: TDataSource;

    gb_1: TGroupBox;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    e_bh: TEdit;

    c_xb: TComboBox;

    e_password: TEdit;

    e_user: TEdit;

    gb_2: TGroupBox;

    b_xz: TBitBtn;

    b_xg: TBitBtn;

    b_gb: TBitBtn;

    b_qx: TBitBtn;

    b_bc: TBitBtn;

    b_sc: TBitBtn;

    stb: TStatusBar;

    ADOQuery1bh: TStringField;

    ADOQuery1name: TStringField;

    ADOQuery1password: TStringField;

    ADOQuery1xb: TStringField;

    procedure s_show;

    procedure s_sava;

    procedure s_clear(bb:boolean);

    procedure FormShow(Sender: TObject);

    procedure DBGrid1CellClick(Column: TColumn);

    procedure b_xzClick(Sender: TObject);

    procedure b_gbClick(Sender: TObject);

    procedure b_qxClick(Sender: TObject);

    procedure b_scClick(Sender: TObject);

    procedure b_bcClick(Sender: TObject);

    procedure b_xgClick(Sender: TObject);

    procedure e_bhKeyPress(Sender: TObject; var Key: Char);

    procedure e_userKeyPress(Sender: TObject; var Key: Char);

    procedure e_passwordKeyPress(Sender: TObject; var Key: Char);

    procedure c_xbKeyPress(Sender: TObject; var Key: Char);

    procedure c_xbSelect(Sender: TObject);

    procedure DataSource1DataChange(Sender: TObject; Field: TField);

    procedure DataSource1StateChange(Sender: TObject);

  private

    { Private declarations }

   

  public

    { Public declarations }

  end;

 

var

  f_yhgl: Tf_yhgl;

   bsf:string;

implementation

 

{$R *.dfm}

procedure Tf_yhgl.s_clear(bb:boolean);

var

i:integer;

begin

  b_xz.Enabled:=true;

  b_xg.Enabled:=true;

  b_sc.Enabled:=true;

  b_bc.Enabled:=false;

  b_qx.Enabled:=false;

  b_gb.Enabled:=true;

  e_bh.Text:='';

  e_user.Text:='';

  e_password.text:='';

  c_xb.Text:='';

for i:=0 to gb_1.ControlCount-1 do  begin

    if (gb_1.Controls[i].ClassType=tedit) or (gb_1.Controls[i].ClassType=tcombobox) then

      begin

         if bb=false then

               gb_1.Controls[i].Enabled :=false

         else

               gb_1.Controls[i].Enabled:=true;

        end;

   end;

end;

procedure Tf_yhgl.s_sava;

 begin

  adoquery1.edit;

  adoquery1.fieldbyname('bh').AsString :=trim(e_bh.Text);

  adoquery1.fieldbyname('name').asstring:=trim(e_user.Text);

  adoquery1.fieldbyname('password').asstring:=trim(e_password.Text);

  adoquery1.fieldbyname('xb').asstring:=trim(c_xb.Text);

  adoquery1.post;

end;

procedure Tf_yhgl.s_show;

begin

  adoquery1.Close;

  adoquery1.SQL.Clear;

  adoquery1.SQL.Add('select * from username');

  adoquery1.Open;

end;

procedure Tf_yhgl.FormShow(Sender: TObject);

var

ss:boolean;

begin

s_show;

ss:=false;

s_clear(ss);

end;

procedure Tf_yhgl.DBGrid1CellClick(Column: TColumn);

var

vv:boolean;

begin

if adoquery1.RecordCount -1>0 then

  begin

  vv:=false;

   s_clear(vv);

   e_bh.Text :=trim(adoquery1.fieldbyname('bh').AsString);

   e_user.Text:=trim(adoquery1.fieldbyname('name').AsString);

   e_password.Text:=trim(adoquery1.fieldbyname('password').AsString);

   c_xb.Text :=trim(adoquery1.fieldbyname('xb').AsString);

  end;

end;

procedure Tf_yhgl.b_xzClick(Sender: TObject);

var

bb:boolean;

begin

    bsf:='xz' ;

    bb:=true;

    s_clear(bb);

    e_bh.SetFocus ;

    b_xz.Enabled:=false;

    b_xg.Enabled :=false;

    b_bc.Enabled :=true;

    b_sc.Enabled :=false;

    b_qx.Enabled :=true;

    b_gb.Enabled :=true;

 

end;

procedure Tf_yhgl.b_gbClick(Sender: TObject);

begin

close;

end;

procedure Tf_yhgl.b_qxClick(Sender: TObject);

var

ss:boolean;

begin

ss:=false;

s_clear(ss);

end;

procedure Tf_yhgl.b_scClick(Sender: TObject);

var

bb:boolean;

begin

 if e_bh.Text<>'' then

     begin

       if MessageDlg('输入的数据是否真正的删除吗?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then

            begin

             adoquery1.Delete;

             s_show;

             bb:=false;

             s_clear(bb);

        end

     else

      exit

    end

 else

   application.MessageBox('请双击删除数据',char(48));

end;

procedure Tf_yhgl.b_bcClick(Sender: TObject);

var

bb:boolean;

begin

if trim(e_bh.Text)='' then

      begin

        showmessage('请输入员工编号');

        exit;

        e_bh.SetFocus ;

      end;

if bsf<>'xg' then

   begin

     adoquery1.Close;

     adoquery1.SQL.clear;

     adoquery1.SQL.add('select * from username where bh='+char(39)+trim(e_bh.Text)+char(39));

     adoquery1.Open;

    end;

if adoquery1.RecordCount< 0 then

   begin

    application.MessageBox('请输入数据',char(48));

    exit;

    s_show;

  end;

 

if trim(e_user.Text)='' then

     begin

      application.MessageBox('请输入员工姓名',char(48));

      exit;

      s_show;

      e_user.SetFocus ;

     end;

if trim(e_password.Text)='' then

    begin

     application.MessageBox('请输入员工密码',char(48));

     exit;

     s_show;

     e_password.SetFocus;

     end;

if trim(c_xb.Text)='' then

    begin

    application.MessageBox('请选择性别',char(48));

    exit;

    s_show;

   end;

if MessageDlg('输入的数据是否保存记录?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then

    begin

    s_sava;

    s_show;

    bb:=false;

    s_clear(bb);

    end

else

    s_show;

    exit;

end;

procedure Tf_yhgl.b_xgClick(Sender: TObject);

var

i:integer;

begin

if trim(e_bh.Text)<>'' then

    begin

      bsf:='xg';

      for i:=0 to gb_1.ControlCount-1 do  begin

    if (gb_1.Controls[i].ClassType =tedit) or(gb_1.Controls[i].ClassType =tcombobox)  then

         begin

            gb_1.Controls[i].Enabled :=true;

            b_xz.Enabled:=false;

            b_xg.Enabled:=false;

            b_bc.Enabled :=true;

            b_sc.Enabled:=false;

            b_qx.Enabled :=true;

            b_gb.Enabled :=true;

          end ;

      end;

     end

 else

    application.MessageBox('请选择修改的数据',char(39));

end;

procedure Tf_yhgl.e_bhKeyPress(Sender: TObject; var Key: Char);

begin

if key=char(13) then

    if trim(e_bh.Text)<>'' then

      begin

        e_user.SetFocus;

      end

   else begin

     application.MessageBox('请输入员工编号',char(48));

     e_bh.SetFocus;

     end;

end;

procedure Tf_yhgl.e_userKeyPress(Sender: TObject; var Key: Char);

begin

 if key=char(13) then

    if trim(e_user.Text)<>'' then

      begin

        e_password.SetFocus;

      end

   else begin

     application.MessageBox('请输入用户名',char(48));

     e_user.SetFocus;

     end;

end;

procedure Tf_yhgl.e_passwordKeyPress(Sender: TObject; var Key: Char);

begin

 if key=char(13) then

    if trim(e_password.Text)<>'' then

      begin

       c_xb.SetFocus;

      end

 else begin

     application.MessageBox('请输入员工密码',char(48));

     e_password.SetFocus ;

     end;

end;

procedure Tf_yhgl.c_xbKeyPress(Sender: TObject; var Key: Char);

begin

 if key=char(13) then

    if trim(c_xb.Text)<>'' then

      begin

       b_bc.SetFocus;

      end

 else  begin

     application.MessageBox('请选择员工性别',char(48));

     c_xb.SetFocus ;

   end;

end;

procedure Tf_yhgl.c_xbSelect(Sender: TObject);

begin

 if trim(c_xb.Text)<>'' then

      begin

       b_bc.SetFocus;

      end

 else  begin

     application.MessageBox('请选择员工性别',char(48));

     c_xb.SetFocus ;

   end;

end;

procedure Tf_yhgl.DataSource1DataChange(Sender: TObject; Field: TField);

begin

stb.Panels[2].Text:='  当前记录第'+inttostr(adoquery1.RecNo)+'条记录';

stb.Panels[1].Text:='  记录共有'+inttostr(adoquery1.RecordCount)+'条记录'

end;

procedure Tf_yhgl.DataSource1StateChange(Sender: TObject);

begin

case DataSource1.State of

  dsBrowse :stb.Panels.Items[0].Text:='  [浏览模式]';

  dsEdit:stb.Panels.Items[0].Text:=' [编辑模式]';

  dsInsert:stb.Panels.Items[0].Text:=' [插入模式]';

  else stb.Panels.Items[0].Text:=' [其他模式]';

 end;

end;

end.

3 .//修改密码(f_xgmm)程序代码;

unit w_xgmm;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, DB, ADODB;

 

type

  Tf_xgmm = class(TForm)

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Edit1: TEdit;

    edit2: TEdit;

    Edit3: TEdit;

    Button1: TButton;

    Button2: TButton;

    ADOQuery1: TADOQuery;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  f_xgmm: Tf_xgmm;

 

implementation

 

uses data1, w_login;

 

{$R *.dfm}

 

procedure Tf_xgmm.Button1Click(Sender: TObject);

begin

 if trim(edit1.Text)<>trim(s_mima) then

      begin

       showmessage('你输入的旧密码不正确,请重新输入!!');

      end

else

  begin

    if trim(edit2.Text)<>trim(edit3.text) then

     begin

       showmessage('你输入的新密码不一致!!');

      end

   else

      adoquery1.Close;

      adoquery1.SQL.Clear;

      adoquery1.SQL.Add('update username set password ='+char(39)+trim(edit2.text)+char(39)+

      'where name='+char(39)+trim(s_name)+char(39));

      adoquery1.ExecSQL ;

     application.MessageBox('密码修改成功!!',chr(48)) ;

  end;

 end;

procedure Tf_xgmm.Button2Click(Sender: TObject);

begin

close;

end;

end.

4.//部门设置(f_dept :

unit w_dept;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, DB, ADODB, Buttons;

 

type

  Tf_dept = class(TForm)

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Edit1: TEdit;

    Edit2: TEdit;

    ADOQuery1: TADOQuery;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    procedure BitBtn1Click(Sender: TObject);

    procedure BitBtn2Click(Sender: TObject);

    procedure Edit1KeyPress(Sender: TObject; var Key: Char);

    procedure Edit2KeyPress(Sender: TObject; var Key: Char);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  f_dept: Tf_dept;

 

implementation

 

{$R *.dfm}

 

procedure Tf_dept.BitBtn1Click(Sender: TObject);

begin

if adoquery1.active  then  begin

if edit1.Text<>'' then

begin

adoquery1.Append;

adoquery1.fieldbyname('depa_id').AsString :=trim(edit1.Text);

adoquery1.fieldbyname('depa_name').AsString :=trim(edit2.Text);

adoquery1.Post;

showmessage('数据保存成功!!') ;

edit1.Text:='';

edit2.Text:='';

edit1.SetFocus ;

end;

end;

end;

 

procedure Tf_dept.BitBtn2Click(Sender: TObject);

begin

close;

end;

 

procedure Tf_dept.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if key=char(13) then

    if trim(edit1.Text)<>'' then

      begin

        edit2.SetFocus;

     end

    else

      begin

       showmessage('请输入部门编号!');

       edit1.SetFocus;

  end;

end;

 

procedure Tf_dept.Edit2KeyPress(Sender: TObject; var Key: Char);

begin

if key=char(13) then

    if trim(edit2.Text)<>'' then

      begin

       bitbtn1.SetFocus;

     end

    else

      begin

       bitbtn1.SetFocus;

     end;

end;

 

end.

5.工资查询(f_gzcx

unit w_gzcx;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, Buttons, Grids, DBGrids, DB, ADODB, FR_Class, FR_DSet,

  FR_DBSet;

 

type

  Tf_gzcx = class(TForm)

    ADOQuery1: TADOQuery;

    DataSource1: TDataSource;

    DBGrid1: TDBGrid;

    GroupBox1: TGroupBox;

    Label16: TLabel;

    Label17: TLabel;

    Label1: TLabel;

    ComboBox1: TComboBox;

    ComboBox2: TComboBox;

    BitBtn9: TBitBtn;

    BitBtn6: TBitBtn;

    BitBtn7: TBitBtn;

    BitBtn1: TBitBtn;

    Edit21: TEdit;

    ADOQuery1bh: TStringField;

    ADOQuery1name: TStringField;

    ADOQuery1SEX: TStringField;

    ADOQuery1DEPA_ID: TStringField;

    ADOQuery1B_SALARY: TIntegerField;

    ADOQuery1WORKDAY: TIntegerField;

    ADOQuery1addtime: TIntegerField;

    ADOQuery1BUTIE: TIntegerField;

    ADOQuery1FULI: TIntegerField;

    ADOQuery1TEX: TIntegerField;

    ADOQuery1KOUCHU: TIntegerField;

    ADOQuery1JJ: TIntegerField;

    ADOQuery1SJ: TIntegerField;

    ADOQuery1BJ: TIntegerField;

    ADOQuery1R_SALARY: TIntegerField;

    RadioButton1: TRadioButton;

    RadioButton2: TRadioButton;

    frDBDataSet1: TfrDBDataSet;

    frReport1: TfrReport;

    procedure ADOQuery1CalcFields(DataSet: TDataSet);

    procedure BitBtn9Click(Sender: TObject);

    procedure FormCreate(Sender: TObject);

    procedure RadioButton1Click(Sender: TObject);

    procedure BitBtn1Click(Sender: TObject);

    procedure RadioButton2Click(Sender: TObject);

    procedure BitBtn7Click(Sender: TObject);

    procedure BitBtn6Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  f_gzcx: Tf_gzcx;

   bystr:string;

implementation

 

{$R *.dfm}

 

procedure Tf_gzcx.ADOQuery1CalcFields(DataSet: TDataSet);

begin

adoquery1.FieldByName('kouchu').Value :=adoquery1.fieldbyname('tex').Value+

(adoquery1.fieldbyname('b_salary').Value /adoquery1.fieldbyname('workday').Value) ;

adoquery1.FieldByName('r_salary').Value:=adoquery1.fieldbyname('b_salary').Value

+adoquery1.fieldbyname('butie').value+adoquery1.fieldbyname('fuli').value+

adoquery1.fieldbyname('addtime').value*(adoquery1.FieldByName('b_salary').Value/adoquery1.fieldbyname('workday').value)+

adoquery1.fieldbyname('jj').value-adoquery1.FieldByName('kouchu').Value ;

end;

procedure Tf_gzcx.BitBtn9Click(Sender: TObject);

begin

close;

end;

 

procedure Tf_gzcx.FormCreate(Sender: TObject);

begin

bystr:='bh';

end;

 

procedure Tf_gzcx.RadioButton1Click(Sender: TObject);

begin

if RadioButton1.Checked  then

bystr:='bh'

else

bystr:='depa_id';

end;

procedure Tf_gzcx.BitBtn1Click(Sender: TObject);

begin

adoquery1.Close;

adoquery1.SQL.Clear;

adoquery1.sql.add('select * from empsalary order by '+bystr);

adoquery1.Open;

end;

procedure Tf_gzcx.RadioButton2Click(Sender: TObject);

begin

if RadioButton1.Checked  then

bystr:='bh'

else

bystr:='depa_id';

end;

 

procedure Tf_gzcx.BitBtn7Click(Sender: TObject);

var

s,s1,s2,s3:string;

begin

  s1:=combobox1.Text;

  s2:=combobox2.text;

  s3:=edit21.Text;

 if s1='' then

  begin

    showmessage('请选择查询字段!');

  end

  else

   begin

      if s2='' then

      begin

        showmessage('请选择查询条件!');

      end

      else

     begin

      if s3='' then

      begin

        showmessage('请输入查询值!');

      end

      else

      begin

          s:='select * from empsalary where '+s1+s2+''''+s3+'''';

        adoquery1.Close;

        adoquery1.SQL.Clear;

        adoquery1.SQL.Add(s);

        adoquery1.Open;

        showmessage('共找到'+inttostr(adoquery1.RecordCount)+'条记录')

      end;

    end;

  end;

  end;

procedure Tf_gzcx.BitBtn6Click(Sender: TObject);

begin

f_gzcx.frReport1.ShowReport ;

end;

end.

6.工资录入(f_gzrl

unit w_gzrl;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, DB, StdCtrls, Mask, DBCtrls, ADODB, Buttons, ExtCtrls;

type

  Tf_gzrl = class(TForm)

    ADOQuery1: TADOQuery;

    Label1: TLabel;

    Label2: TLabel;

    DBEdit1: TDBEdit;

    DataSource1: TDataSource;

    Label3: TLabel;

    DBEdit2: TDBEdit;

    Label4: TLabel;

    DBEdit3: TDBEdit;

    Label5: TLabel;

    DBEdit4: TDBEdit;

    Label6: TLabel;

    DBEdit5: TDBEdit;

    Label7: TLabel;

    DBEdit6: TDBEdit;

    Label8: TLabel;

    DBEdit7: TDBEdit;

    Label9: TLabel;

    DBEdit8: TDBEdit;

    Label10: TLabel;

    DBEdit9: TDBEdit;

    Label11: TLabel;

    DBEdit10: TDBEdit;

    Label12: TLabel;

    DBEdit11: TDBEdit;

    Label13: TLabel;

    DBEdit12: TDBEdit;

    Label14: TLabel;

    DBEdit13: TDBEdit;

    Label16: TLabel;

    DBEdit14: TDBEdit;

    Label17: TLabel;

    DBEdit15: TDBEdit;

    Bevel1: TBevel;

    Button3: TButton;

    Button2: TButton;

    Button7: TButton;

    Button4: TButton;

    Button5: TButton;

    Button6: TButton;

    Button8: TButton;

    Button1: TButton;

    BitBtn1: TBitBtn;

    Bevel2: TBevel;

    Bevel3: TBevel;

    Edit1: TEdit;

    Edit2: TEdit;

    ADOQuery1bh: TStringField;

    ADOQuery1name: TStringField;

    ADOQuery1SEX: TStringField;

    ADOQuery1DEPA_ID: TStringField;

    ADOQuery1B_SALARY: TIntegerField;

    ADOQuery1WORKDAY: TIntegerField;

    ADOQuery1addtime: TIntegerField;

    ADOQuery1BUTIE: TIntegerField;

    ADOQuery1FULI: TIntegerField;

    ADOQuery1TEX: TIntegerField;

    ADOQuery1KOUCHU: TIntegerField;

    ADOQuery1JJ: TIntegerField;

    ADOQuery1SJ: TIntegerField;

    ADOQuery1BJ: TIntegerField;

    ADOQuery1R_SALARY: TIntegerField;

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure Button7Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure Button6Click(Sender: TObject);

    procedure Button8Click(Sender: TObject);

    procedure BitBtn1Click(Sender: TObject);

    procedure ADOQuery1CalcFields(DataSet: TDataSet);

    procedure Button1Click(Sender: TObject);

    procedure FormShow(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  f_gzrl: Tf_gzrl;

implementation

{$R *.dfm}

procedure Tf_gzrl.Button2Click(Sender: TObject);

begin

dbedit1.text:='';

dbedit2.text:='';

dbedit3.text:='';

dbedit4.text:='';

dbedit5.text:='';

dbedit6.text:='';

dbedit7.text:='';

dbedit8.text:='';

dbedit9.text:='';

dbedit10.text:='';

dbedit11.text:='';

dbedit12.text:='';

dbedit13.text:='';

dbedit14.text:='';

dbedit15.text:='';

edit1.Text :='';

edit2.Text:='';

adoquery1.Append;

end;

procedure Tf_gzrl.Button3Click(Sender: TObject);

begin

adoquery1.Edit;

adoquery1.Post;

showmessage('数据修改成功!');

edit1.Text :='';

edit2.Text:='';

end;

procedure Tf_gzrl.Button7Click(Sender: TObject);

begin

if adoquery1.Modified then

     adoquery1.Post;

 end;

procedure Tf_gzrl.Button4Click(Sender: TObject);

begin

adoquery1.Prior;

edit1.Text :='';

edit2.Text:='';

end;

procedure Tf_gzrl.Button5Click(Sender: TObject);

begin

adoquery1.next;

edit1.Text :='';

edit2.Text:='';

end;

procedure Tf_gzrl.Button6Click(Sender: TObject);

begin

adoquery1.First;

showmessage('当前是第一条记录');

edit1.Text :='';

edit2.Text:='';

end;

procedure Tf_gzrl.Button8Click(Sender: TObject);

begin

adoquery1.Last;

showmessage('当前是最后一条记录');

edit1.Text :='';

edit2.Text:='';

end;

procedure Tf_gzrl.BitBtn1Click(Sender: TObject);

begin

close;

end;

procedure Tf_gzrl.ADOQuery1CalcFields(DataSet: TDataSet);

begin

adoquery1.FieldByName('kouchu').Value :=adoquery1.fieldbyname('tex').Value+

(adoquery1.fieldbyname('b_salary').Value /adoquery1.fieldbyname('workday').Value) ;

adoquery1.FieldByName('r_salary').Value:=adoquery1.fieldbyname('b_salary').Value

+adoquery1.fieldbyname('butie').value+adoquery1.fieldbyname('fuli').value+

adoquery1.fieldbyname('addtime').value*(adoquery1.FieldByName('b_salary').Value/adoquery1.fieldbyname('workday').value)+

adoquery1.fieldbyname('jj').value-adoquery1.FieldByName('kouchu').Value ;

 

end;

 

procedure Tf_gzrl.Button1Click(Sender: TObject);

begin

 edit1.Text:=dbedit11.Text;

 edit2.Text:=dbedit15.Text;

end;

 

procedure Tf_gzrl.FormShow(Sender: TObject);

begin

adoquery1.Refresh ;

edit1.Text:='';

edit2.Text:='';

end;

end.

7.主窗口(f_main

unit w_main;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, ComCtrls, Menus, ToolWin, ExtCtrls, ImgList, DB, ADODB, FR_DSet,

  FR_DBSet, FR_Class;

 

type

  Tf_main = class(TForm)

    MainMenu: TMainMenu;

    mnuSet: TMenuItem;

    mnuNewUser: TMenuItem;

    mnuEditPass: TMenuItem;

    mnuExit: TMenuItem;

    N5: TMenuItem;

    N6: TMenuItem;

    N8: TMenuItem;

    N11: TMenuItem;

    N12: TMenuItem;

    mnuUser: TMenuItem;

    mnuUserSet: TMenuItem;

    mnuUserSetDepa: TMenuItem;

    mnuUserSetPosi: TMenuItem;

    N3: TMenuItem;

    mnuUserInfo: TMenuItem;

    mnuUserInfoNew: TMenuItem;

    mnuUserInfoMan: TMenuItem;

    mnuUserSal: TMenuItem;

    mnuUserSalCom: TMenuItem;

    mnuUserSalSearch: TMenuItem;

    N4: TMenuItem;

    mnuUserPx: TMenuItem;

    mnuUserZpPlan: TMenuItem;

    mnuUserPxPlan: TMenuItem;

    N13: TMenuItem;

    mnuUserSearch: TMenuItem;

    N14: TMenuItem;

    N15: TMenuItem;

    stb_1: TStatusBar;

    N1: TMenuItem;

    N2: TMenuItem;

    Timer1: TTimer;

    ToolBar1: TToolBar;

    ToolButton1: TToolButton;

    ToolButton2: TToolButton;

    ToolButton3: TToolButton;

    ToolButton4: TToolButton;

    ImageList2: TImageList;

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure mnuEditPassClick(Sender: TObject);

    procedure N1Click(Sender: TObject);

    procedure N2Click(Sender: TObject);

    procedure mnuNewUserClick(Sender: TObject);

    procedure Timer1Timer(Sender: TObject);

    procedure mnuUserSetDepaClick(Sender: TObject);

    procedure mnuUserInfoNewClick(Sender: TObject);

    procedure mnuUserSalComClick(Sender: TObject);

    procedure mnuUserSalSearchClick(Sender: TObject);

    procedure ToolButton1Click(Sender: TObject);

    procedure ToolButton2Click(Sender: TObject);

    procedure ToolButton3Click(Sender: TObject);

    procedure ToolButton4Click(Sender: TObject);

    procedure mnuUserZpPlanClick(Sender: TObject);

    procedure mnuUserPxPlanClick(Sender: TObject);

    procedure mnuUserInfoManClick(Sender: TObject);

    procedure mnuUserSearchClick(Sender: TObject);

    procedure mnuExitClick(Sender: TObject);

  private

  function  whatweek:string;

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  f_main: Tf_main;

 

implementation

 

uses w_xgmm, w_login, w_yhgl, w_dept, w_xzyg, w_gzrl, w_gzcx, data1,

  w_zpinfo, w_pxinfo, w_yggl, Unit1, w_zhgl;

 

{$R *.dfm}

function tf_main.whatweek:string;

var

i_week:integer;

 begin

 i_week:=dayofweek(date());

  case i_week of

   1:result:='星期日';

   2:result:='星期一';

   3:result:='星期二';

   4:result:='星期三';

   5:result:='星期四';

   6:result:='星期五';

   7:result:='星期六'

   end;

end;

procedure Tf_main.FormClose(Sender: TObject; var Action: TCloseAction);

begin

   if MessageDlg('真正关闭窗口吗?', mtConfirmation,[mbYes, mbNo], 0) = mrYes then

   begin Action := caFree;

    application.Terminate;

  end

  else

    Action := caNone;

 end;

procedure Tf_main.mnuEditPassClick(Sender: TObject);

begin

f_xgmm:=tf_xgmm.create(self);

f_xgmm.ShowModal;

end;

procedure Tf_main.N1Click(Sender: TObject);

begin

 f_main.hide;

 f_login.show;

end;

 

procedure Tf_main.N2Click(Sender: TObject);

begin

  N2.Checked:=not N2.Checked;

 if N2.Checked  then

   begin

     self.AlphaBlend:=true;

     self.AlphaBlendValue:=125;

   end

 else

    self.AlphaBlend :=false;

end;

procedure Tf_main.mnuNewUserClick(Sender: TObject);

begin

f_yhgl:=tf_yhgl.create(self);

f_yhgl.showmodal;

end;

procedure Tf_main.Timer1Timer(Sender: TObject);

var

s_data,str1,str2:string;

begin

   str1:=formatdatetime('yyyy/mm/dd/hh:mm',now());

   str2:='  今天是'+copy(str1,1,4)+''+copy(str1,6,2)+''+copy(str1,9,2)+' '+copy(str1,12,2)+':'+copy(str1,15,2) ;

   s_data :='   '+str2+whatweek;

   stb_1.Panels[0].Text:=s_data;

end;

 

procedure Tf_main.mnuUserSetDepaClick(Sender: TObject);

begin

f_dept:=tf_dept.create(self);

f_dept.ShowModal;

end;

procedure Tf_main.mnuUserInfoNewClick(Sender: TObject);

begin

f_xzyg:=tf_xzyg.create(self);

f_xzyg.showmodal;

end;

 

procedure Tf_main.mnuUserSalComClick(Sender: TObject);

begin

f_gzrl:=tf_gzrl.create(self);

f_gzrl.show;

end;

procedure Tf_main.mnuUserSalSearchClick(Sender: TObject);

begin

f_gzcx:=tf_gzcx.create(self);

f_gzcx.show;

end;

 

procedure Tf_main.ToolButton1Click(Sender: TObject);

begin

data_1.frReport1.ShowReport;

end;

 

procedure Tf_main.ToolButton2Click(Sender: TObject);

begin

data_1.frReport2.ShowReport ;

end;

 

procedure Tf_main.ToolButton3Click(Sender: TObject);

begin

data_1.frReport3.ShowReport ;

end;

procedure Tf_main.ToolButton4Click(Sender: TObject);

begin

data_1.frReport4.ShowReport ;

end;

 

procedure Tf_main.mnuUserZpPlanClick(Sender: TObject);

begin

f_zpinfo:=tf_zpinfo.create(self);

f_zpinfo.show;

end;

procedure Tf_main.mnuUserPxPlanClick(Sender: TObject);

begin

f_pxinfo:=tf_pxinfo.create(self);

f_pxinfo.show;

end;

procedure Tf_main.mnuUserInfoManClick(Sender: TObject);

begin

form1.show;

end;

procedure Tf_main.mnuUserSearchClick(Sender: TObject);

begin

f_zhgl:=tf_zhgl.create(self);

f_zhgl.show;

end;

procedure Tf_main.mnuExitClick(Sender: TObject);

begin

 application.Terminate;

end;

end.

8.综合查询(f_zhcx)程序代码:

unit w_zhgl;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, DB, Grids, DBGrids, ADODB, ComCtrls, StdCtrls, Buttons;

 

type

  Tf_zhgl = class(TForm)

    PageControl1: TPageControl;

    TabSheet1: TTabSheet;

    TabSheet2: TTabSheet;

    ADOQuery1: TADOQuery;

    DataSource1: TDataSource;

    DBGrid1: TDBGrid;

    DBGrid2: TDBGrid;

    ADOQuery2: TADOQuery;

    DataSource2: TDataSource;

    ComboBox1: TComboBox;

    Edit1: TEdit;

    ComboBox2: TComboBox;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    Label4: TLabel;

    Label5: TLabel;

    Label6: TLabel;

    Edit3: TEdit;

    Label7: TLabel;

    Edit4: TEdit;

    BitBtn3: TBitBtn;

    BitBtn4: TBitBtn;

    b_fanhui1: TBitBtn;

    ADOQuery2bh: TStringField;

    ADOQuery2name: TStringField;

    ADOQuery2sex: TStringField;

    ADOQuery2birthday: TDateTimeField;

    ADOQuery2depa_id: TStringField;

    ADOQuery2job: TStringField;

    ADOQuery2nation: TStringField;

    ADOQuery2zzmm: TStringField;

    ADOQuery2b_salary: TFloatField;

    ADOQuery2work_time: TIntegerField;

    ADOQuery2memo: TStringField;

    ADOQuery1ZP_ID: TStringField;

    ADOQuery1TIME: TDateTimeField;

    ADOQuery1DEPA_NAME: TStringField;

    ADOQuery1MAN: TIntegerField;

    ADOQuery1xueli: TStringField;

    Button1: TButton;

    procedure BitBtn4Click(Sender: TObject);

    procedure BitBtn3Click(Sender: TObject);

    procedure BitBtn1Click(Sender: TObject);

    procedure BitBtn2Click(Sender: TObject);

    procedure BitBtn5Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  f_zhgl: Tf_zhgl;

 

implementation

 

{$R *.dfm}

 

procedure Tf_zhgl.BitBtn4Click(Sender: TObject);

begin

close;

end;

 

procedure Tf_zhgl.BitBtn3Click(Sender: TObject);

var

ss:string;

begin

  ss:='';

 if combobox1.Text+edit3.Text+edit4.Text='' then

    begin

    application.MessageBox('您没有输入查询条件!!','提示',MB_ok+MB_ICONINFORMATION);

    end

else

  begin

     if combobox1.Text<>'' then

         ss:=ss+'and DEPA_NAME='+''''+combobox1.Text+'''';

     if edit3.Text <>'' then

       ss:=ss+'and ZP_ID='+''''+edit3.Text+'''';

     if edit4.Text<>'' then

        ss:=ss+'and man='+''''+edit4.Text+'''';

       ss:='select * from zpinfo where 1=1'+ss;

     adoquery1.Close;

     adoquery1.SQL.Clear;

     adoquery1.SQL.Add(ss);

     adoquery1.Open;

    if adoquery1.RecordCount=0 then  begin

       application.MessageBox('没有符合要求查询条件,请重新输入!','提示',MB_ok+MB_ICONINFORMATION);

    end;

  end ;

  end;

procedure Tf_zhgl.BitBtn1Click(Sender: TObject);

var

ss:string;

begin

ss:='';

if  edit1.Text+combobox2.Text+edit2.Text=''  then

    begin

     application.MessageBox('没有输入查询条件!!','提示',MB_ok+MB_ICONINFORMATION);

    end

else

   begin

    if edit1.Text<>'' then

      ss:=ss+'and bh='+''''+edit1.Text+'''';

    if combobox2.text<>'' then

       ss:=ss+'and depa_id='+''''+combobox2.Text+'''';

    if  edit2.Text<>'' then

        ss:=ss+'and name='+''''+edit2.Text+'''';

        ss:='select * from empinfo where 1=1'+ss ;

       adoquery2.Close;

       adoquery2.SQL.Clear ;

       adoquery2.SQL.Add(ss);

       adoquery2.Open;

       if adoquery2.RecordCount=0 then  begin

         showmessage('您输入的条件不符合条件,请重新输入!!');

  end;

end;

end;

procedure Tf_zhgl.BitBtn2Click(Sender: TObject);

begin

close;

end;

 

procedure Tf_zhgl.BitBtn5Click(Sender: TObject);

begin

adoquery1.Close;

adoquery1.SQL.Clear;

adoquery1.SQL.Add('select * from zpinfo ');

adoquery1.Open ;

end;

procedure Tf_zhgl.Button1Click(Sender: TObject);

begin

adoquery2.Close;

adoquery2.SQL.Clear;

adoquery2.SQL.Add('select * from empinfo ');

adoquery2.Open ;

end;

 

end.

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值