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

📄 u_addemp.pas

📁 中控800型号考勤机的自动采集数据程序。能够手动采集
💻 PAS
字号:
unit u_AddEMP;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, ADODB, Menus, cxLookAndFeelPainters, cxButtons;

type
  TFrm_AddEMP = class(TForm)
    Label1: TLabel;
    Label3: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    QryEMP: TADOQuery;
    Button4: TcxButton;
    Button5: TcxButton;
    procedure Edit3KeyPress(Sender: TObject; var Key: Char);
    procedure FormShow(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
  private
    aEditType: String;
    aEmpID: integer;
    aEmpName: string;
    aEmpCard: String;
    { Private declarations }
  function SaveData:boolean;
  function GetMaxEmpID:integer;
  public
    { Public declarations }
  property EditType: string read aEditType write aEditType;
  property EmpID: Integer read aEmpID write aEmpID;
  property EmpName: String read aEmpName write aEmpName;
  property EmpCard: String read aEmpCard write aEmpCard;
  end;

var
  Frm_AddEMP: TFrm_AddEMP;

implementation
uses u_DM;
{$R *.dfm}
function TFrm_AddEmp.GetMaxEmpID:integer;
begin
 with dm.temp do
 begin
  if active then close;
  sql.Text := 'select IsNULL(Max(EmpID),0) from employee';
  Open;
  Result := Fields[0].AsInteger +1;
  close;
 end;
end;
function TFrm_AddEmp.SaveData:boolean;
begin
 result := false;
 if EditType='Edit' then
 begin
  try
  with QryEmp do
  begin
   if active then close;
   SQL.Text := 'Update Employee set EmpName='''+trim(Edit2.Text)+''''+',CardNo='''+trim(Edit3.Text)+''''+' where EmpID='+trim(Edit1.Text);
   ExecSqL;
   result := true;
  end;
  except
   application.MessageBox('保存失败','提示',MB_ICONERROR+MB_OK);
   exit;
  end;
 end
 else
 begin
 try
  with QryEmp do
  begin
   if active then close;
   SQL.Text := 'Insert Employee(EmpID,EmpName,CardNo) values ('+trim(Edit1.Text)+','+''''+trim(Edit2.Text)+''''+','+''''+trim(Edit3.Text)+''''+')';
   ExecSqL;
   result := true;
  end;
  except
   application.MessageBox('保存失败','提示',MB_ICONERROR+MB_OK);
   exit;
  end;
 end;
end;
procedure TFrm_AddEMP.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
 if not (Key in ['0','1','2','3','4','5','6','7','8','9',#8,#46,#13]) then key := #0;
end;

procedure TFrm_AddEMP.FormShow(Sender: TObject);
begin
 if EditType='Insert' then
 Edit1.Text := IntToStr(GetMaxEmpID)
 else
 begin
  Edit1.Text := IntToStr(EmpID);
  Edit2.Text := EmpName;
  Edit3.Text := EmpCard;
 end;
end;

procedure TFrm_AddEMP.Button2Click(Sender: TObject);
begin
//ModalResult := MrOK;

end;

procedure TFrm_AddEMP.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ModalResult := MrOK;
 //Action := cafree;
end;

procedure TFrm_AddEMP.Button4Click(Sender: TObject);
begin
close;
end;

procedure TFrm_AddEMP.Button5Click(Sender: TObject);
begin
if Length(trim(Edit3.Text))<10 then
begin
 application.MessageBox('请补足卡号为十位!','提示',MB_OK) ;
 exit;
end;
if SaveData then
begin
 application.MessageBox('保存成功!','提示',MB_OK) ;
 if EditType='Insert' then
 begin
  edit1.Text := '';
  edit2.Text := '';
  edit3.Text := '';
  edit1.Text := IntToStr(GetMaxEmpID);
 end;
end;
end;

end.

⌨️ 快捷键说明

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