📄 mainformunit.pas
字号:
unit MainFormUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, jpeg, ExtCtrls, ComCtrls, StdCtrls, Menus,
ImgList, shellApi;
type
TMainForm = class(TForm)
MainMenu1: TMainMenu;
incumbencyMenu: TMenuItem;
IncumbencyAddRecord: TMenuItem;
IncumbencyChangeRecord: TMenuItem;
IncumbencyDelRecord: TMenuItem;
N6: TMenuItem;
IncumbencyReport: TMenuItem;
PresentMenu: TMenuItem;
PresentManger: TMenuItem;
PrsentFind: TMenuItem;
N4: TMenuItem;
PresentReport: TMenuItem;
LaborageMenu: TMenuItem;
LaborageSet: TMenuItem;
WorkerMonthLaborage: TMenuItem;
MonthLaborageTotal: TMenuItem;
N3: TMenuItem;
LaborageReport: TMenuItem;
AccountMenu: TMenuItem;
addAccount: TMenuItem;
DelAccount: TMenuItem;
ChangePurview: TMenuItem;
N2: TMenuItem;
ChangePwd: TMenuItem;
BakMenu: TMenuItem;
DataBak: TMenuItem;
DataR: TMenuItem;
HelpMenu: TMenuItem;
UseHelp: TMenuItem;
N1: TMenuItem;
AboutSystem: TMenuItem;
ExitMenu: TMenuItem;
FindPanel: TPanel;
FindGB: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
edtWorkerNO: TEdit;
BtNoFind: TButton;
CBOtherFind: TComboBox;
BtOtherFind: TButton;
edtOFT: TEdit;
TreeView1: TTreeView;
DataShowPanel: TPanel;
Image1: TImage;
DBGrid1: TDBGrid;
PopupMenu1: TPopupMenu;
ViewInformation: TMenuItem;
N5: TMenuItem;
ChangeData: TMenuItem;
DelData: TMenuItem;
ImageList1: TImageList;
N7: TMenuItem;
procedure TreeView1DblClick(Sender: TObject);
procedure BtNoFindClick(Sender: TObject);
procedure BtOtherFindClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure IncumbencyAddRecordClick(Sender: TObject);
procedure k(Sender: TObject);
procedure IncumbencyDelRecordClick(Sender: TObject);
procedure IncumbencyReportClick(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure IncumbencyChangeRecordClick(Sender: TObject);
procedure PresentMangerClick(Sender: TObject);
procedure DataBakClick(Sender: TObject);
procedure DataRClick(Sender: TObject);
procedure PrsentFindClick(Sender: TObject);
procedure PresentReportClick(Sender: TObject);
procedure addAccountClick(Sender: TObject);
procedure DelAccountClick(Sender: TObject);
procedure ChangePurviewClick(Sender: TObject);
procedure ChangePwdClick(Sender: TObject);
procedure ExitMenuClick(Sender: TObject);
procedure LaborageSetClick(Sender: TObject);
procedure WorkerMonthLaborageClick(Sender: TObject);
procedure MonthLaborageTotalClick(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure LaborageReportClick(Sender: TObject);
procedure UseHelpClick(Sender: TObject);
procedure AboutSystemClick(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MainForm: TMainForm;
implementation
uses DataMUnit, LoginFormUnit, AddWorkRecordUnit, ChangeRecordUnit,
WorkerReportUnit, PrsentFormUnit, DataBakUnit, ReDataUnit,
PrsentFindUnit, PrsentReportUnit, addAccountUnit, delAccountFormUnit,
ChangePurviewFormUnit, ChangePwdFormUnit, MoneySetUnit, MoneyTotalUnit,
MonthMoneyTotalUnit, MonthTotalaUnit, MonthMoneyFindFormUnit, AboutUnit;
{$R *.dfm}
procedure TMainForm.TreeView1DblClick(Sender: TObject);
var sel:integer;
begin
sel := treeView1.Selected.Index;
if DataM.ADOMSG.Active = true then
DataM.ADOMSG.Close;
DataM.ADOMSG.SQL.Clear;
if sel = 0 then
DataM.ADOMSG.SQL.Text:='select * from MSG'
else if sel = 1 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 职位 <> ''' + '离退员工' + ''''
else if sel = 2 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 职位 = ''' + '离退员工' + ''''
else if sel = 3 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 部门 = ''' + '人事部' + ''''
else if sel = 4 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 部门 = ''' + '财务部' + ''''
else if sel = 5 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 部门 = ''' + '供销部' + ''''
else if sel = 6 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 部门 = ''' + '研发部' + ''''
else if sel = 7 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 部门 = ''' + '后勤部' + ''''
else if sel = 8 then
DataM.ADOMSG.SQL.Text:='select * from MSG where 部门 = ''' + '调查部' + '''';
DataM.ADOMSG.Prepared;
DataM.ADOMSG.Open;
DBgrid1.Visible := true;
ShowMessage('共找到 '+IntToStr(DataM.ADOMSG.RecordCount)+' 条记录!');
end;
procedure TMainForm.BtNoFindClick(Sender: TObject);
begin
if edtWorkerNO.Text <> '' then
begin
if DataM.ADOMSG.Active = true then
DataM.ADOMSG.Close;
DataM.ADOMSG.SQL.Clear;
DataM.ADOMSG.SQL.Text:='select * from MSG where 员工编号 = ''' +edtWorkerNO.Text +'''';
DataM.ADOMSG.Prepared;
DataM.ADOMSG.Open;
DBGrid1.Visible:=true;
end
else
begin
MessageBox(0,'编号不能为空?','人事管理系统V2.0', MB_OK+MB_ICONWARNING);
edtWorkerNO.SetFocus;
end;
end;
procedure TMainForm.BtOtherFindClick(Sender: TObject);
begin
if edtOFT.Text <> '' then
begin
if DataM.ADOMSG.Active = true then
DataM.ADOMSG.Close;
DataM.ADOMSG.SQL.Clear;
DataM.ADOMSG.SQL.Text:='select * from MSG where ' + CBOtherFind.Text +' = ''' +edtOFT.Text +'''';
DataM.ADOMSG.Prepared;
DataM.ADOMSG.Open;
DBGrid1.Visible:=true;
end
else
begin
MessageBox(0,'查找内容不能为空?','人事管理系统V2.0', MB_OK+MB_ICONWARNING);
edtOFT.SetFocus;
end;
end;
procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
LoginForm.Close;
end;
procedure TMainForm.IncumbencyAddRecordClick(Sender: TObject);
begin
AddWorkRecord.Show;
end;
procedure TMainForm.k(Sender: TObject);
begin
ChangeRecord.show;
end;
procedure TMainForm.IncumbencyDelRecordClick(Sender: TObject);
var sel:integer;
begin
sel:=MessageBox(0,'确定要删除该记录吗?','人事管理系统V2.0', MB_YESNO+MB_ICONQUESTION);
if sel=IDYES then
begin
DataM.ADOMSG.Delete;
MessageBox(0,'成功删除记录!','人事管理系统V2.0', MB_YESNO+MB_ICONWARNING);
end;
end;
procedure TMainForm.IncumbencyReportClick(Sender: TObject);
begin
WorkerInfReport.QuickRep1.Preview;
end;
procedure TMainForm.DBGrid1DblClick(Sender: TObject);
begin
ChangeRecord.Show;
ChangeRecord.BTChangeData.Enabled:=false;
ChangeRecord.BtReSet.Enabled:=false;
end;
procedure TMainForm.IncumbencyChangeRecordClick(Sender: TObject);
begin
ChangeRecord.show;
end;
procedure TMainForm.PresentMangerClick(Sender: TObject);
begin
PrsentForm.Show;
end;
procedure TMainForm.DataBakClick(Sender: TObject);
begin
DataBakForm.Show;
end;
procedure TMainForm.DataRClick(Sender: TObject);
begin
ReDataForm.show;
end;
procedure TMainForm.PrsentFindClick(Sender: TObject);
begin
PrsentFindForm.show;
end;
procedure TMainForm.PresentReportClick(Sender: TObject);
begin
if DataM.ADOPrsent.Active = true then
DataM.ADOPrsent.Close;
DataM.ADOPrsent.SQL.Clear;
DataM.ADOPrsent.SQL.Text:='select * from Prsent';
DataM.ADOPrsent.Prepared;
DataM.ADOPrsent.Open;
PrsentFindReport.QuickRep1.Preview;
end;
procedure TMainForm.addAccountClick(Sender: TObject);
begin
addAccountForm.show;
end;
procedure TMainForm.DelAccountClick(Sender: TObject);
begin
delAccountForm.show;
end;
procedure TMainForm.ChangePurviewClick(Sender: TObject);
begin
ChangePurviewForm.show;
end;
procedure TMainForm.ChangePwdClick(Sender: TObject);
begin
ChangePwdForm.show;
end;
procedure TMainForm.ExitMenuClick(Sender: TObject);
begin
MainForm.Close;
end;
procedure TMainForm.LaborageSetClick(Sender: TObject);
begin
MoneySetForm.show;
end;
procedure TMainForm.WorkerMonthLaborageClick(Sender: TObject);
begin
MoneyTotalForm.Show;
end;
procedure TMainForm.MonthLaborageTotalClick(Sender: TObject);
begin
MonthMoneyTotal.Show;
end;
procedure TMainForm.N7Click(Sender: TObject);
begin
TotalaForm.show;
end;
procedure TMainForm.LaborageReportClick(Sender: TObject);
begin
MonthMoneyFindForm.show;
end;
procedure TMainForm.UseHelpClick(Sender: TObject);
var HelpFileName:string;
begin
Helpfilename:=ExtractFilePath(ParamStr(0)) + '帮助.txt';
if FileExists(Helpfilename) then
ShellExecute(handle,'Open', '/帮助.txt', NIL,NIL,SW_SHOWNORMAL)
else
showmessage('帮助文件找不到!');
end;
procedure TMainForm.AboutSystemClick(Sender: TObject);
begin
AboutForm.show;
end;
procedure TMainForm.N5Click(Sender: TObject);
begin
PrsentFindForm.edtNo.Text:=DataM.ADOMsg.FieldValues['员工编号'];
PrsentFindForm.edtName.Text := DataM.ADOMsg.FieldValues['员工姓名'];
PrsentFindForm.CBMonth.Text := '所有月份';
PrsentFindForm.BTfindClick(nil);
end;
procedure TMainForm.FormShow(Sender: TObject);
begin
if LoginForm.CBPurview.Text = '普通员工' then
begin
if DataM.ADOMSG.Active = true then
DataM.ADOMSG.Close;
DataM.ADOMSG.SQL.Clear;
DataM.ADOMSG.SQL.Text:='select * from MSG where 员工姓名 = ''' + LoginForm.edtAccount.Text +'''';
DataM.ADOMSG.Prepared;
DataM.ADOMSG.Open;
incumbencyMenu.Enabled :=false;
PresentManger.Enabled := false;
PresentReport.Enabled := false;
N7.Enabled := false;
MonthLaborageTotal.Enabled := false;
LaborageReport.Enabled := false;
addAccount.Enabled := false;
delAccount.Enabled := false;
ChangePurview.Enabled := false;
ChangePwd.Enabled := false;
ChangePwdForm.DBGrid1.Visible :=false;
BakMenu.Enabled :=false;
TreeView1.Enabled:=false;
FindGB.Enabled :=false;
PrsentFindForm.edtNo.Text := DATAM.ADOMsg.FieldValues['员工编号'];
PrsentFindForm.edtName.Text := DATAM.ADOMsg.FieldValues['员工姓名'];
PrsentFindForm.edtNo.Enabled := False;
PrsentFindForm.edtName.Enabled := false;
MoneyTotalForm.Edit1.Text := DATAM.ADOMsg.FieldValues['员工编号'];
MoneyTotalForm.Edit1.Enabled := false;
MoneyTotalForm.Edit2.Text := DATAM.ADOMsg.FieldValues['员工姓名'];
MoneyTotalForm.Edit2.Enabled := false;
end
else if LoginForm.CBPurview.Text = '总经理' then
begin
LaborageSet.Enabled:=true;
end
else if LoginForm.CBPurview.Text = '财务经理' then
begin
incumbencyMenu.Enabled :=false;
PresentManger.Enabled := false;
PresentReport.Enabled := false;
addAccount.Enabled := false;
delAccount.Enabled := false;
ChangePurview.Enabled := false;
ChangePwd.Enabled := false;
ChangePwdForm.DBGrid1.Visible :=false;
BakMenu.Enabled :=false;
TreeView1.Enabled:=false;
FindGB.Enabled :=false;
end
else if LoginForm.CBPurview.Text = '人事经理' then
begin
N7.Enabled := false;
MonthLaborageTotal.Enabled := false;
LaborageReport.Enabled := false;
addAccount.Enabled := false;
delAccount.Enabled := false;
ChangePurview.Enabled := false;
ChangePwd.Enabled := false;
end
else
begin
incumbencyMenu.Enabled :=false;
N7.Enabled := false;
MonthLaborageTotal.Enabled := false;
LaborageReport.Enabled := false;
addAccount.Enabled := false;
delAccount.Enabled := false;
ChangePurview.Enabled := false;
ChangePwd.Enabled := false;
BakMenu.Enabled :=false;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -