📄 unit1.~pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, ExtCtrls, DB, ADODB, XPMan, Mask;
type
TForm1 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
BitBtn1: TBitBtn;
ADOConnection1: TADOConnection;
RadioGroup1: TRadioGroup;
XPManifest1: TXPManifest;
ADOQuery1: TADOQuery;
GroupBox1: TGroupBox;
Label2: TLabel;
DateTimePicker1: TDateTimePicker;
Label1: TLabel;
Edit1: TEdit;
Edit2: TEdit;
UpDown1: TUpDown;
Time1: TMaskEdit;
CheckBox1: TCheckBox;
ADOQuery2: TADOQuery;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
var
t:shortstring;
i:integer;//s 员工tempid
begin
if length(edit1.text)<10 then
begin
messagebox(handle,'ID卡号位数不正确,请重新输入','提示',MB_OK+MB_ICONASTERISK);
Abort;
end;
if checkbox1.Checked then
begin
case RadioGroup1.ItemIndex of
0:
begin
t:=format(' 07:%.2d:00',[40 + Random(57-40)]);
end;
1:
begin
t:=format(' 12:%.2d:00',[01 + Random(18-01)]);
end;
2:begin
t:=format(' 12:%.2d:00',[31 + Random(53-31)]); //随机生成53-31之间的函数
end;
3:begin
t:=format(' 17:%.2d:00',[05 + Random(20-05)]);
end;
end;
end else
begin
if length(time1.text)<>4 then
begin
messagebox(handle,'时间不正确,请重新输入','提示',MB_OK+MB_ICONASTERISK);
Abort;
end;
t:=format(' %s:%s:00',[copy(Time1.Text,0,2),copy(Time1.Text,3,2)]);
end;
t:=FormatdateTime('ddddd',DateTimePicker1.date)+t;
if Messagebox(handle,pchar('您确定导入 '+#13#13#10+t+'这条数据吗?'),'提示',MB_OKCANCEL+MB_ICONASTERISK+MB_DEFBUTTON2)=idOk then
begin
if not ADOQuery2.Active then ADOQuery2.Open ;
if (ADOQuery2.Locate('CardNo',edit1.text,[])) then
i:=ADOQuery2.FieldValues['empid']
else
begin
Messagebox(handle,'系统中无该ID卡号,请检查','提示',MB_OK+MB_ICONASTERISK);
abort;
end;
with ADOQuery1 do
close;
sql.clear;
sql.add('insert into AttendPunch(DeviceID,NetID,EmpID,PunchTime,PunchNO) values(:a,:b,:c,:d,:e)');
parameters.parambyname('a').Value :=edit2.text;
parameters.parambyname('b').Value ::=2;
parameters.parambyname('c').Value ::=i;
parameters.parambyname('d').Value :=t;
parameters.parambyname('e').Value :=edit1.text;
execsql;
end;
Messagebox(handle,'数据导入成功!','提示',MB_OK+MB_ICONASTERISK);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
DateTimePicker1.Date:=now();
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -