本系统开发的工具为:前台有Delphi,后台数据库SQL SERVER 2000数据库。
1.//登陆窗口(f_login;);代码。
unit w_login;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
Tf_login = class(TForm)
StaticText1: TStaticText;
gb_1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
ComboBox1: TComboBox;
Edit1: TEdit;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);
procedure ComboBox1Select(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_login: Tf_login;
s_name:string;
s_mima:string;
s_gb:string;
il:integer;
implementation
uses w_main, data1;
{$R *.dfm}
procedure Tf_login.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure Tf_login.BitBtn1Click(Sender: TObject);
begin
if combobox1.text='' then
begin
showmessage('请输入用户名!');
combobox1.SetFocus ;
exit;
end ;
if edit1.text='' then
begin
showmessage('请输入密码!');
edit1.SetFocus ;
exit;
end
else
begin
data_1.ado_tab.Close;
data_1.ado_tab.SQL.Clear;
data_1.ado_tab.SQL.Add('select* from username where name='+char(39)+trim(combobox1.Text )+char(39)
+'and password='+char(39)+trim(edit1.text)+char(39));
data_1.ado_tab.Open;
if data_1.ado_tab.RecordCount>0 then
begin
s_name:=trim(data_1.ado_tab.fieldbyname('name').AsString );
s_mima:=trim(data_1.ado_tab.fieldbyname('password').AsString );
s_gb:='yes';
f_main.show;
f_login.Hide ;
end
else
begin
il:=il+1;
if il>=3 then begin
application.MessageBox('你输入的密码有三次错误,返回系统!!',char(48));
f_login.Close;
end;
application.MessageBox('你输入的密码有误,请重新输入!!',char(48));
edit1.Text:='';
edit1.SetFocus ;
end;
end;
end;
procedure Tf_login.FormShow(Sender: TObject);
var
i:integer;
begin
combobox1.Text:='';
edit1.Text:='';
combobox1.Clear;
data_1.ado_tab.close;
data_1.ado_tab.SQL.Clear;
data_1.ado_tab.SQL.Add('select distinct name from username');
data_1.ado_tab.Open;
if data_1.ado_tab.RecordCount-1 >0 then
combobox1.Clear;
data_1.ado_tab.First;
for i:=0 to data_1.ado_tab.RecordCount-1 do
begin
combobox1.Items.add(trim(data_1.ado_tab.fieldbyname('name').AsString ));
data_1.ado_tab.Next;
end;
end;
procedure Tf_login.FormCreate(Sender: TObject);
begin
il:=0;
end;
procedure Tf_login.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
if key=char(13) then
if combobox1.Text<>'' then
begin
edit1.SetFocus ;
end
else
begin
showmessage('请选择用户名');
combobox1.SetFocus ;
end;
end;
procedure Tf_login.ComboBox1Select(Sender: TObject);
begin
if combobox1.Text<>'' then
begin
edit1.SetFocus ;
end
else
begin
showmessage('请选择用户名');
combobox1.SetFocus ;
end;
end;
procedure Tf_login.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if ord(key)=13 then
BitBtn1Click(sender);
end;
end.
2//用户管理(f_yhgl)
unit w_yhgl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, Buttons, DB, ADODB, Grids, DBGrids;
type
Tf_yhgl = class(TForm)
DBGrid1: TDBGrid;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
gb_1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
e_bh: TEdit;
c_xb: TComboBox;
e_password: TEdit;
e_user: TEdit;
gb_2: TGroupBox;
b_xz: TBitBtn;
b_xg: TBitBtn;
b_gb: TBitBtn;
b_qx: TBitBtn;
b_bc: TBitBtn;
b_sc: TBitBtn;
stb: TStatusBar;
ADOQuery1bh: TStringField;
ADOQuery1name: TStringField;
ADOQuery1password: TStringField;
ADOQuery1xb: TStringField;
procedure s_show;
procedure s_sava;
procedure s_clear(bb:boolean);
procedure FormShow(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure b_xzClick(Sender: TObject);
procedure b_gbClick(Sender: TObject);
procedure b_qxClick(Sender: TObject);
procedure b_scClick(Sender: TObject);
procedure b_bcClick(Sender: TObject);
procedure b_xgClick(Sender: TObject);
procedure e_bhKeyPress(Sender: TObject; var Key: Char);
procedure e_userKeyPress(Sender: TObject; var Key: Char);
procedure e_passwordKeyPress(Sender: TObject; var Key: Char);
procedure c_xbKeyPress(Sender: TObject; var Key: Char);
procedure c_xbSelect(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure DataSource1StateChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_yhgl: Tf_yhgl;
bsf:string;
implementation
{$R *.dfm}
procedure Tf_yhgl.s_clear(bb:boolean);
var
i:integer;
begin
b_xz.Enabled:=true;
b_xg.Enabled:=true;
b_sc.Enabled:=true;
b_bc.Enabled:=false;
b_qx.Enabled:=false;
b_gb.Enabled:=true;
e_bh.Text:='';
e_user.Text:='';
e_password.text:='';
c_xb.Text:='';
for i:=0 to gb_1.ControlCount-1 do begin
if (gb_1.Controls[i].ClassType=tedit) or (gb_1.Controls[i].ClassType=tcombobox) then
begin
if bb=false then
gb_1.Controls[i].Enabled :=false
else
gb_1.Controls[i].Enabled:=true;
end;
end;
end;
procedure Tf_yhgl.s_sava;
begin
adoquery1.edit;
adoquery1.fieldbyname('bh').AsString :=trim(e_bh.Text);
adoquery1.fieldbyname('name').asstring:=trim(e_user.Text);
adoquery1.fieldbyname('password').asstring:=trim(e_password.Text);
adoquery1.fieldbyname('xb').asstring:=trim(c_xb.Text);
adoquery1.post;
end;
procedure Tf_yhgl.s_show;
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from username');
adoquery1.Open;
end;
procedure Tf_yhgl.FormShow(Sender: TObject);
var
ss:boolean;
begin
s_show;
ss:=false;
s_clear(ss);
end;
procedure Tf_yhgl.DBGrid1CellClick(Column: TColumn);
var
vv:boolean;
begin
if adoquery1.RecordCount -1>0 then
begin
vv:=false;
s_clear(vv);
e_bh.Text :=trim(adoquery1.fieldbyname('bh').AsString);
e_user.Text:=trim(adoquery1.fieldbyname('name').AsString);
e_password.Text:=trim(adoquery1.fieldbyname('password').AsString);
c_xb.Text :=trim(adoquery1.fieldbyname('xb').AsString);
end;
end;
procedure Tf_yhgl.b_xzClick(Sender: TObject);
var
bb:boolean;
begin
bsf:='xz' ;
bb:=true;
s_clear(bb);
e_bh.SetFocus ;
b_xz.Enabled:=false;
b_xg.Enabled :=false;
b_bc.Enabled :=true;
b_sc.Enabled :=false;
b_qx.Enabled :=true;
b_gb.Enabled :=true;
end;
procedure Tf_yhgl.b_gbClick(Sender: TObject);
begin
close;
end;
procedure Tf_yhgl.b_qxClick(Sender: TObject);
var
ss:boolean;
begin
ss:=false;
s_clear(ss);
end;
procedure Tf_yhgl.b_scClick(Sender: TObject);
var
bb:boolean;
begin
if e_bh.Text<>'' then
begin
if MessageDlg('输入的数据是否真正的删除吗?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
adoquery1.Delete;
s_show;
bb:=false;
s_clear(bb);
end
else
exit
end
else
application.MessageBox('请双击删除数据',char(48));
end;
procedure Tf_yhgl.b_bcClick(Sender: TObject);
var
bb:boolean;
begin
if trim(e_bh.Text)='' then
begin
showmessage('请输入员工编号');
exit;
e_bh.SetFocus ;
end;
if bsf<>'xg' then
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.add('select * from username where bh='+char(39)+trim(e_bh.Text)+char(39));
adoquery1.Open;
end;
if adoquery1.RecordCount< 0 then
begin
application.MessageBox('请输入数据',char(48));
exit;
s_show;
end;
if trim(e_user.Text)='' then
begin
application.MessageBox('请输入员工姓名',char(48));
exit;
s_show;
e_user.SetFocus ;
end;
if trim(e_password.Text)='' then
begin
application.MessageBox('请输入员工密码',char(48));
exit;
s_show;
e_password.SetFocus;
end;
if trim(c_xb.Text)='' then
begin
application.MessageBox('请选择性别',char(48));
exit;
s_show;
end;
if MessageDlg('输入的数据是否保存记录?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
s_sava;
s_show;
bb:=false;
s_clear(bb);
end
else
s_show;
exit;
end;
procedure Tf_yhgl.b_xgClick(Sender: TObject);
var
i:integer;
begin
if trim(e_bh.Text)<>'' then
begin
bsf:='xg';
for i:=0 to gb_1.ControlCount-1 do begin
if (gb_1.Controls[i].ClassType =tedit) or(gb_1.Controls[i].ClassType =tcombobox) then
begin
gb_1.Controls[i].Enabled :=true;
b_xz.Enabled:=false;
b_xg.Enabled:=false;
b_bc.Enabled :=true;
b_sc.Enabled:=false;
b_qx.Enabled :=true;
b_gb.Enabled :=true;
end ;
end;
end
else
application.MessageBox('请选择修改的数据',char(39));
end;
procedure Tf_yhgl.e_bhKeyPress(Sender: TObject; var Key: Char);
begin
if key=char(13) then
if trim(e_bh.Text)<>'' then
begin
e_user.SetFocus;
end
else begin
application.MessageBox('请输入员工编号',char(48));
e_bh.SetFocus;
end;
end;
procedure Tf_yhgl.e_userKeyPress(Sender: TObject; var Key: Char);
begin
if key=char(13) then
if trim(e_user.Text)<>'' then
begin
e_password.SetFocus;
end
else begin
application.MessageBox('请输入用户名',char(48));
e_user.SetFocus;
end;
end;
procedure Tf_yhgl.e_passwordKeyPress(Sender: TObject; var Key: Char);
begin
if key=char(13) then
if trim(e_password.Text)<>'' then
begin
c_xb.SetFocus;
end
else begin
application.MessageBox('请输入员工密码',char(48));
e_password.SetFocus ;
end;
end;
procedure Tf_yhgl.c_xbKeyPress(Sender: TObject; var Key: Char);
begin
if key=char(13) then
if trim(c_xb.Text)<>'' then
begin
b_bc.SetFocus;
end
else begin
application.MessageBox('请选择员工性别',char(48));
c_xb.SetFocus ;
end;
end;
procedure Tf_yhgl.c_xbSelect(Sender: TObject);
begin
if trim(c_xb.Text)<>'' then
begin
b_bc.SetFocus;
end
else begin
application.MessageBox('请选择员工性别',char(48));
c_xb.SetFocus ;
end;
end;
procedure Tf_yhgl.DataSource1DataChange(Sender: TObject; Field: TField);
begin
stb.Panels[2].Text:=' 当前记录第'+inttostr(adoquery1.RecNo)+'条记录';
stb.Panels[1].Text:=' 记录共有'+inttostr(adoquery1.RecordCount)+'条记录'
end;
procedure Tf_yhgl.DataSource1StateChange(Sender: TObject);
begin
case DataSource1.State of
dsBrowse :stb.Panels.Items[0].Text:=' [浏览模式]';
dsEdit:stb.Panels.Items[0].Text:=' [编辑模式]';
dsInsert:stb.Panels.Items[0].Text:=' [插入模式]';
else stb.Panels.Items[0].Text:=' [其他模式]';
end;
end;
end.
3 .//修改密码(f_xgmm)程序代码;
unit w_xgmm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB;
type
Tf_xgmm = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
ADOQuery1: TADOQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_xgmm: Tf_xgmm;
implementation
uses data1, w_login;
{$R *.dfm}
procedure Tf_xgmm.Button1Click(Sender: TObject);
begin
if trim(edit1.Text)<>trim(s_mima) then
begin
showmessage('你输入的旧密码不正确,请重新输入!!');
end
else
begin
if trim(edit2.Text)<>trim(edit3.text) then
begin
showmessage('你输入的新密码不一致!!');
end
else
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('update username set password ='+char(39)+trim(edit2.text)+char(39)+
'where name='+char(39)+trim(s_name)+char(39));
adoquery1.ExecSQL ;
application.MessageBox('密码修改成功!!',chr(48)) ;
end;
end;
procedure Tf_xgmm.Button2Click(Sender: TObject);
begin
close;
end;
end.
4.//部门设置(f_dept) :
unit w_dept;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, Buttons;
type
Tf_dept = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
ADOQuery1: TADOQuery;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_dept: Tf_dept;
implementation
{$R *.dfm}
procedure Tf_dept.BitBtn1Click(Sender: TObject);
begin
if adoquery1.active then begin
if edit1.Text<>'' then
begin
adoquery1.Append;
adoquery1.fieldbyname('depa_id').AsString :=trim(edit1.Text);
adoquery1.fieldbyname('depa_name').AsString :=trim(edit2.Text);
adoquery1.Post;
showmessage('数据保存成功!!') ;
edit1.Text:='';
edit2.Text:='';
edit1.SetFocus ;
end;
end;
end;
procedure Tf_dept.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure Tf_dept.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=char(13) then
if trim(edit1.Text)<>'' then
begin
edit2.SetFocus;
end
else
begin
showmessage('请输入部门编号!');
edit1.SetFocus;
end;
end;
procedure Tf_dept.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key=char(13) then
if trim(edit2.Text)<>'' then
begin
bitbtn1.SetFocus;
end
else
begin
bitbtn1.SetFocus;
end;
end;
end.
5.工资查询(f_gzcx)
unit w_gzcx;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Grids, DBGrids, DB, ADODB, FR_Class, FR_DSet,
FR_DBSet;
type
Tf_gzcx = class(TForm)
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
Label16: TLabel;
Label17: TLabel;
Label1: TLabel;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
BitBtn9: TBitBtn;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn1: TBitBtn;
Edit21: TEdit;
ADOQuery1bh: TStringField;
ADOQuery1name: TStringField;
ADOQuery1SEX: TStringField;
ADOQuery1DEPA_ID: TStringField;
ADOQuery1B_SALARY: TIntegerField;
ADOQuery1WORKDAY: TIntegerField;
ADOQuery1addtime: TIntegerField;
ADOQuery1BUTIE: TIntegerField;
ADOQuery1FULI: TIntegerField;
ADOQuery1TEX: TIntegerField;
ADOQuery1KOUCHU: TIntegerField;
ADOQuery1JJ: TIntegerField;
ADOQuery1SJ: TIntegerField;
ADOQuery1BJ: TIntegerField;
ADOQuery1R_SALARY: TIntegerField;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
frDBDataSet1: TfrDBDataSet;
frReport1: TfrReport;
procedure ADOQuery1CalcFields(DataSet: TDataSet);
procedure BitBtn9Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_gzcx: Tf_gzcx;
bystr:string;
implementation
{$R *.dfm}
procedure Tf_gzcx.ADOQuery1CalcFields(DataSet: TDataSet);
begin
adoquery1.FieldByName('kouchu').Value :=adoquery1.fieldbyname('tex').Value+
(adoquery1.fieldbyname('b_salary').Value /adoquery1.fieldbyname('workday').Value) ;
adoquery1.FieldByName('r_salary').Value:=adoquery1.fieldbyname('b_salary').Value
+adoquery1.fieldbyname('butie').value+adoquery1.fieldbyname('fuli').value+
adoquery1.fieldbyname('addtime').value*(adoquery1.FieldByName('b_salary').Value/adoquery1.fieldbyname('workday').value)+
adoquery1.fieldbyname('jj').value-adoquery1.FieldByName('kouchu').Value ;
end;
procedure Tf_gzcx.BitBtn9Click(Sender: TObject);
begin
close;
end;
procedure Tf_gzcx.FormCreate(Sender: TObject);
begin
bystr:='bh';
end;
procedure Tf_gzcx.RadioButton1Click(Sender: TObject);
begin
if RadioButton1.Checked then
bystr:='bh'
else
bystr:='depa_id';
end;
procedure Tf_gzcx.BitBtn1Click(Sender: TObject);
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.sql.add('select * from empsalary order by '+bystr);
adoquery1.Open;
end;
procedure Tf_gzcx.RadioButton2Click(Sender: TObject);
begin
if RadioButton1.Checked then
bystr:='bh'
else
bystr:='depa_id';
end;
procedure Tf_gzcx.BitBtn7Click(Sender: TObject);
var
s,s1,s2,s3:string;
begin
s1:=combobox1.Text;
s2:=combobox2.text;
s3:=edit21.Text;
if s1='' then
begin
showmessage('请选择查询字段!');
end
else
begin
if s2='' then
begin
showmessage('请选择查询条件!');
end
else
begin
if s3='' then
begin
showmessage('请输入查询值!');
end
else
begin
s:='select * from empsalary where '+s1+s2+''''+s3+'''';
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(s);
adoquery1.Open;
showmessage('共找到'+inttostr(adoquery1.RecordCount)+'条记录')
end;
end;
end;
end;
procedure Tf_gzcx.BitBtn6Click(Sender: TObject);
begin
f_gzcx.frReport1.ShowReport ;
end;
end.
6.工资录入(f_gzrl)
unit w_gzrl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, StdCtrls, Mask, DBCtrls, ADODB, Buttons, ExtCtrls;
type
Tf_gzrl = class(TForm)
ADOQuery1: TADOQuery;
Label1: TLabel;
Label2: TLabel;
DBEdit1: TDBEdit;
DataSource1: TDataSource;
Label3: TLabel;
DBEdit2: TDBEdit;
Label4: TLabel;
DBEdit3: TDBEdit;
Label5: TLabel;
DBEdit4: TDBEdit;
Label6: TLabel;
DBEdit5: TDBEdit;
Label7: TLabel;
DBEdit6: TDBEdit;
Label8: TLabel;
DBEdit7: TDBEdit;
Label9: TLabel;
DBEdit8: TDBEdit;
Label10: TLabel;
DBEdit9: TDBEdit;
Label11: TLabel;
DBEdit10: TDBEdit;
Label12: TLabel;
DBEdit11: TDBEdit;
Label13: TLabel;
DBEdit12: TDBEdit;
Label14: TLabel;
DBEdit13: TDBEdit;
Label16: TLabel;
DBEdit14: TDBEdit;
Label17: TLabel;
DBEdit15: TDBEdit;
Bevel1: TBevel;
Button3: TButton;
Button2: TButton;
Button7: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button8: TButton;
Button1: TButton;
BitBtn1: TBitBtn;
Bevel2: TBevel;
Bevel3: TBevel;
Edit1: TEdit;
Edit2: TEdit;
ADOQuery1bh: TStringField;
ADOQuery1name: TStringField;
ADOQuery1SEX: TStringField;
ADOQuery1DEPA_ID: TStringField;
ADOQuery1B_SALARY: TIntegerField;
ADOQuery1WORKDAY: TIntegerField;
ADOQuery1addtime: TIntegerField;
ADOQuery1BUTIE: TIntegerField;
ADOQuery1FULI: TIntegerField;
ADOQuery1TEX: TIntegerField;
ADOQuery1KOUCHU: TIntegerField;
ADOQuery1JJ: TIntegerField;
ADOQuery1SJ: TIntegerField;
ADOQuery1BJ: TIntegerField;
ADOQuery1R_SALARY: TIntegerField;
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure ADOQuery1CalcFields(DataSet: TDataSet);
procedure Button1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_gzrl: Tf_gzrl;
implementation
{$R *.dfm}
procedure Tf_gzrl.Button2Click(Sender: TObject);
begin
dbedit1.text:='';
dbedit2.text:='';
dbedit3.text:='';
dbedit4.text:='';
dbedit5.text:='';
dbedit6.text:='';
dbedit7.text:='';
dbedit8.text:='';
dbedit9.text:='';
dbedit10.text:='';
dbedit11.text:='';
dbedit12.text:='';
dbedit13.text:='';
dbedit14.text:='';
dbedit15.text:='';
edit1.Text :='';
edit2.Text:='';
adoquery1.Append;
end;
procedure Tf_gzrl.Button3Click(Sender: TObject);
begin
adoquery1.Edit;
adoquery1.Post;
showmessage('数据修改成功!');
edit1.Text :='';
edit2.Text:='';
end;
procedure Tf_gzrl.Button7Click(Sender: TObject);
begin
if adoquery1.Modified then
adoquery1.Post;
end;
procedure Tf_gzrl.Button4Click(Sender: TObject);
begin
adoquery1.Prior;
edit1.Text :='';
edit2.Text:='';
end;
procedure Tf_gzrl.Button5Click(Sender: TObject);
begin
adoquery1.next;
edit1.Text :='';
edit2.Text:='';
end;
procedure Tf_gzrl.Button6Click(Sender: TObject);
begin
adoquery1.First;
showmessage('当前是第一条记录');
edit1.Text :='';
edit2.Text:='';
end;
procedure Tf_gzrl.Button8Click(Sender: TObject);
begin
adoquery1.Last;
showmessage('当前是最后一条记录');
edit1.Text :='';
edit2.Text:='';
end;
procedure Tf_gzrl.BitBtn1Click(Sender: TObject);
begin
close;
end;
procedure Tf_gzrl.ADOQuery1CalcFields(DataSet: TDataSet);
begin
adoquery1.FieldByName('kouchu').Value :=adoquery1.fieldbyname('tex').Value+
(adoquery1.fieldbyname('b_salary').Value /adoquery1.fieldbyname('workday').Value) ;
adoquery1.FieldByName('r_salary').Value:=adoquery1.fieldbyname('b_salary').Value
+adoquery1.fieldbyname('butie').value+adoquery1.fieldbyname('fuli').value+
adoquery1.fieldbyname('addtime').value*(adoquery1.FieldByName('b_salary').Value/adoquery1.fieldbyname('workday').value)+
adoquery1.fieldbyname('jj').value-adoquery1.FieldByName('kouchu').Value ;
end;
procedure Tf_gzrl.Button1Click(Sender: TObject);
begin
edit1.Text:=dbedit11.Text;
edit2.Text:=dbedit15.Text;
end;
procedure Tf_gzrl.FormShow(Sender: TObject);
begin
adoquery1.Refresh ;
edit1.Text:='';
edit2.Text:='';
end;
end.
7.主窗口(f_main)
unit w_main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, Menus, ToolWin, ExtCtrls, ImgList, DB, ADODB, FR_DSet,
FR_DBSet, FR_Class;
type
Tf_main = class(TForm)
MainMenu: TMainMenu;
mnuSet: TMenuItem;
mnuNewUser: TMenuItem;
mnuEditPass: TMenuItem;
mnuExit: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N8: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
mnuUser: TMenuItem;
mnuUserSet: TMenuItem;
mnuUserSetDepa: TMenuItem;
mnuUserSetPosi: TMenuItem;
N3: TMenuItem;
mnuUserInfo: TMenuItem;
mnuUserInfoNew: TMenuItem;
mnuUserInfoMan: TMenuItem;
mnuUserSal: TMenuItem;
mnuUserSalCom: TMenuItem;
mnuUserSalSearch: TMenuItem;
N4: TMenuItem;
mnuUserPx: TMenuItem;
mnuUserZpPlan: TMenuItem;
mnuUserPxPlan: TMenuItem;
N13: TMenuItem;
mnuUserSearch: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
stb_1: TStatusBar;
N1: TMenuItem;
N2: TMenuItem;
Timer1: TTimer;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ImageList2: TImageList;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure mnuEditPassClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure mnuNewUserClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure mnuUserSetDepaClick(Sender: TObject);
procedure mnuUserInfoNewClick(Sender: TObject);
procedure mnuUserSalComClick(Sender: TObject);
procedure mnuUserSalSearchClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure mnuUserZpPlanClick(Sender: TObject);
procedure mnuUserPxPlanClick(Sender: TObject);
procedure mnuUserInfoManClick(Sender: TObject);
procedure mnuUserSearchClick(Sender: TObject);
procedure mnuExitClick(Sender: TObject);
private
function whatweek:string;
{ Private declarations }
public
{ Public declarations }
end;
var
f_main: Tf_main;
implementation
uses w_xgmm, w_login, w_yhgl, w_dept, w_xzyg, w_gzrl, w_gzcx, data1,
w_zpinfo, w_pxinfo, w_yggl, Unit1, w_zhgl;
{$R *.dfm}
function tf_main.whatweek:string;
var
i_week:integer;
begin
i_week:=dayofweek(date());
case i_week of
1:result:='星期日';
2:result:='星期一';
3:result:='星期二';
4:result:='星期三';
5:result:='星期四';
6:result:='星期五';
7:result:='星期六'
end;
end;
procedure Tf_main.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if MessageDlg('真正关闭窗口吗?', mtConfirmation,[mbYes, mbNo], 0) = mrYes then
begin Action := caFree;
application.Terminate;
end
else
Action := caNone;
end;
procedure Tf_main.mnuEditPassClick(Sender: TObject);
begin
f_xgmm:=tf_xgmm.create(self);
f_xgmm.ShowModal;
end;
procedure Tf_main.N1Click(Sender: TObject);
begin
f_main.hide;
f_login.show;
end;
procedure Tf_main.N2Click(Sender: TObject);
begin
N2.Checked:=not N2.Checked;
if N2.Checked then
begin
self.AlphaBlend:=true;
self.AlphaBlendValue:=125;
end
else
self.AlphaBlend :=false;
end;
procedure Tf_main.mnuNewUserClick(Sender: TObject);
begin
f_yhgl:=tf_yhgl.create(self);
f_yhgl.showmodal;
end;
procedure Tf_main.Timer1Timer(Sender: TObject);
var
s_data,str1,str2:string;
begin
str1:=formatdatetime('yyyy/mm/dd/hh:mm',now());
str2:=' 今天是'+copy(str1,1,4)+'年'+copy(str1,6,2)+'月'+copy(str1,9,2)+'日 '+copy(str1,12,2)+':'+copy(str1,15,2) ;
s_data :=' '+str2+whatweek;
stb_1.Panels[0].Text:=s_data;
end;
procedure Tf_main.mnuUserSetDepaClick(Sender: TObject);
begin
f_dept:=tf_dept.create(self);
f_dept.ShowModal;
end;
procedure Tf_main.mnuUserInfoNewClick(Sender: TObject);
begin
f_xzyg:=tf_xzyg.create(self);
f_xzyg.showmodal;
end;
procedure Tf_main.mnuUserSalComClick(Sender: TObject);
begin
f_gzrl:=tf_gzrl.create(self);
f_gzrl.show;
end;
procedure Tf_main.mnuUserSalSearchClick(Sender: TObject);
begin
f_gzcx:=tf_gzcx.create(self);
f_gzcx.show;
end;
procedure Tf_main.ToolButton1Click(Sender: TObject);
begin
data_1.frReport1.ShowReport;
end;
procedure Tf_main.ToolButton2Click(Sender: TObject);
begin
data_1.frReport2.ShowReport ;
end;
procedure Tf_main.ToolButton3Click(Sender: TObject);
begin
data_1.frReport3.ShowReport ;
end;
procedure Tf_main.ToolButton4Click(Sender: TObject);
begin
data_1.frReport4.ShowReport ;
end;
procedure Tf_main.mnuUserZpPlanClick(Sender: TObject);
begin
f_zpinfo:=tf_zpinfo.create(self);
f_zpinfo.show;
end;
procedure Tf_main.mnuUserPxPlanClick(Sender: TObject);
begin
f_pxinfo:=tf_pxinfo.create(self);
f_pxinfo.show;
end;
procedure Tf_main.mnuUserInfoManClick(Sender: TObject);
begin
form1.show;
end;
procedure Tf_main.mnuUserSearchClick(Sender: TObject);
begin
f_zhgl:=tf_zhgl.create(self);
f_zhgl.show;
end;
procedure Tf_main.mnuExitClick(Sender: TObject);
begin
application.Terminate;
end;
end.
8.综合查询(f_zhcx)程序代码:
unit w_zhgl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Grids, DBGrids, ADODB, ComCtrls, StdCtrls, Buttons;
type
Tf_zhgl = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
ADOQuery2: TADOQuery;
DataSource2: TDataSource;
ComboBox1: TComboBox;
Edit1: TEdit;
ComboBox2: TComboBox;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Edit3: TEdit;
Label7: TLabel;
Edit4: TEdit;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
b_fanhui1: TBitBtn;
ADOQuery2bh: TStringField;
ADOQuery2name: TStringField;
ADOQuery2sex: TStringField;
ADOQuery2birthday: TDateTimeField;
ADOQuery2depa_id: TStringField;
ADOQuery2job: TStringField;
ADOQuery2nation: TStringField;
ADOQuery2zzmm: TStringField;
ADOQuery2b_salary: TFloatField;
ADOQuery2work_time: TIntegerField;
ADOQuery2memo: TStringField;
ADOQuery1ZP_ID: TStringField;
ADOQuery1TIME: TDateTimeField;
ADOQuery1DEPA_NAME: TStringField;
ADOQuery1MAN: TIntegerField;
ADOQuery1xueli: TStringField;
Button1: TButton;
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_zhgl: Tf_zhgl;
implementation
{$R *.dfm}
procedure Tf_zhgl.BitBtn4Click(Sender: TObject);
begin
close;
end;
procedure Tf_zhgl.BitBtn3Click(Sender: TObject);
var
ss:string;
begin
ss:='';
if combobox1.Text+edit3.Text+edit4.Text='' then
begin
application.MessageBox('您没有输入查询条件!!','提示',MB_ok+MB_ICONINFORMATION);
end
else
begin
if combobox1.Text<>'' then
ss:=ss+'and DEPA_NAME='+''''+combobox1.Text+'''';
if edit3.Text <>'' then
ss:=ss+'and ZP_ID='+''''+edit3.Text+'''';
if edit4.Text<>'' then
ss:=ss+'and man='+''''+edit4.Text+'''';
ss:='select * from zpinfo where 1=1'+ss;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(ss);
adoquery1.Open;
if adoquery1.RecordCount=0 then begin
application.MessageBox('没有符合要求查询条件,请重新输入!','提示',MB_ok+MB_ICONINFORMATION);
end;
end ;
end;
procedure Tf_zhgl.BitBtn1Click(Sender: TObject);
var
ss:string;
begin
ss:='';
if edit1.Text+combobox2.Text+edit2.Text='' then
begin
application.MessageBox('没有输入查询条件!!','提示',MB_ok+MB_ICONINFORMATION);
end
else
begin
if edit1.Text<>'' then
ss:=ss+'and bh='+''''+edit1.Text+'''';
if combobox2.text<>'' then
ss:=ss+'and depa_id='+''''+combobox2.Text+'''';
if edit2.Text<>'' then
ss:=ss+'and name='+''''+edit2.Text+'''';
ss:='select * from empinfo where 1=1'+ss ;
adoquery2.Close;
adoquery2.SQL.Clear ;
adoquery2.SQL.Add(ss);
adoquery2.Open;
if adoquery2.RecordCount=0 then begin
showmessage('您输入的条件不符合条件,请重新输入!!');
end;
end;
end;
procedure Tf_zhgl.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure Tf_zhgl.BitBtn5Click(Sender: TObject);
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from zpinfo ');
adoquery1.Open ;
end;
procedure Tf_zhgl.Button1Click(Sender: TObject);
begin
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('select * from empinfo ');
adoquery2.Open ;
end;
end.