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

📄 registeremployeeunit.pas

📁 Delphi 编写的"会员销售管理系统",源码全,数据库全,未经测试,请有兴趣的朋友自己测试!
💻 PAS
字号:
unit registeremployeeunit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, ExtCtrls, Grids, DBGrids, DB, ADODB;

type
  Tfrm_registeremployee = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    employeeid: TEdit;
    employeename: TEdit;
    sex: TRadioGroup;
    birthday: TDateTimePicker;
    jointime: TDateTimePicker;
    edulevel: TComboBox;
    tel: TEdit;
    address: TEdit;
    note: TEdit;
    folk: TComboBox;
    b_add: TButton;
    b_cancel: TButton;
    Label10: TLabel;
    DBGrid1: TDBGrid;
    GroupBox2: TGroupBox;
    GroupBox3: TGroupBox;
    inc: TRadioButton;
    desc: TRadioButton;
    id: TRadioButton;
    name: TRadioButton;
    edu: TRadioButton;
    time: TRadioButton;
    t_employee: TADOTable;
    q_employee: TADOQuery;
    ds_employee: TDataSource;
    t_counter: TADOTable;
    procedure b_cancelClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure b_addClick(Sender: TObject);
    procedure incClick(Sender: TObject);
    procedure descClick(Sender: TObject);
    procedure idClick(Sender: TObject);
    procedure nameClick(Sender: TObject);
    procedure eduClick(Sender: TObject);
    procedure timeClick(Sender: TObject);
  private
    { Private declarations }
    function isint(s:string):boolean;
  public
    { Public declarations }
  end;

var
  frm_registeremployee: Tfrm_registeremployee;

implementation
  uses datamoduleunit;
{$R *.dfm}
function tfrm_registeremployee.isint(s:string):boolean;
var i:integer;
begin
 i:=1;
 while i<=length(s) do
  begin
   if (ord(s[i])<48) or (ord(s[i])>57) then
    begin
     result:=false;
     exit;
    end;
    i:=i+1;
   end;
  result:=true;
 end;
procedure Tfrm_registeremployee.b_cancelClick(Sender: TObject);
var counter:integer;
begin
 t_counter.Close;
 t_counter.Open;
 counter:=t_counter.FieldValues['counter'];
 counter:=counter+1;
 employeeid.Text:=inttostr(counter);
 employeename.Clear;
 folk.ItemIndex:=0;
 edulevel.ItemIndex:=0;
 sex.ItemIndex:=0;
 tel.Clear;
 address.Text:='';
 birthday.Date:=strtodate('1983-6-27');
 jointime.Date:=now;
 note.Text:='';
 
end;

procedure Tfrm_registeremployee.FormShow(Sender: TObject);
begin
q_employee.Close;
try
 q_employee.Open;
 except
 q_employee.ExecSQL;
end;
frm_registeremployee.b_cancelClick(nil);
end;

procedure Tfrm_registeremployee.b_addClick(Sender: TObject);
var counter,rt:integer;
 ss:string;
begin
 if employeename.Text='' then
 begin
  messagedlg('员工姓名不能为空',mtwarning,[mbok],0);
  activecontrol:=employeename;
  exit;
  end;
 if folk.Text='请选择民族'then
  begin
  messagedlg('请选择民族',mtwarning,[mbok],0);
  activecontrol:=folk;
  exit;
  end;
 if folk.Text='请选择学历'then
  begin
  messagedlg('请选择学历',mtwarning,[mbok],0);
  activecontrol:=edulevel;
  exit;
  end;
 if (isint(tel.Text)=false) or (length(tel.Text)>12) then
 begin
  messagedlg('''电话号码输入错误!'',请重新输入',mtwarning,[mbok],0);
  activecontrol:=tel;
  exit;
  end;

 if address.Text='' then
 begin
  messagedlg('地址不能为空',mtwarning,[mbok],0);
  activecontrol:=address;
  exit;
  end;
 if note.Text='' then
 begin
  messagedlg('备注不能为空',mtwarning,[mbok],0);
  activecontrol:=note;
  exit;
  end;
 if (birthday.Date>jointime.Date) or (birthday.Date>now) or (jointime.Date>now)   then
  begin
   messagedlg('''生日''或''加盟时间''填写错误,请重新输入',mtwarning,[mbok],0);
   birthday.SetFocus;
   exit;
 end;
rt:=messagedlg('一条记录将录入数据库中,你确定要继续吗?',mtwarning,[mbyes,mbno],0);
 if rt=mrno then  exit;
   t_employee.Close;
   t_employee.Open;
   t_employee.Append;
   t_employee.FieldValues['员工编号']:=employeeid.Text;
   t_employee.FieldValues['员工姓名']:=employeename.Text;
   t_employee.FieldByName('民族').AsString:=folk.Text;
   if sex.ItemIndex=0 then ss:='男' else ss:='女';
   t_employee.FieldValues['性别']:=ss;
   t_employee.FieldValues['学历']:=edulevel.Text;
   t_employee.FieldValues['电话']:=tel.Text;
   t_employee.FieldValues['地址']:=address.Text;
   t_employee.FieldByName('生日').AsDateTime:=birthday.Date;
   t_employee.FieldByName('加盟时间').AsDateTime:=jointime.Date;
   t_employee.FieldValues['备注']:=note.Text;
   t_employee.Post;
   showmessage('已成功添加一条记录');
   t_counter.Open;
   t_counter.Edit;
   t_counter.FieldValues['counter']:=strtoint(employeeid.Text);
   t_counter.Post;
   t_counter.Close;
 t_employee.Close;
frm_registeremployee.FormShow(nil);
end;

procedure Tfrm_registeremployee.incClick(Sender: TObject);
var col:string;
begin
  if id.Checked then col:='员工编号' else
   if name.Checked then col:='员工姓名' else
    if edu.Checked then col:='学历' else
     if time.Checked then col:='加盟时间' else
      begin
       showmessage('请选择排序内容');
       exit;
      end;
   q_employee.Close;
   q_employee.SQL.Clear;
   q_employee.SQL.Add('select * from employee order by '+col+' asc');
   try
   q_employee.Open;
   except
   q_employee.ExecSQL;
   end;

end;

procedure Tfrm_registeremployee.descClick(Sender: TObject);
var col:string;
begin
  if id.Checked then col:='员工编号' else
   if name.Checked then col:='员工姓名' else
    if edu.Checked then col:='学历' else
     if time.Checked then col:='加盟时间' else
      begin
       showmessage('请选择排序内容');
       exit;
      end;
   q_employee.Close;
   q_employee.SQL.Clear;
   q_employee.SQL.Add('select * from employee order by '+col+' desc');
   try
   q_employee.Open;
   except
   q_employee.ExecSQL;
   end;

end;

procedure Tfrm_registeremployee.idClick(Sender: TObject);
var s:string;
begin
 if inc.Checked then s:=' asc' else if desc.Checked then s:=' desc' else
  begin
    showmessage('请选择排序的方法');
    exit;
  end;
  q_employee.Close;
  q_employee.SQL.Clear;
  q_employee.SQL.Add('select * from employee order by 员工编号'+s);
 try
  q_employee.Open;
 except
  q_employee.ExecSQL;
 end;

end;

procedure Tfrm_registeremployee.nameClick(Sender: TObject);
var s:string;
begin
 if inc.Checked then s:=' asc' else if desc.Checked then s:=' desc' else
  begin
    showmessage('请选择排序的方法');
    exit;
  end;
  q_employee.Close;
  q_employee.SQL.Clear;
  q_employee.SQL.Add('select * from employee order by 员工姓名'+s);
 try
  q_employee.Open;
 except
  q_employee.ExecSQL;
 end;

end;

procedure Tfrm_registeremployee.eduClick(Sender: TObject);
var s:string;
begin
 if inc.Checked then s:=' asc' else if desc.Checked then s:=' desc' else
  begin
    showmessage('请选择排序的方法');
    exit;
  end;
  q_employee.Close;
  q_employee.SQL.Clear;
  q_employee.SQL.Add('select * from employee order by 学历'+s);
 try
  q_employee.Open;
 except
  q_employee.ExecSQL;
 end;

end;

procedure Tfrm_registeremployee.timeClick(Sender: TObject);
var s:string;
begin
 if inc.Checked then s:=' asc' else if desc.Checked then s:=' desc' else
  begin
    showmessage('请选择排序的方法');
    exit;
  end;
  q_employee.Close;
  q_employee.SQL.Clear;
  q_employee.SQL.Add('select * from employee order by 加盟时间'+s);
 try
  q_employee.Open;
 except
  q_employee.ExecSQL;
 end;

end;

end.

⌨️ 快捷键说明

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