📄 baseimformationmanager.pas
字号:
unit BaseImformationManager;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, Mask, ExtCtrls, Grids, DBGrids, DB, ADODB,
ComCtrls;
type
TForm4 = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label12: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit6: TEdit;
Edit9: TEdit;
Edit11: TEdit;
Button3: TButton;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
Button4: TButton;
Button5: TButton;
ComboBox3: TComboBox;
GroupBox1: TGroupBox;
Button7: TButton;
Button2: TButton;
Button6: TButton;
ComboBox4: TComboBox;
Label13: TLabel;
Label11: TLabel;
ComboBox5: TComboBox;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
StatusBar1: TStatusBar;
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button6Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
private
{ Private declarations }
public
procedure PutData;
procedure AlterData(Sender: TObject);
procedure deldata(Sender: TObject);
procedure InputClear;
procedure LuckAltKey;
{ Public declarations }
end;
var
Form4: TForm4;
implementation
uses WelcomePicture, MainMenu, LoginDailog;
{$R *.dfm}
procedure TForm4.Button2Click(Sender: TObject);
begin
with Form1.adoquery1 do
begin
close;
sql.clear;
sql.add('select * from employees');
if form1.ADOQuery1.Active=false then
form1.ADOQuery1.Active:=true;
open; //youfanhui
InputClear;
end;
end;
procedure TForm4.Button4Click(Sender: TObject);
begin
dbgrid1.ReadOnly:=true;
AlterData(Sender);
InputClear;
self.Button3.Enabled:=true;
self.Button4.Enabled:=false;
showmessage('数据修改成功!');
if form2.user_name<>'adm' then
begin
// inputString:=form2.worker_no;
//zxcv('员工编号',inputString);
with form1.adoquery1 do
begin
close;
sql.Clear;
sql.add('select * from employees where 员工编号=:员工编号');
parameters[0].Value:=form2.worker_no;
// sql.add('select * from employees where 员工编号 :='+inputString);
form1.ADOQuery1.Active:=true;
execsql;
exit;
end;
end;
if form2.user_name='adm' then
begin
with Form1.adoquery1 do
begin
close;
sql.clear;
sql.add('select * from employees');
if form1.ADOQuery1.Active=false then
form1.ADOQuery1.Active:=true;
open; //youfanhui
exit;
end;
end;
end;
procedure TForm4.Button5Click(Sender: TObject);
begin
form4.close;
InputClear;
self.Button3.Enabled:=true;
self.Button4.Enabled:=false;
end;
procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);
begin
form1.ADOQuery1.SQL.Clear;
form3.Enabled:=true;
end;
procedure TForm4.Button6Click(Sender: TObject);
var
chk_no:String[5];
begin
//showmessage('请填入所增加员工所有信息!');
if
(edit1.Text='') or
(edit2.Text='') or
(edit3.Text='')or
(edit4.Text='') or
(combobox1.Text='') or
(edit6.Text='') or
(edit11.Text='' ) or
(combobox2.Text='' )or
(edit9.Text='') or
(combobox5.Text='') or
(combobox4.Text='') or
(combobox3.Text='') then
begin
showmessage('你所输入数据不足,增加员工操作失败!');
exit;
end;
//////检测员工号有无重复
form1.ADOTable1.Active:=false; ////异常重要的一句话
form1.ADOTable1.TableName:='employees';
form1.ADOTable1.Active:=true;
chk_no:=edit1.Text;
if form1.adotable1.Locate('员工编号',chk_no,[]) then
begin
showmessage('你所输入的新员工号错误,增加员工操作失败!');
exit;
end;
//////////////////////////
with Form1.adoquery1 do
begin
close;
sql.Clear;
sql.add('insert into employees(员工编号,部门名称,工作证号,姓名,性别,民族,籍贯,政治面貌,办公电话,出生年,出生月,员工状态)values(:员工编号,:部门名称, :工作证号, :姓名, :性别, :民族, :籍贯, :政治面貌, :办公电话, :出生年,:出生月,:员工状态) ');
parameters[0].Value:=chk_no;
parameters[3].Value:=edit2.Text;
parameters[1].Value:=edit3.Text;
parameters[2].Value:=edit4.Text;
parameters[4].Value:=combobox1.Text;
parameters[5].Value:=edit6.Text;
parameters[6].Value:=edit11.Text;
parameters[7].Value:=combobox2.Text;
parameters[8].Value:=edit9.Text;
parameters[9].Value:=combobox4.Text;
parameters[10].Value:=combobox5.Text;
parameters[11].Value:=combobox3.Text;
execsql;
close;
sql.Clear;
sql.Add('select * from employees');
// if form1.ADOQuery1.Active=false then
// form1.ADOQuery1.Active:=true;
open;
messageBeep(0);
end;
InputClear;
Button3.Enabled:=true;
Button4.Enabled:=true;
showmessage('增加员工资料操作成功!');
end;
procedure TForm4.FormShow(Sender: TObject);
var
inputString:String;
begin
form1.ADOQuery1.SQL.Clear;
self.Button4.Enabled:=false;
if form2.user_name='adm' then
begin
self.Button7.Enabled:=true;
self.Button6.Enabled:=true;
self.Button2.Enabled:=true;
end;
///不是管理员的情况下
if form2.user_name<>'adm' then
begin
self.Button7.Enabled:=false;
self.Button6.Enabled:=false;
self.Button2.Enabled:=false;
end;
if form2.user_name<>'adm' then
begin
inputString:=form2.worker_no;
//zxcv('员工编号',inputString);
with form1.adoquery1 do
begin
close;
sql.Clear;
sql.add('select * from employees where 员工编号=:员工编号');
parameters[0].Value:=inputString;
// sql.add('select * from employees where 员工编号 :='+inputString);
form1.ADOQuery1.Active:=true;
execsql;
exit;
end;
end;
if form2.user_name='adm' then
begin
with Form1.adoquery1 do
begin
close;
sql.clear;
sql.add('select * from employees');
if form1.ADOQuery1.Active=false then
form1.ADOQuery1.Active:=true;
open; //youfanhui
exit;
end;
end;
end;
procedure TForm4.Button7Click(Sender: TObject);
begin
//inputString:=inputbox('删除数据','请输入员工的编号','');
if (self.DBGrid1.FieldCount<>0) and
(MessageDlg('确认要删除 '+self.DBGrid1.Fields[3].AsString+' 记录吗?',mtConfirmation,[mbOK,mbCancel],0)=mrOK) then
self.deldata(Sender);
InputClear;
Button3.Enabled:=false;
end;
procedure TForm4.PutData;
begin
self.Edit1.Text:=self.DBGrid1.Fields[0].AsString;
self.Edit2.Text:=self.DBGrid1.Fields[3].AsString;
self.Edit3.Text:=self.DBGrid1.Fields[1].AsString;
self.Edit4.Text:=self.DBGrid1.Fields[2].AsString;
combobox1.Text:=self.DBGrid1.Fields[4].AsString;
edit6.Text:=self.DBGrid1.Fields[5].AsString;
edit11.Text:=self.DBGrid1.Fields[6].AsString;
combobox2.Text:=self.DBGrid1.Fields[7].AsString;
edit9.Text:=self.DBGrid1.Fields[8].AsString;
combobox4.Text:=self.DBGrid1.Fields[9].AsString;
combobox5.Text:=self.DBGrid1.Fields[10].AsString;
combobox3.Text:=self.DBGrid1.Fields[11].AsString;
end;
procedure TForm4.Button3Click(Sender: TObject);
begin
if (self.DBGrid1.FieldCount<>0) and
(MessageDlg('你想要修改 '+self.DBGrid1.Fields[3].AsString+' 记录吗?',mtConfirmation,[mbOK,mbCancel],0)=mrOK) then
begin
self.PutData;
LuckAltKey;
end;
end;
procedure TForm4.AlterData(Sender: TObject);
begin
//self.Button7Click;
self.deldata(Sender);
{with Form1.adoquery1 do
begin
close;
sql.Clear;
sql.add('delete from employees where 员工编号=:员工编号');
parameters[0].Value:=edit1;
execsql;
close;
sql.Clear;
sql.Add('select * from employees');
if form1.ADOQuery1.Active=false then
form1.ADOQuery1.Active:=true;
open;
messageBeep(0);
end; }
with Form1.adoquery1 do
begin
close;
sql.Clear;
sql.add('insert into employees(员工编号,部门名称,工作证号,姓名,性别,民族,籍贯,政治面貌,办公电话,出生年,出生月,员工状态)values(:员工编号,:部门名称, :工作证号, :姓名, :性别, :民族, :籍贯, :政治面貌, :办公电话,:出生年,:出生月,:员工状态) ');
//sql.add('update employees(员工编号,部门名称,工作证号,姓名,性别,民族,籍贯,政治面貌,办公电话,出生日期,员工状态)set (:员工编号,:部门名称, :工作证号, :姓名, :性别, :民族, :籍贯, :政治面貌, :办公电话, :出生日期,:员工状态) ');
//sql.add('update employees set (:员工编号,:部门名称, :工作证号, :姓名, :性别, :民族, :籍贯, :政治面貌, :办公电话, :出生日期,:员工状态) ');
parameters[0].Value:=edit1.Text;
parameters[3].Value:=edit2.Text;
parameters[1].Value:=edit3.Text;
parameters[2].Value:=edit4.Text;
parameters[4].Value:=combobox1.Text;
parameters[5].Value:=edit6.Text;
parameters[6].Value:=edit11.Text;
parameters[7].Value:=combobox2.Text;
parameters[8].Value:=edit9.Text;
parameters[9].Value:=combobox4.Text;
parameters[10].Value:=combobox5.Text;
parameters[11].Value:=combobox3.Text;
execsql;
close;
sql.Clear;
if form2.user_name='adm' then
begin
sql.Add('select * from employees');
if form1.ADOQuery1.Active=false then
form1.ADOQuery1.Active:=true;
open;
messageBeep(0); end;
end;
end;
procedure TForm4.deldata(Sender: TObject);
var
inputString:String;
begin
inputString:=self.DBGrid1.Fields[0].AsString;
with Form1.adoquery1 do
begin
close;
sql.Clear;
sql.add('delete from employees where 员工编号=:员工编号');
parameters[0].Value:=inputString;
execsql;
close;
sql.Clear;
sql.Add('select * from employees');
if form1.ADOQuery1.Active=false then
form1.ADOQuery1.Active:=true;
open;
messageBeep(0);
end;
end;
procedure TForm4.InputClear;
begin
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
combobox1.Text:='(请选择)';
edit6.Text:='';
edit11.Text:='';
combobox2.Text:='(请选择)';
edit9.Text:='';
combobox4.Text:='(请选择)';
combobox5.Text:='1';
combobox3.Text:='(请选择)';
end;
procedure TForm4.LuckAltKey;
begin
self.Button3.Enabled:=false;
self.Button4.Enabled:=true;
end;
procedure TForm4.DBGrid1DblClick(Sender: TObject);
begin
Button3Click(Sender);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -