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

📄 add.~pas

📁 一个很好的企业内部人事管理系统,具有基本的框架和标准的结构,很容易改成具体的复杂的应用系统
💻 ~PAS
字号:
unit add;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  childwin, StdCtrls, DBCtrls, Mask, ExtCtrls;

type
  TF_add = class(TMDIChild)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    i_department: TDBLookupComboBox;
    i_job: TDBLookupComboBox;
    i_edu_level: TDBLookupComboBox;
    Button1: TButton;
    i_user: TDBEdit;
    i_name: TDBEdit;
    i_birthday: TDBEdit;
    i_specialty: TDBEdit;
    i_address: TDBEdit;
    i_tel: TDBEdit;
    i_email: TDBEdit;
    i_remark: TDBMemo;
    i_passwd: TEdit;
    i_sex: TDBRadioGroup;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
    procedure AddInit;
  public
    { Public declarations }
  end;

var
  F_add: TF_add;

implementation

uses DataModule, mainwin, crypt;

{$R *.DFM}

procedure TF_add.AddInit;
var
  counter:integer;
  id:String;
begin
  With DataModule1 do
  begin
    //生成员工号
    T_counter.Filter:='ID=''P''';
    T_counter.Filtered:=True;
    T_counter.Open;
    counter:=T_counter['COUNTER_VALUE'];
    T_counter.Close;
    id:='00000'+IntToStr(counter);
    id:='P'+Copy(id,length(id)-4,5);
    //增加新记录
    T_add_user.Open;
    T_add_user.Append;
    T_add_user['ID']:=id;
    T_add_user['SEX']:='M';
    i_passwd.Text:=id;
  end;
end;

procedure TF_add.FormCreate(Sender: TObject);
begin
  F_main.M_add.Enabled:=False;
  F_main.TB_add.Enabled:=False;
  Width:=272;
  Height:=469;
  With DataModule1 do
  begin
    if not T_department.Active then T_department.Open;
    if not T_job.Active then T_job.Open;
    if not T_edu_level.Active then T_edu_level.Open;
  end;
  AddInit;
end;

procedure TF_add.Button1Click(Sender: TObject);
var
  passwd:String;
  counter:Integer;
begin
  if length(i_name.Text)>0 then
  begin
    passwd:=i_passwd.Text;
    passwd:=Copy(passwd+passwd,1,10);
    passwd:=Encrypt(passwd,123);
    With DataModule1 do
    begin
      //累加员工编号计数器
      T_counter.Filter:='ID=''P''';
      T_counter.Filtered:=True;
      T_counter.Open;
      T_counter.Edit;
      T_counter['COUNTER_VALUE']:=T_counter['COUNTER_VALUE']+1;
      T_counter.Post;
      T_counter.Close;
      //增加员工个人信息记录
      T_add_user.Edit;
      T_add_user['PASSWD']:=passwd;
      T_add_user.Post;
      //获取人事变动记录号
      T_counter.Filter:='ID=''C''';
      T_counter.Filtered:=True;
      T_counter.Open;
      counter:=T_counter['COUNTER_VALUE'];
      Inc(counter);
      T_counter.Edit;
      T_counter['COUNTER_VALUE']:=counter;
      T_counter.Post;
      T_counter.Close;
      //追加人事变动记录
      T_change.Open;
      T_change.Append;
      T_change['ID']:=counter;
      T_change['PERSON']:=i_user.Text;
      T_change['CHANGE']:='2';
      T_change['RECORD_TIME']:=Now;
      T_change['DESCRIPTION']:='加入公司。';
      T_change.Post;
      T_change.Close;
    end;
    AddInit;
  end;
end;

procedure TF_add.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  inherited;
  F_main.M_add.Enabled:=True;
  F_main.TB_add.Enabled:=True;
  With DataModule1 do
  begin
    T_add_user.Cancel;
    T_add_user.Close;
  end;
end;

end.

⌨️ 快捷键说明

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