工资管理系统设计报告书.docx
《工资管理系统设计报告书.docx》由会员分享,可在线阅读,更多相关《工资管理系统设计报告书.docx(37页珍藏版)》请在沃文网上搜索。
1、第一章 需求分析1.1系统分析随着电子计算机的飞速发展,计算机在企事业单位管理的应用已经非常普及,所以利用计算机实现企事业的管理成为必然。工资管理是企事业单位的重要部分,所以有一款专用的计算机工资管理系统是每个企业的需求,本系统就是基于学校教职工工资管理这一信息的管理而设计的,分为系统管理模块、员工管理模块、部门管理模块、工资管理模块。涉及管理员、普通用户两种角色。通过对初始化原型系统进行需求分析、不断修正和改进,直到形成用户满意的可行系统。1.2系统目标网络办公自动化系统是计算机技术和网络迅速发展的一个办公应用解决方案。它的主要目的是实现信息交流和信息共享。提供协同工作的手段,从而提高办公效
2、率,让人们从烦琐的纸质化办公中解脱出来。现在我国许多机关单位的人事管理还停留在纸介质阶段,这样的机制是不能够适应时代发展的。在信息时代,传统的管理方法必然以计算机为基础的信息管理模式所取代,基于这种情况,出现了对工资管理系统的需求。第二章 模块划分根据需求分析,本系统分为系统管理、员工管理、院系管理、工资管理,辅助功能等5个部分,系统模块如图11所示。 教职工工资管理系统 计算器还原数据职工管理系统管理用户管理用户管理修改密码备份数据日历工资信息管理职工工资统计工资计算公式院系管理职工信息管理添加职工信息工资管理院系管理辅助功能各个模块具体说明如下:系统管理:对使用本系统的用户进行管理,登录系
3、统用户可以修改密码,系统管理员对数据进行备份与还原。职工管理:对职工的基本信息进行怎、添、该、删操作。院系管理:显示院系的基本信息。工资管理;工资计算公式,对职工工资进行统计,设置职工工资基本信息。辅助功能: 计算器和日历。提供临时查询与计算。第三章 搭建开发环境对于数据库的系统的开发可以选择多种语言与平台去开发。语言有诸如VFP,Java, C#, C+, VB, PB, .NET, JSP等;对于数据库来说,数据库系统一般由数据库、数据库管理系统(DBMS)、应用系统、数据库管理员和用户构成。DBMS是数据库系统的基础和核心。目前有许多DBMS产品,如DB2、Oracle、Microsof
4、t SQL Server 、Sybase SQLServer、Informix、MySQL 等,它们在数据库市场上各自占有一席之地。考虑到对VC+还是比较熟悉的,所以这里选用VC+6.0来进行开发。数据库则选择大家常用的Microsoft SQL Server 2005.(1) 操作系统:Windows XP.(2) 数据库:Microsoft SQL Server 2005. Microsoft SQL Server 2005具有较好系统的集成性及对日常任务的自动化管理能力,可以提供深入的业务分析统计和监控预测平台。鉴于以上优点,选择SQL 2005作为数据库管理系统。(3) 编译工具:Vi
5、sual C+ 6.0. VC+6.0编译速度快,可以开发出具有良好的交互功能、兼容性和扩展性的应用程序,程序调试方便,比较适合管理系统的开发。第四章 数据库设计4.1 E-R实体图 E-R实体图为实体-关系图。提供了表示实体型、属性、和联系的方法。用来描述现实世界的概念模型。E-R图是在需求分析的基础上进行的。实体可以使需求分析中抽象出来的名词。根据分析设计结果。有职工、部门、用户、工资等实体。下面为实体结构。职工实体E-R图,如图1-2所示姓名性别编号备注职称 职工学院名联系方式教龄出生日期职位图1-2 职工实体E-R图院系实体E-R图,如图1-3所示院系 学院编号办公电话学院主管学院名
6、图1-3 院系实体E-R图工资实体E-R图,如图1-4所示住房补贴餐费补贴月份保险费员工编号学院名称基本工资工资话费补贴水电费 图1-4 工资实体E-R图用户实体E-R图,如图1-5所示用户 用户类型用户名密码图1-5 用户实体E-R图4.2 设计数据库表表1-1 职工表表1-2 院系表表1-3 工资表 表1-4 用户表第五章 关键代码与主要界面5.1封装数据库类在进行具体的代码编程之前,选择一种好的数据库连接方式是整个代码编程的基础,考虑到该项目包括后台数据库的建立和维护以及前端应用程序的开发两个方面,所以,此应用程序采用被广泛使用的ADO数据库访问技术,并适当的把数据库表的字段封装到相应的
7、类中。使应用程序的各个窗体都能够共享对数据库的操作。而不需要重复编码,使程序更加易于维护,从而将面向对象的思想成功应用于程序设计中。设计数据库类ADOconnection,具体代码如下:class ADOConnection / 定义变量public:/ 添加一个指向Connection对象的指针:_ConnectionPtr m_pConnection;/ 添加一个指向Recordset对象的指针:_RecordsetPtr m_pRecordset;/ 定义方法public:ADOConnection();virtual ADOConnection();/ 初始化连接数据库void OnI
8、nitADOConnection(); / 执行查询_RecordsetPtr& GetRecordSet(_bstr_t bstrSQL);/ 执行SQL语句,Insert Update _variant_tBOOL ExecuteSQL(_bstr_t bstrSQL);/ 断开连接void ExitConnect();/ 执行Execute方法_RecordsetPtr& Execute2(_bstr_t bstrSQL);/初始化连接数据库代码如下:void ADOConnection:OnInitADOConnection()/ 初始化OLE/COM库环境:CoInitialize(
9、NULL);try/ 创建Connection对象m_pConnection.CreateInstance(ADODB.Connection);/ 设置连接字符串,必须是BSTR型或者_bstr_t类型 _bstr_t strConnect = Provider=SQLOLEDB.1; Server=127.0.0.1SQL2005; Database=SalaryMagSy; User ID=sa; Password=287016;/ 打开数据库m_pConnection-Open(strConnect,adModeUnknown);/ 捕捉异常catch(_com_error e)/ 显示
10、错误信息AfxMessageBox(e.Description();5.2设计职工模块员工模块是整个管理系统的基础,员工模块主要实现员工信息的录入、修改删除等操作。员工模块的相应类为Staff类。设计如下:class CStaffpublic:CString staff_id; / 教职工编号CString staff_name; / 姓名CString staff_sex; / 性别CString staff_title; / 职称CString depart_name; / 院系CString staff_position; / 岗位long staff_teach_time; / 教龄C
11、String staff_birth; / 出生日期CString staff_phone; / 联系电话CString staff_more; / 备注/CString staff_; / 预留照片public:CStaff();virtual CStaff();/ 数据库操作void GetInfo(CString paraID); / 根据教职工编号得到其他信息CString GetName(CString paraID); / 由编号返回姓名void SqlInsert(); / 插入操作void SqlUpdate(CString paraID); / 更新操作void SqlDel
12、ete(CString paraID); / 删除操作;其中的删除操作代码如下/ 删除指定学生信息void CStaff:SqlDelete(CString paraId)/连接数据库ADOConnection m_AdoConn;m_AdoConn.OnInitADOConnection();/设置DELETE语句_bstr_t vSQL;vSQL = DELETE FROM staff WHERE staff_id = + paraId;/执行DELETE语句m_AdoConn.ExecuteSQL(vSQL);/断开与数据库的连接m_AdoConn.ExitConnect();/*/添加
13、员工相应的对话框为CAddStaffInfo类对话框,对应的图形界面为图1-6;图1-6 添加教职工信息界面相关的代码为:/ 初始化相关变量BOOL CAddStaffInfo:OnInitDialog() CDialog:OnInitDialog();/ TODO: Add extra initialization here/ 用编辑框中的ID初始化StaffIDStaffID = m_staffID;m_deparCtrl.AddString(信息学院);m_deparCtrl.AddString(机电学院);m_deparCtrl.AddString(建测学院);m_deparCtrl.
14、AddString(资环学院);m_deparCtrl.AddString(外贸学院);m_deparCtrl.AddString(文法学院);m_deparCtrl.AddString(经管学院);m_deparCtrl.AddString(材化学院);m_deparCtrl.AddString(理学院);m_staffSexCtrl.AddString(男);m_staffSexCtrl.AddString(女);m_staffTitleCtrl.AddString(助教);m_staffTitleCtrl.AddString(讲师);m_staffTitleCtrl.AddString(
15、副教授);m_staffTitleCtrl.AddString(教授);m_staffTitleCtrl.AddString(博士生导师);m_staffTitleCtrl.AddString(院士);if (StaffID != ) /表示修改数据/ 员工编号变灰GetDlgItem(IDC_ID_EDIT)-EnableWindow(FALSE);else/ 默认下拉列表第一项m_staffSexCtrl.SetCurSel(0);m_staffTitleCtrl.SetCurSel(0);m_deparCtrl.SetCurSel(0);return TRUE; / return TRU
16、E unless you set the focus to a control/ EXCEPTION: OCX Property Pages should return FALSE/ 确定按钮,插入或修改void CAddStaffInfo:OnAddbtn() / TODO: Add your control notification handler code hereUpdateData(TRUE);if (m_staffID = )MessageBox(请输入编号);return;if (m_staffName = )MessageBox(请输入姓名);return;/将用户输入的数据赋
17、值到对象cur中,为更新数据库做准备CStaff cur;cur.staff_id=m_staffID; / 编号cur.staff_name=m_staffName; / 姓名int nIndex = m_staffSexCtrl.SelectString(0, m_staffSex); / 性别m_staffSexCtrl.GetLBText(nIndex, cur.staff_sex);int nIndex1 = m_staffTitleCtrl.SelectString(0, m_staffTitle); / 职称m_staffTitleCtrl.GetLBText(nIndex1,
18、cur.staff_title);int nIndex2 = m_deparCtrl.SelectString(0, m_depart); / 院系m_deparCtrl.GetLBText(nIndex2, cur.depart_name);cur.staff_position=m_staffPosition; / 职位CTime time = m_birthTime.GetTime();cur.staff_birth =time.Format(%Y-%m-%d); / 出生日期cur.staff_phone = m_staffPhone; / 联系方式cur.staff_teach_tim
19、e = m_teachTime; / 教龄cur.staff_more = m_staffMore; / 备注UpdateData(FALSE);/ 由员工编号是否为空来判断插入还是更新数据if (StaffID = ) /表示插入数据cur.SqlInsert();elsecur.SqlUpdate(m_staffID);/ 由输入的编号判断CDialog:OnOK();接下来设计员工信息管理界面,给系统添加相应的对话框类CStaffInfoMag类,在此对话框中完成相应的添加、删除、修改等功能。这里用到ADO data控件和 DataGrid控件,所以依照步骤为其添加这两个控件,并在对话框
20、类合理的设计,增加添加,删除、修改等按钮。教职工信息管理的相应的界面如图1-7. 图1-7 教职工信息管理相关的代码如:/ 更新数据void CStaffInfoMag:RefreshData()/ 设置SELECT语句CString cSource = SELECT staff.staff_id AS 编号, staff.staff_name AS 姓名, staff.staff_sex AS 性别,staff.staff_title As 职称, staff.depart_name AS 院系, staff.staff_position AS 职位,staff.staff_teach_ti
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工资管理 系统 设计 报告书