您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页人事管理系统程序报告

人事管理系统程序报告

来源:尚车旅游网


课程设计实验报告

课题名称: 人 事 管 理 系 统 学 院: 理 学 院 专 业: 计算机 班 级: 101 班 姓 名: 张博博 李耀彩 曹兆亮 韩晴 学 号: 1881100128

2012.5。2

目 录

1 课题综述 .................................................................................. 0 1。1 人事管理信息系统来源 ................................................. 0 1。2 人事管理系统的意义 ..................................................... 0 1。3 预期目标 ......................................................................... 0 1.4 面对的问题 ........................................................................ 1 1.5 需解决的关键技术等 ........................................................ 1 2 人事管理系统分析 ................................................................. 1 2。1 涉及的基础知识 ............................................................. 1 2.2 解决问题的基本思路 ...................................................... 10 2。3 总体方案 ....................................................................... 10 2.4 功能模块框图 .................................................................. 10 3 人事管理系统设计 ............................................................... 10 3.1 算法描述 .......................................................................... 11 3。2 详细流程图 ................................................................... 12 4 代码编写 ................................................................................ 13 5 运行与测试 ............................................................................ 14 总 结 ...................................................................................... 18

《面向对象的编程技术课程设计实验报告》

1 课题综述

人事管理系统是一个数据库应用系统,员工的所有信息都是保存在数据库中.本系统将主要实现以下功能:增加记录功能、修改记录功能、删除记录功能以及刷新记录功能等等.作为人事管理系统,我们将它作为一个数据库应用系统来进行开发制作。数据库应用系统开发的前提是首先开发数据库和数据库中的数据表,数据库和数据表是数据库应用系统中进行不可缺少的工具,一切的开发工作都是围绕数据库和数据表的操作进行的,数据表可被VC++的数据工程和其他工程进行引用.

1。1 人事管理信息系统来源

随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行.对于大中型企业来说,利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件;计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等.

1.2 人事管理系统的意义

管理信息系统(Management Information System,以下简称为MIS),是一个将企业生产和经营中的各种内、外部信息进行收集、加工、整理、传递,并有序地存储,以用于管理和决策,是企业增效的信息系统。它能够使企业更加及时、准确、全面、详实的了解所需的信息数据。同时管理信息系统对各种信息数据的进一步加工,能使企业领导层的生产、经营、管理决策依据更加充分,更具有合理性、科学性;从而为社会创造出更多的价值,为企业的发展创造出更多的机会。对于企、事业单位的人事管理系统来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统,能够提高人事管理的效率。

1。3 预期目标

我们的设计目标就是在于开发一个功能实用、操作方便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、

0

《面向对象的编程技术课程设计实验报告》

按条件进行查询,基本满足人事日常业务的需要。四人合作完成了此课题的研究与开发,包括调研、分析、设计、编码、测试、文档编写等内容.

1.4 面对的问题

这次课题主要的问题就是数据库的结构设计.这里所说的数据库结构设计是指数据库中各个表结构的设计,包括信息保存在哪些表格中,各个表的结构如何以及各个表之间的关系。人事管理虽然只有一个数据表,但仍然要进行数据链接,这其中也就带来了各成员之间的绑定问题。

1.5 需解决的关键技术等

人事管理系统需解决的关键技术是与数据源进行链接,Microsoft Access的使用以及MFC的使用等。

2 人事管理系统分析

人事管理系统主要进行对企业的人员管理,使企业的管理更加科学化、合理化、制度化、规范化;为企业的管理水平跨上新台阶;为企业持续、健康、稳定的发展奠定坚实基础.进行人事管理系统需要Visual C++6。0语言环境。

2。1 涉及的基础知识

2.1.1 MFC编程

1) MFC简介

MFC是Microsoft Foundation Class Library(微软基础类库)的缩写形式。它是C++的类集,提供面向对象框架,利用这个框架,程序员可以轻松地创建Windows应用程序.

MFC还提供应用程序开发模型。此模型被称为文档/视图模型.文档/视图模型是将应用程序数据与用户界面元素分离的一种应用程序方法。它允许这两部分程序存在,这样一来,程序员在更改其中一部分时,就无须大量更改另一部分.

MFC为程序员提供了更友好的C++类,使之更易于使用。在很多情况下,MFC在幕后执行一些复杂操作,而向开发人员提供更简单的编程界面,并可以掩盖Windows API的一些缺点。

1

《面向对象的编程技术课程设计实验报告》

2) AppWizard 向导开发应用程序

图2-0 New对话框

从File菜单中单击New(新建),显示New对话框的Projects(项目)选项卡,其中列出了Visual C++中的向导。选择标有MFC AppWizard(exe)的图标,如图2—0所示,为项目输入一个名字。在Location文本框中指定一个路径。直到选择列表中的一个图标,并输入一个项目名后,单击OK按钮才能用。

步骤1

程序界面如图2-1所示.

图2—1 AppWizard的第一步

AppWizard的第一步要求用户指定应用程序的类型,选择单文档界面(SDI)、多文档界面(MDI)或基于对话框的界面.要创建不需要文档对象从磁盘文件中读取数据的简单的Windows应用程序,把标为Document/View Architecture Support(文档/视图结构支持)复选项禁用即可。

2

《面向对象的编程技术课程设计实验报告》

步骤2

在图2-2中所在的AppWizard的第二步中,要求提供项目所需要的数据库支持种类.我们选择None,有使用数据库,Next(下一步)按钮跳过这一步,进到步骤3。

图2-2 AppWizard的第二步

步骤3

在AppWizard的第三步(图2-3)中,设置程序的OLE和ActiveX支持类型。对话框上半部分的五个单选按钮控制着AppWizard添加到程序中的复合文档支持的类型。我们仍然选择None,单击Next按钮进到步骤4.

图2—3 AppWizard的第三步

步骤4

在图2—4中所示的AppWizard的第四步中,可以控制AppWizard为程序创

3

《面向对象的编程技术课程设计实验报告》

建哪些用户界面元素。

图2-4 AppWizard的第四步

AppWizard自动为程序主窗口的菜单系统、工具栏及状态栏生成代码和数据。Normal(常规)Internet Explorer Rebars单选按钮为应用程序的工具栏提供两种不同的风格。激活Context-Sensitive Help(上下文相关)复选项,会告诉AppWizard希望所创建的程序提供在线帮助。这些说明清晰完整不需要再做更多的工作只需要说明那些自己添加到程序中的命令以加强帮助文件。在AppWizard第四步的对话框的右下角有一个Advanced(高级)按钮,单击它,将显示一个标题为Advanced Options(高级选项)的包含两个选项卡的对话框。

步骤5

图2-5所示的 AppWizard 的第五步询问想创建的程序的风格、是否需要附加的源代码注释,及希望程序如何链接到MFC库.

图2-5 AppWizard的第五步

4

《面向对象的编程技术课程设计实验报告》

步骤6

AppWizard 的第六步列举了AppWizard将为项目创建的类,如图2-6。

图2-6 AppWizard的第六步

单击Finish按钮后,AppWizard显示一个摘要表,其中列出了所选的项目特征.单击OK会使AppWizard在摘要表底部所列的目录下创建项目. 2。1.2 数据库的设计

利用Microsoft Access 2003创建数据库及其数据表

微软公司的许多产品所支持的数据库结构和数据库驱动程序类型均是通用的,因此,用户可以借助相关的工具创建数据库与数据表,这里我们介绍采用Microsoft Access 2003创建数据库及其数据表的方法。为此我们先定义一个“人事管理数据表\"的结构,如表1.1所示。

表1.1 人事管理数据表结构创建

5

《面向对象的编程技术课程设计实验报告》

字段名称 职工编号 职工姓名 职工性别 所在部门 职工年龄 工作时间 基本工资 职称 简历 字段类型 数字 文本 文本 文本 数字 日期/时间 数字 文本 备注 字段大小 长整型 20 2 30 整型 8 单精度型 20 默认 索引 惟一、主索引 必须填写 是 是 是 是 是 是 是 是 是 利用Microsoft Access 2003创建数据库及其数据表的步骤如下: (1)启动Microsft Access 2003的Microsoft Access应用程序,出现图1.8所示界面.通过该界面就可以创建一个新的数据库或打开一个已经存在的数据库。

6

《面向对象的编程技术课程设计实验报告》

图1. 8 选择创建数据库的方式

(2)选择创建新数据库,即选择“空Access数据库”选项。 (3)单击“确定”按钮之后出现保存对话框,确定保存数据库文件的位置(D:\\ VC++写作案例\\ CH1\\ 人事管理数据库)和文件名称之厉即创建了一个空的数据库然后出现图1.9所示窗口。

7

《面向对象的编程技术课程设计实验报告》

图1。9 数据库中的数据表操作窗口

数据库只是数据表的容器,在数据库操作窗口中,用户可以打开已经存在的数据表,也可以创建新的:数据表+并可以对已经存在的数据表进行删除。创建一个数据表本质上就是创建一个数据表的结构—,即定义数据表的字段名、宇段大小和数据类型等等。这一切工作均是通过“设计”菜单进行的。

(4)单击“设计\"菜单,可以打开一个新的数据表结构的设计器,如图1.10所示.

8

《面向对象的编程技术课程设计实验报告》

图1.10 数据表设计器

在Microsoft Access 2003数据表设计器中,用户可以定义数据表的字段名称、字段类型、字段大小等内容。数据表结构一经确定,可以打开该数据表,在数据表中输入一些基本数据,以在后面的系统设计中体现设计的效果(数据表记录可参考表1.2所示内容,注意,考虑到表的宽度,表中的字段名缩写,实际运用时不能缩写,需要与数据表结构设计器中的字段名称一致)。

表1.2 数据表记录内容

编号 100001 100002 100003 姓名 张成东 李英 张记成 性别 男 女 男 部门 化工学院 机械学院 数理学院 年龄 48 48 47 工作时间 85/12/12 85/02/11 86/03/23 基本工资 650.00 950。00 990.00 职称 讲师 副教授 教授 简历 略 略 略 9

《面向对象的编程技术课程设计实验报告》

200001 200002 200003 陈东方 张小英 吴天洗 男 女 男 生物学院 电机学院 光机学院 48 46 46 85/12/12 87/03/11 87/03/23 650。00 650。00 950.00 讲师 讲师 副教授 略 略 略

2。2 解决问题的基本思路

建立数据库及数据表,并进行选择与之相适应的数据源。MFC设计过程中相应的对话框中的控件进行数据绑定和对一些控件代表的编写。

2.3 总体方案

使用在基础知识中数据库的设计先设计数据库和数据表。用MFC设计应用程序框架,在创建MFC时,进入框架设计的第2步,应选择“查看数据库而不使用文件支持”,在“Data Source”里添加已经创建的数据库和数据表,即可完成。然后制作人事管理主窗体,在里面最主要的是进行控件与数据表字段的绑定。最后为系统实现增加、删除、排序与查询功能。

2.4 功能模块框图

根据系统功能的要求,可以将系统分解成几个功能模块,它如图2—12所示。

人事管理系统 按员工编号排序人员删除人员增加按员工编号查询

3 人事管理系统设计

人事管理系统设计主要进行四个功能:增加记录、删除记录、排序记录、查询记录。

图2—12 人事管理系统功能模块图

10

《面向对象的编程技术课程设计实验报告》

3。1 算法描述

1)增加记录的功能描述(如图3—2所示):获取指向数据库的指针-〉确认对数据库的任何修改均已保存—〉获取新的ID值—>通过AddNew函数来添加新记录—〉把新的ID值设置为新增记录中的ID字段值—〉调用Requery函数更新记录->游标移到最后一条记录。

2)删除记录的功能描述(如图3—3所示):删除记录—〉游标移到下一条记录->如果游标在文件尾,将它移到最后一条记录->如果游标在文件头,则内容为空—>更新表单。

1)排序的功能描述(如图3-4所示):在CRecordset类中有数据成员m_strSort,可以通过设置该成员排序。将游标指向m_strSort-〉刷新数据库—>更新表单.

4)筛选的功能描述(如图3—5所示):为了编写查找功能的代码,增加菜单项“按员工编号查找\" (ID_Search) ,映射的COMMAND消息处理函数为OnSearch()。接收查询字符串—>关闭原来的表单—>将查询条件赋给过滤器—〉打开经过过滤的表单—〉计算满足条件的记录数->如果没有找到相关记录,就会打开全为空的表单-〉不论任何情况,都更新表单.

11

《面向对象的编程技术课程设计实验报告》

3.2 详细流程图

获取指向数据库 删除记录 游标移到下一条记录 确认对数据库的任何修改自己保存 游标在文件尾 no 添加新记录,并保存 游标在文件头 yes 更新记录 记录内容为空 获取新的ID值 后一yes 条记录游标移到最 no 把游标移到最后一记录 更新表单

图3—2 增加记录的流程图 图3-3 删除记录的流程图

将游标指向刷新数据库更新表单m_strSort 图3-4 排序记录的流程图

12

《面向对象的编程技术课程设计实验报告》

no 按OK键 yes 接收查询字符串 将查询条件赋给过滤器 计算满足条件的记录 no 出现有此消息的对话框 没有找到相关记录 yes 出现无此记录的消息对话框 打开过滤器的表单 更新表单

图3-5 筛选记录的流程图

4 代码编写

4。1增加记录的代码

