📄 queryemployeeunit.pas
字号:
unit queryemployeeunit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, StdCtrls, ExtCtrls, DBCtrls, ComCtrls, DB, ADODB;
type
Tfrm_queryemployee = class(TForm)
GroupBox1: TGroupBox;
Label5: TLabel;
Label2: TLabel;
Label1: TLabel;
Label11: TLabel;
Label9: TLabel;
Label3: TLabel;
Label12: TLabel;
Label4: TLabel;
eduLevel: TComboBox;
employeeName: TEdit;
sex: TComboBox;
address: TEdit;
tel: TEdit;
b_query: TButton;
b_clear: TButton;
GroupBox2: TGroupBox;
GroupBox3: TGroupBox;
employeeId: TEdit;
GroupBox4: TGroupBox;
DBNavigator1: TDBNavigator;
GroupBox8: TGroupBox;
b_modify: TButton;
b_del: TButton;
GroupBox6: TGroupBox;
asc: TRadioButton;
desc: TRadioButton;
GroupBox5: TGroupBox;
id: TRadioButton;
name: TRadioButton;
edu: TRadioButton;
join: TRadioButton;
GroupBox7: TGroupBox;
DBGrid1: TDBGrid;
folk: TComboBox;
lowbirth: TDateTimePicker;
highBirth: TDateTimePicker;
lowtime: TDateTimePicker;
hightime: TDateTimePicker;
q_employee: TADOQuery;
ds_employee: TDataSource;
procedure b_queryClick(Sender: TObject);
procedure b_clearClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ascClick(Sender: TObject);
procedure descClick(Sender: TObject);
procedure idClick(Sender: TObject);
procedure nameClick(Sender: TObject);
procedure eduClick(Sender: TObject);
procedure joinClick(Sender: TObject);
procedure b_modifyClick(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
private
{ Private declarations }
str:string;
function isint(s:string):boolean;
public
{ Public declarations }
end;
var
frm_queryemployee: Tfrm_queryemployee;
implementation
uses changeemployeeunit, datamoduleunit;
{$R *.dfm}
function tfrm_queryemployee.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;
result:=true;
end;
end;
procedure Tfrm_queryemployee.b_queryClick(Sender: TObject);
var s:string;
i:integer;
begin
s:='select * from employee';
i:=0;
if employeeid.Text<>'' then
begin
s:=s+' where 员工编号='''+employeeid.Text+'''';
i:=i+1;
end;
if employeename.Text<>'' then
begin
if i=0 then s:=s+' where 员工姓名='''+employeename.Text+''''
else s:=s+' and 员工姓名='''+employeename.Text+'''';
i:=i+1;
end;
if sex.Text<>'' then
begin
if i=0
then s:=s+' where 性别='''+sex.Text+''''
else s:=s+' and 性别='''+sex.Text+'''';
i:=i+1;
end;
if folk.Text<>''
then
begin
if i=0
then s:=s+' where 民族='''+folk.Text+''''
else s:=s+' and 民族='''+folk.Text+'''';
i:=i+1;
end;
if i=0 then s:=s+' where ' else s:=s+' and';
s:=s+' 生日>='''+datetostr(lowbirth.Date)+'''';
s:=s+' and 生日<='''+datetostr(highbirth.Date)+'''';
s:=s+' and 加盟时间>='''+datetostr(lowtime.Date)+'''';
s:=s+' and 加盟时间<='''+datetostr(hightime.Date)+'''';
i:=i+1;
if edulevel.Text<>'' then
begin
if i=0
then s:=s+' where 学历='''+edulevel.Text+''''
else s:=s+' and 学历='''+edulevel.Text+'''';
i:=i+1;
end;
if address.Text<>''
then
begin
if i=0
then s:=s+' where 地址='''+address.Text+''''
else s:=s+' and 地址='''+address.Text+'''';
i:=i+1;
end;
if tel.Text<>'' then
begin
if (isint(tel.Text)=false) or (length(tel.Text)>12) then
begin
showmessage('请添写正确的电话号码');
activecontrol:=tel;
exit;
end;
if i=0
then s:=s+' where 电话='''+tel.Text+''''
else s:=s+' and 电话='''+tel.Text+'''';
i:=i+1;
end;
q_employee.Close;
q_employee.SQL.Clear;
q_employee.SQL.Add(s);
try
q_employee.Open;
except
q_employee.ExecSQL;
end;
str:=s;
end;
procedure Tfrm_queryemployee.b_clearClick(Sender: TObject);
begin
employeeid.Text:='';
employeename.Text:='';
sex.Text:='';
folk.Text:='';
lowbirth.Date:=strtodate('1935-6-27');
highbirth.Date:=now;
lowtime.Date:=strtodate('1935-6-27');
hightime.Date:=now;
edulevel.Text:='';
address.Clear;
tel.Clear;
asc.Checked:=true;
id.Checked:=true;
activecontrol:=employeeid;
end;
procedure Tfrm_queryemployee.FormShow(Sender: TObject);
begin
frm_queryemployee.b_clearClick(nil);
end;
procedure Tfrm_queryemployee.ascClick(Sender: TObject);
var s:string;
col:string;
begin
s:=str;
if id.Checked then col:=' 员工编号'
else if name.Checked then col:=' 员工姓名'
else if edu.Checked then col:=' 学历'
else col:=' 加盟时间';
s:=s+' order by'+col+' asc';
q_employee.Close;
q_employee.SQL.Clear;
q_employee.SQL.Add(s);
try
q_employee.Open;
except
q_employee.ExecSQL;
end;
end;
procedure Tfrm_queryemployee.descClick(Sender: TObject);
var s:string;
col:string;
begin
s:=str;
if id.Checked then col:=' 员工编号'
else if name.Checked then col:=' 员工姓名'
else if edu.Checked then col:=' 学历'
else col:=' 加盟时间';
s:=s+' order by'+col+' desc';
q_employee.Close;
q_employee.SQL.Clear;
q_employee.SQL.Add(s);
try
q_employee.Open;
except
q_employee.ExecSQL;
end;
end;
procedure Tfrm_queryemployee.idClick(Sender: TObject);
var s:string;
x:string;
begin
if asc.Checked then x:=' asc' else x:=' desc';
s:=str;
s:=s+' order by 员工编号'+x;
q_employee.Close;
q_employee.SQL.Clear;
q_employee.SQL.Add(s);
try
q_employee.Open;
except
q_employee.ExecSQL;
end;
end;
procedure Tfrm_queryemployee.nameClick(Sender: TObject);
var s:string;
x:string;
begin
if asc.Checked then x:=' asc' else x:=' desc';
s:=str;
s:=s+' order by 员工姓名'+x;
q_employee.Close;
q_employee.SQL.Clear;
q_employee.SQL.Add(s);
try
q_employee.Open;
except
q_employee.ExecSQL;
end;
end;
procedure Tfrm_queryemployee.eduClick(Sender: TObject);
var s:string;
x:string;
begin
if asc.Checked then x:=' asc' else x:=' desc';
s:=str;
s:=s+' order by 学历'+x;
q_employee.Close;
q_employee.SQL.Clear;
q_employee.SQL.Add(s);
try
q_employee.Open;
except
q_employee.ExecSQL;
end;
end;
procedure Tfrm_queryemployee.joinClick(Sender: TObject);
var s:string;
x:string;
begin
if asc.Checked then x:=' asc' else x:=' desc';
s:=str;
s:=s+' order by 加盟时间'+x;
q_employee.Close;
q_employee.SQL.Clear;
q_employee.SQL.Add(s);
try
q_employee.Open;
except
q_employee.ExecSQL;
end;
end;
procedure Tfrm_queryemployee.b_modifyClick(Sender: TObject);
begin
frm_changeemployee:=tfrm_changeemployee.Create(self);
if sender=b_del then frm_changeemployee.b_modify.Visible:=false else frm_changeemployee.b_del.Visible:=false;
frm_changeemployee.ShowModal;
frm_changeemployee.Destroy;
end;
procedure Tfrm_queryemployee.DBGrid1DblClick(Sender: TObject);
begin
if b_modify.Enabled=false then exit;
frm_queryemployee.b_modifyClick(nil);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -