C++ 人事管理系统.docx

上传人:b****3 文档编号:4741624 上传时间:2022-12-08 格式:DOCX 页数:27 大小:733.46KB
下载 相关 举报
C++ 人事管理系统.docx_第1页
第1页 / 共27页
C++ 人事管理系统.docx_第2页
第2页 / 共27页
C++ 人事管理系统.docx_第3页
第3页 / 共27页
C++ 人事管理系统.docx_第4页
第4页 / 共27页
C++ 人事管理系统.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

C++ 人事管理系统.docx

《C++ 人事管理系统.docx》由会员分享,可在线阅读,更多相关《C++ 人事管理系统.docx(27页珍藏版)》请在冰豆网上搜索。

C++ 人事管理系统.docx

C++人事管理系统

目录

摘要1

1设计目的2

2设计需求3

2.1主界面3

2.2设计概述3

2.3数据库表4

2.4数据库及数据表的设计5

3运行界面及使用说明11

4主要程序16

4.1登入模块源程序16

4.2录入编辑模块源程序17

4.3查询模块源程序19

4.4统计模块源程序20

4.5管理员账号管理模块源程序22

4.6档案备份模块源程序22

4.7档案还原模块源程序23

5总结25

参考资料26

摘要

人事档案管理是现代社会的企业、工厂、政府部门等都需要进行的一个人事管理。

为方便人事档案管理,我们设计开发出了能在计算机上运行来进行人事档案管理的系统。

该人事档案管理系统的总体设计目的是:

在数据库和VisualC++6.0的发平台上,开发出一个能扩充的、具备良好人机交互界面的人事档案管理系统,以实现机关、企业、事业等对人事档案的计算机管理,同时为人事档案管理提供准确、迅速的档案信息。

本系统采用VisualC++6.0作为开发平台,应用Access文档为数据库,使用ODBC及ADO控件链接数据库的方法进行系统设计。

该人事档案管理系统具备的基本功能包括档案的录入编辑、查询、统计、档案备份、档案还原和管理员的帐号管理等几个方面。

关键字:

人事档案管理VisualC++6.0数据库

1设计目的

该人事档案管理系统的总体设计目的是:

在数据库和VisualC++6.0的发平台上,开发出一个能扩充的、具备良好人机交互界面的人事档案管理系统,以实现机关、企业、事业等对人事档案的计算机管理,同时为人事档案管理提供准确、迅速的档案信息。

本系统采用VisualC++6.0作为开发平台,应用Access文档为数据库,使用ODBC及ADO控件链接数据库的方法进行系统设计。

该人事档案管理系统具备的基本功能包括档案的录入编辑、查询、统计、档案备份、档案还原和管理员的帐号管理等几个方面。

2设计需求

该人事档案管理系统具备的基本功能包括档案的录入编辑、查询、统计、档案备份、档案还原和管理员的帐号管理等几个方面。

2.1主界面

进入系统后的系统主界面如图2-1所示:

欢迎进入人事档案管理系统

管理员名:

口令:

 

录入与编辑

查询

统计

账号管理

数据库备份

数据库还原

退出

 

图2-1主界面示意图

2.2设计概述

该系统能实现人事管理的基本功能。

包括进行代码表及个人档案信息的录入编辑、进行上一条及下一条档案信息的显示、按照档案表的形式显示实现按姓名或职工号查询个人档案信息、实现按照文化程度、性别、职称进行档案简单信息的列表显示与统计相关人数,而且还增加了对档案的备份功能和还原功能以及管理员对帐号的管理功能。

系统功能结构图如图2-2所示:

图2-2系统功能结构图

2.3数据库表

由于本系统所需的数据信息量不多,结构也不复杂,因此我们选用了较为简单易行的Access数据库而不选择相对复杂的SQL数据库。

该系统设计所需的数据库表如下:

表名:

m_dadj(档案登记表)

序号

字段名

说明

类型

长度

是否为空

是否主键值

相关表

备注

1

zgbm

职工编码

VC2

6

Notnull

key

2

xm

姓名

VC2

12

Notnull

3

xb

性别

VC2

1

null

4

mz

民族

VC2

18

null

5

csny

出生年月

Date

8

null

6

hyzk

婚姻状况

VC2

1

null

7

whcd

文化程度编码

NUMBER

2

null

bm_wh

8

jkzk

健康状况

VC2

10

null

9

zzmm

政治面貌

VC2

2

null

10

zcbm

职称编码

NUMBER

2

null

bm_zc

11

jg

籍贯

VC2

60

null

12

sfzh

身份证号码

VC2

20

null

13

byxx

毕业学校

VC2

40

null

14

zytc

专业或特长

VC2

40

null

15

hkszd

户口所在地

VC2

60

null

16

hkxz

户口性质

VC2

20

null

17

xzz

现住址

VC2

100

null

18

zw

职务

NUMBER

2

null

19

gzm

工种名

VC2

2

null

20

jspx

何时技术培训

VC2

400

null

21

jlcf

何时奖励和处分

VC2

400

null

22

smwt

需要说明问题

VC2

200

null

23

tbrqm

填表人签名

VC2

10

null

24

tbrq

填表日期

date

null

25

gsyj

公司审查意见

VC2

200

null

26

scrq

审查日期

date

null

27

ryxz

人员性质

C

1

null

28

rcsj

入厂时间

date

29

ryzt

人员状态

C

1

null

30

bz

备注

VC2

40

null

31

bmbm

部门编码

VC2

4

null

bm_bm

表名:

cygx(主要成员与社会关系表)

序号

字段名

说明

类型

长度

是否为空

是否主键值

相关表

备注

1

zgbm

职工编码

VC2

6

Notnull

Key&Foreignkey

m_dadj

2

Brgx

与本人关系

VC2

10

null

3

xm

姓名

VC2

10

Null

4

hzgz

从事何种工作

VC2

60

Null

6

autoid

主键

VC2

2

key

表名:

bm_zc(职称编码表)

序号

字段名

说明

类型

长度

是否为空

是否键值

相关表

备注

1

zcbm

职称编码

NUMBER

2

Notnull

Key

2

zcmc

职称名称

VC2

20

Notnull

表名:

bm_bm(部门编码表)

序号

字段名

说明

类型

长度

是否为空

是否键值

相关表

备注

1

bmbm

部门编码

VC2

4

Notnull

Key

2

bmm

部门名

VC2

60

Null

表名:

bm_wh(文化程度编码表)

序号

字段名

说明

类型

长度

是否为空

是否键值

相关表

备注

1

whbm

文化程度编码

NUMBER

2

Notnull

Key

2

whcd

文化程度名称

VC2

16

Notnull

2.4数据库及数据表的设计

该设计建立的数据库命名为Demo01.mdb,以下是在数据库设计过程中的部分视图:

 

图2-3数据库列表视图

 

图2-4部门表设计视图

 

图2-5文化程度表设计视图

 

图2-6职称表设计视图

 

图2-7主要关系表设计视图

 

图2-8档案登记表设计视图

 

图2-9帐户表设计视图

图2-10各个表之间的关系图

3运行界面及使用说明

经测试,该系统的登陆、录入编辑、查询、统计、档案备份、档案还原和管理员管理账号等功能均能实现,基本完成了系统设计的要求。

运行界面及使用说明如下列各图所示:

打开系统后的界面如图3-1所示。

此时需要输初始用户名和密码:

用户名“test”密码“test”

或用户名“admin”密码“admin”

图3-1登入界面示意图

进入系统后的主界面如图3-2所示:

图3-2主界面示意图

这时,用户可根据需要分别选择实现功能。

图3-3所示为实现录入编辑的示意图。

该功能能够实现在人事档案的里新增录入和修改编辑,简单方便,容易操作。

图3-3录入编辑示意图

 

图3-4所示为实现查询界面示意图。

在该功能中,可以根据档案中的人员姓名和人员编号直接查询到你所需要的信息。

图3-4查询界面示意图

图3-5所示为实现统计界面示意图。

在该功能中,可以根据档案中的人员姓名、人员职称和文化程度直接查询到你所需要的信息并统计出相关人数。

图3-5统计界面示意图

图3-6所示为实现管理员账号管理示意图。

在该功能中,可以实现管理员对系统登录的用户名和密码的自主修改、添加、删除等功能。

图3-6管理员帐户管理示意图

 

图3-7所示为实现数据库档案备份示意图。

在该功能中,可以对当前档案进行备份,以便当你在丢失某些重要档案后,可根据档案备份轻松找回。

图3-7档案备份示意图

图3-8所示为实现数据库档案还原示意图。

该功能可以对之前备份的档案进行还原,以便轻松找回你之前在档案里的人事信息。

图3-8档案还原示意图

4主要程序

4.1登入模块源程序

voidCDemo01Dlg:

:

OnOK()

{

//TODO:

Addextravalidationhere

UpdateData(TRUE);

CUserRecordSetm_UserRecordSet;

try

{

if(m_UserRecordSet.IsOpen())

m_UserRecordSet.Close();

m_UserRecordSet.m_strFilter.Format("UserName='%s'andUserPwd='%s'",m_strUserName,m_strUserPwd);

m_UserRecordSet.Open(CRecordset:

:

snapshot,NULL,CRecordset:

:

none);

if(m_UserRecordSet.IsEOF())

{

m_UserRecordSet.Close();

AfxMessageBox("密码错误,请重试!

");

return;

}

else

{

m_UserRecordSet.Close();

AfxMessageBox("密码正确,登录成功!

");

ZJMdlg;

dlg.DoModal();

}

}

catch(CDBException*e)

{

e->ReportError();

//e->Delete();

return;

}

CDialog:

:

OnOK();

}

4.2录入编辑模块源程序

控件属性设置如下:

主要源程序如下:

BOOLLRBJ:

:

OnInitDialog()

{

CDialog:

:

OnInitDialog();

//TODO:

Addextrainitializationhere

m_adodc.SetRecordSource("SelectzgbmAS职工编码,xmAS姓名,xbAS性别,mzAS民族,csnyAS出生年月,hyzkAS婚姻状况,whcdAS文化程度编码,JkzkAS健康状况,zzmmAS政治面貌,zcbmAS职称编码,jgAS籍贯,sfzhAS身份证号码,byxxAS毕业学校,zytcAS专业或特长,hkszdAS户口所在地,hkxzAS户口性质,xzzAS现住址,zwAS职务,GzmAS工种名,jspxAS何时技术培训,jlcfAS何时奖励和处分,smwtAS需要说明问题,tbrqmAS填表人签名,tbrqAS填表日期,gsyjAS公司审查意见,scrqAS审查日期,RyxzAS人员性质,RcsjAS入厂时间,RyztAS人员状态,bzAS备注,bmbmAS部门编码FROMm_dadj");

m_adodc.Refresh();//刷新结果集的内容

//设置列宽度

_variant_tvIndex;

vIndex=long(0);//将整型值转换为_variant_t类型

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(30);

vIndex=long

(1);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long

(2);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(80);

vIndex=long(3);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(60);

vIndex=long(4);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(60);

vIndex=long(5);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(6);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(7);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(8);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(9);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(10);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(11);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(12);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(13);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(14);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(15);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(16);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(17);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(18);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(19);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(20);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(21);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(22);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(23);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(24);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(25);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(26);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(27);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(28);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(29);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(30);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

vIndex=long(31);

m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);

returnTRUE;//returnTRUEunlessyousetthefocustoacontrol

}

4.3查询模块源程序

voidCX:

:

OnOK()

{

//TODO:

Addextravalidationhere

if(m_flg==1)

{

UpdateData(TRUE);

sql.Format("SELECTzgbmAS职工编码,xmAS姓名,xbAS性别,mzAS民族,csnyAS出生年月,hyzkAS婚姻状况,whcdAS文化程度编码,JkzkAS健康状况,zzmmAS政治面貌,zcbmAS职称编码,jgAS籍贯,sfzhAS身份证号码,byxxAS毕业学校,zytcAS专业或特长,hkszdAS户口所在地,hkxzAS户口性质,xzzAS现住址,zwAS职务,GzmAS工种名,jspxAS何时技术培训,jlcfAS何时奖励和处分,smwtAS需要说明问题,tbrqmAS填表人签名,tbrqAS填表日期,gsyjAS公司审查意见,scrqAS审查日期,RyxzAS人员性质,RcsjAS入厂时间,RyztAS人员状态,bzAS备注,bmbmAS部门编码FROMm_dadjWHEREzgbm='%s'",m_filterValue);

m_adodc.SetRecordSource((_bstr_t)sql);

m_adodc.Refresh();

//Invalidate();

}elseif(m_flg==2)

{

UpdateData(TRUE);

sql.Format("SELECTzgbmAS职工编码,xmAS姓名,xbAS性别,mzAS民族,csnyAS出生年月,hyzkAS婚姻状况,whcdAS文化程度编码,JkzkAS健康状况,zzmmAS政治面貌,zcbmAS职称编码,jgAS籍贯,sfzhAS身份证号码,byxxAS毕业学校,zytcAS专业或特长,hkszdAS户口所在地,hkxzAS户口性质,xzzAS现住址,zwAS职务,GzmAS工种名,jspxAS何时技术培训,jlcfAS何时奖励和处分,smwtAS需要说明问题,tbrqmAS填表人签名,tbrqAS填表日期,gsyjAS公司审查意见,scrqAS审查日期,RyxzAS人员性质,RcsjAS入厂时间,RyztAS人员状态,bzAS备注,bmbmAS部门编码FROMm_dadjWHERExm='%s'",m_filterValue);

m_adodc.SetRecordSource((_bstr_t)sql);

m_adodc.Refresh();

}else

{

}

//CDialog:

:

OnOK();

}

4.4统计模块源程序

voidTJ:

:

OnOK()

{

//TODO:

Addextravalidationhere

CStringm_filterValue;

intm_int;

switch(radio)

{

case0:

{break;}

case1:

{

//UpdateData(FALSE);

UpdateData(TRUE);

m_int=m_shuru.GetCurSel();

//UpdateData(FALSE);

switch(m_int)

{

case0:

{m_filterValue="初中";break;}

case1:

{m_filterValue="高中";break;}

case2:

{m_filterValue="大学";break;}

case3:

{m_filterValue="研究";break;}

}

sql.Format("SELECTzgbmAS职工编码,xmAS姓名,xbAS性别,mzAS民族,csnyAS出生年月,hyzkAS

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1