void CMyView::OnButtonaddnew() {

CRecordset * pSet=OnGetRecordset(); //获取指向数据库的指针

if(pSet—>CanUpdate()&&!pSet-〉IsDeleted())

//确认对数据库的任何修改均已保存

{ pSet—>Edit(); }

long m_lNewID=m_pSet->GetMaxID()+1; //获取新的ID值 m_pSet—〉AddNew();

//添加一个新记录

if(!UpdateData()) return; pSet—>Update();

13

《面向对象的编程技术课程设计实验报告》

m_pSet-〉m_ZGBH=m_lNewID; m_pSet-〉Update(); m_pSet->Requery();

//设置新的ID标识

//保存新的记录 //刷新数据库

//游标移到最后一条记录 //更新表单

m_pSet—〉MoveLast(); UpdateData(FALSE);

4。2 删除记录的代码

void CMyView::OnButtondelete() {

if(MessageBox(”真的要删除吗?”,”删除记录”,MB_YESNO|

MB_ICONQUESTION)==IDYES)

m_pSet-〉Delete(); //删除记录

m_pSet—〉MoveNext(); //游标移到下一条记录

if(m_pSet—>IsEOF()) //如果游标在文件尾,将它移到最后一条记录 }

m_pSet—>MoveLast();

if(m_pSet->IsBOF()) //如果游标在文件头,则内容为空

m_pSet—〉SetFieldNull(NULL);

UpdateData(FALSE); //更新表单

4。3 排序记录的代码

void CMyView::OnSORTRECO() {

m_pSet->m_strSort=\"职工编号”; //指定排序字段 m_pSet-〉Requery (); //刷新数据库 UpdateData(FALSE); //更新表单 }

4。4 筛选记录的代码

void CMyView::OnFILTERECO()

14

《面向对象的编程技术课程设计实验报告》

CDlgQuery Dlgquery;

CString value;

int recCount=Dlgquery.DoModal();

if(recCount==IDOK) {

value=”职工编号=”+Dlgquery。m_query+” ”;//接收查询字符串

//关闭原来的表单

m_pSet—〉Close();

m_pSet—>m_strFilter=value; //将查询条件赋给过滤器

//打开经过过滤的表单

m_pSet—〉Open();

int recCount=m_pSet—〉GetRecordCount(); //计算满足条件的记录数 if(recCount==0)

//如果没有找到相关记录

{ MessageBox(”没有匹配的记录!\",\"查找”,MB_ICONWARNING);

//关闭原来的表单

m_pSet-〉Close();

m_pSet->m_strFilter=””; //将过滤结果给过滤器 m_pSet->Open();

//打开经过过滤的表单

else

{ CString str1;

str1.Format(\"have a record!”,recCount);

MessageBox(str1); }

m_pSet-〉Requery(); //刷新数据库 }

UpdateData(FALSE); //不论任何情况,都更新表单

5 运行与测试

编译并连接源程序,执行程序后:

15

《面向对象的编程技术课程设计实验报告》

1)初始界面(如图6-1所示)

2)增加记录的运行图(如图6—2所示)

3)删除记录的运行图(如图6-3所示) 4)排序记录的运行图(如图6-4所示) 5)筛选记录的运行图(如图6-5所示)

图6-1初始界面

图6-2 增加记录的运行图

16

《面向对象的编程技术课程设计实验报告》

图6—3删除记录的运行图

图6—4排序记录的运行图

17

《面向对象的编程技术课程设计实验报告》

图6-5筛选记录的运行图

18

《面向对象的编程技术课程设计实验报告》

总 结

这次课程设计结束后,不仅仅让我更加深刻地了解了MFC的使用,还让我学会了用Microsoft Access 创建数据库和数据表。当然数据库的创建不仅只有一种方法,还有以下三种主要方法:VC++创建数据工程的方法创建数据库及数据表、利用Visual Basic的可视话数据库管理器工具与数据表、利用Visual FoxPro 创建数据库及数据表。在这次设计中主要运用了VC++的创建和Microsoft Access的创建.

这次课程设计提高了我实践操作能力。人事管理系统是我学习计算机以来,做的第一个有实用功能的系统,做成后是很有成就感的.由于有过一次做课程设计的经验,因此,在筛选知识,编写文档等方面就有了经验。这次的课程设计让我认识到了我在计算机领域所学的东西还是很渺小的,所以以后就要加倍努力的学习与计算机有关的知识,作为一名软件工程专业的学生,我深刻体验到了软件个人们生活上带来的便利。同时,我也认识到了,在设计一个程序时,时刻都要保持着冷静的心和清醒的头脑.

19

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务