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

📄 rsxx.pas

📁 一个DELPHI的人事管理系统,具有一般人事管理系统的基本功能
💻 PAS
字号:
unit rsxx;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, DBTables, StdCtrls, Grids, DBGrids, Buttons, ToolWin,
  ComCtrls, Mask;

type
  TInfo_Form = class(TForm)
    ToolBar1: TToolBar;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    DBGrid1: TDBGrid;
    GroupBox1: TGroupBox;
    Table1: TTable;
    DataSource1: TDataSource;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Label3: TLabel;
    ComboBox1: TComboBox;
    Label4: TLabel;
    Edit3: TEdit;
    Label5: TLabel;
    MaskEdit1: TMaskEdit;
    Label6: TLabel;
    Edit4: TEdit;
    Label7: TLabel;
    Edit5: TEdit;
    Label8: TLabel;
    Edit6: TEdit;
    Label9: TLabel;
    Edit7: TEdit;
    Label10: TLabel;
    MaskEdit2: TMaskEdit;
    Label11: TLabel;
    Edit8: TEdit;
    Label12: TLabel;
    Edit9: TEdit;
    Label13: TLabel;
    Edit10: TEdit;
    Label14: TLabel;
    Edit11: TEdit;
    Label15: TLabel;
    MaskEdit3: TMaskEdit;
    SpeedButton4: TSpeedButton;
    Table1Number: TStringField;
    Table1Name: TStringField;
    Table1Sex: TStringField;
    Table1Birthday: TDateField;
    Table1Address: TStringField;
    Table1Phone: TStringField;
    Table1Unit: TStringField;
    Table1Salary: TFloatField;
    Table1Work_date: TDateField;
    Table1Duty: TStringField;
    Table1Speciality: TStringField;
    Table1Note: TStringField;
    Table1Operator: TStringField;
    Table1Stamp: TDateField;
    Table1Id: TStringField;
    procedure SpeedButton4Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure Edit1Exit(Sender: TObject);
    procedure Table1AfterScroll(DataSet: TDataSet);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure initiate;
    procedure SaveToTable;
    procedure LoadFromTable;
  end;

var
  Info_Form: TInfo_Form;
  new_type:boolean;
implementation
  uses main;
{$R *.dfm}

procedure TInfo_Form.SpeedButton4Click(Sender: TObject);
begin
    Table1.close;
    Close;
end;

procedure TInfo_Form.FormActivate(Sender: TObject);
begin
    Table1Number.displaylabel:='员工编号';
    Table1Name.DisplayLabel:='员工姓名';
    Table1sex.DisplayLabel:='性别';
    Table1Birthday.DisplayLabel:='出生年月';
    Table1Id.DisplayLabel:='身份证号';
    Table1address.DisplayLabel:='通信地址';
    Table1Phone.DisplayLabel:='联系电话';
    Table1Unit.DisplayLabel:='所在单位';
    Table1salary.DisplayLabel:='工资';
    Table1Work_date.DisplayLabel:='参加工作时间';
    Table1Duty.DisplayLabel:='职务';
    Table1Speciality.DisplayLabel:='专业';
    Table1Note.DisplayLabel:='备注';
    Table1Operator.DisplayLabel:='操作员';
    Table1Stamp.DisplayLabel:='最后操作时间';
    Table1.open;
    initiate;
    if not Table1.Eof then
        loadfromtable
    else
        SpeedButton3.Enabled:=false;
    new_type:=false;
end;
procedure TInfo_Form.initiate;
begin
    Edit1.Text:='';
    Edit2.Text:='';
    Edit3.Text:='';
    Edit4.Text:='';
    Edit5.Text:='';
    Edit6.Text:='';
    Edit7.Text:='';
    Edit8.Text:='';
    Edit9.Text:='';
    Edit10.Text:='';
    Edit11.Text:=username;
    Maskedit1.Text:='';
    Maskedit2.Text:='';
    Maskedit3.Text:=DatetoStr(Date());
    combobox1.Items.Clear;
    combobox1.Items.Add('男');
    combobox1.Items.add('女');
    combobox1.text:=combobox1.Items[0];
    Edit1.SetFocus;
end;
procedure TInfo_Form.SaveToTable;
begin
    Table1.edit;
    Table1.FieldByname('number').asstring:=edit1.text;
    Table1.FieldByname('name').asstring:=edit2.text;
    Table1.FieldByname('sex').asstring:=ComboBox1.text;
    Table1.FieldByname('id').asstring:=edit3.text;
    Table1.FieldByname('birthday').asdatetime:=StrtoDate(maskedit1.text);
    Table1.FieldByname('phone').asstring:=edit4.text;
    Table1.FieldByname('address').asstring:=edit5.text;
    Table1.FieldByname('unit').asstring:=edit6.text;
    Table1.FieldByname('salary').asfloat:=StrToFloat(edit7.text);
    Table1.FieldByname('work_date').asdatetime:=StrToDate(maskedit2.text);
    Table1.FieldByname('duty').asstring:=edit8.text;
    Table1.FieldByname('speciality').asstring:=edit9.text;
    Table1.FieldByname('note').asstring:=edit10.text;
    Table1.FieldByname('operator').asstring:=edit11.text;
    Table1.FieldByname('stamp').asdatetime:=StrToDate(maskedit3.text);
    Table1.post;                        
end;
procedure TInfo_Form.LoadFromTable;
begin
    Edit1.Text:=Table1.FieldByname('number').asstring;
    Edit2.Text:=Table1.FieldByname('name').asstring;
    ComboBox1.Text:=Table1.FieldByname('sex').asstring;
    edit3.text:=Table1.FieldByName('id').asstring;
    Maskedit1.text:=DateToStr(Table1.FieldByname('birthday').asdatetime);
    Edit4.Text:=Table1.FieldByname('phone').asstring;
    Edit5.Text:=Table1.FieldByname('address').asstring;
    Edit6.Text:=Table1.FieldByname('unit').asstring;
    Edit7.Text:=FloatToStr(Table1.FieldByname('salary').asfloat);
    MaskEdit2.Text:=DateToStr(Table1.FieldByname('work_date').asdatetime);
    Edit8.Text:=Table1.FieldByname('duty').asstring;
    Edit9.Text:=Table1.FieldByname('speciality').asstring;
    Edit10.Text:=Table1.FieldByname('note').asstring;
    Edit11.Text:=Table1.FieldByname('operator').asstring;
    MaskEdit3.Text:=DateToStr(Table1.FieldByname('stamp').asdatetime);
end;
procedure TInfo_Form.SpeedButton2Click(Sender: TObject);
begin
    Initiate;
    edit1.SetFocus;
    new_type:=true;
end;

procedure TInfo_Form.Edit1Exit(Sender: TObject);
begin
    if new_type then
    begin
      Table1.setkey;
      Table1.FieldByName('number').asstring:=Edit1.Text;
      if Table1.GotoKey then
      begin
          Application.MessageBox('新建员工编号重复,请修改!','提示信息',mb_ok);
          Edit1.SetFocus;
      end;
    end;
end;

procedure TInfo_Form.Table1AfterScroll(DataSet: TDataSet);
begin
    if not new_type then
      LoadFromTable;
end;

procedure TInfo_Form.SpeedButton1Click(Sender: TObject);
begin
    if new_type then
        Table1.append;
    SaveToTable;
    new_type:=false;
    if table1.RecordCount>0 then
      speedbutton3.Enabled:=true;  
end;

procedure TInfo_Form.SpeedButton3Click(Sender: TObject);
begin
    Table1.delete;
    if table1.RecordCount<> 0 then
      Table1.first
    else
      SpeedButton3.Enabled:=false;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -