工资管理系统的设计与实现

工资管理系统的设计与实现
工资管理系统的设计与实现

工资管理系统的设计与实现

摘要

随着我国国民经济建设的蓬勃发展,各个行业都在积极使用现代化的管理工具,提高工作效率。工资管理作为企业内部财务管理的一个重要方面,逐步被企业管理者所重视。从而利用计算机软件实现企业的工资管理成为一个重要课题。本系统是根据企业工资管理的财务制度,通过实际的需求分析,基于VC++ 6.0和SQL Server 2000开发出的企业工资管理系统。

该系统的主要子模块有员工基本信息管理、工资管理、工资查询、系统管理、帮助等,设计了普通用户和管理员用户两种角色,基本满足了普通企业的工资管理的需要。企业应用本系统后,可以有效的提高工资管理水平。整个系统从符合操作简便、界面友好、简洁、实用、安全的要求出发,完成工资管理的全过程。本文从需求分析、总体设计、数据库设计、功能模块编程实现等方面阐述了本系统的设计过程。为便于说明,文中绘制了程序结构框图、部分界面图和数据表。

关键词:管理系统数据库 VC++ SQL Server

河北大学2009届本科生毕业论文(设计)

ABSTRACT

All sectors are actively using modern management tools to enhance efficiency with the rapid development of national economic construction. Wage management as an important aspect of internal financial management, which gradually attracts enterprise managers’ attention. And then it has become an important topic what use computer software to solve wages management of enterprise. The system is based on enterprise financial management system of wage, which is by the actual needs analysis, using VC + + 6.0 and SQL Server 2000 to develop enterprise wage management system.

The system is consisted with six subsystems.They are employee information management, wage administration, payroll information, system management and help. And also the system has two actors with it which is normal user and system manager. These functions can meet the demands of most of the business. If the enterprise uses this system, the management of salary can rapidly be improved. The whole system must match the requests which are simple, the interface amity, vivid, practical and safe. In this paper, a description is given on the design process of this system from demands analyzing, feasibility analysis, frame design, database design, programming module. Program structure diagram, some map interfaces and data sheets are presented for the purpose of description.

Key words:Manage System Database VC++ SQL Server

河北大学2009届本科生毕业论文(设计)

目录

一引言 (1)

1.1 课题意义 (1)

1.2 主要研究内容 (1)

1.3 论文结构 (2)

二总体设计 (3)

2.1设计目标 (3)

2.2系统功能结构 (3)

2.3模块功能详细化及界面设计 (3)

2.4 运行环境 (4)

2.4.1 硬件环境 (4)

2.4.2 软件环境 (4)

三系统设计 (5)

3.1 相关技术介绍 (5)

3.2 数据库设计 (5)

3.2.1 数据库概要说明 (5)

3.2.2 数据表的结构系统设计 (7)

四主要功能模块设计与实现 (10)

4.1 建立工程框架 (10)

4.2 主窗口设计 (11)

4.2.1 菜单资源设计 (11)

4.2.2 客户区设计 (12)

4.3 登录模块设计 (12)

4.3.1 设计步骤 (12)

4.3.2 具体实现 (12)

4.4 基本信息管理模块设计 (13)

4.4.1 设计步骤 (13)

4.4.2 代码分析 (14)

4.4.3 具体实现 (14)

4.5 工资管理模块设计 (15)

河北大学2009届本科生毕业论文(设计)

4.5.1 设计步骤 (15)

4.5.2 具体实现 (16)

4.6 工资查询模块设计 (17)

4.6.1 设计步骤 (17)

4.6.2 具体实现 (17)

4.7 系统管理模块设计 (18)

4.7.1 设计步骤 (18)

4.7.2 具体实现 (19)

五结论 (20)

谢辞 (21)

参考文献 (22)

河北大学2009届本科生毕业论文(设计)

一引言

引言部分包括三个部分,课题的意义,主要研究内容和论文的结构。

1.1课题意义

随着我国国民经济建设的蓬勃发展,各个行业都在积极使用现代化的管理工具,提高工作效率。工资管理作为企业内部财务管理的一个重要方面,逐步被企业管理者所重视。由于企业的规模不断扩大,大企业职工人数不断增多,使工资发放成为企业管理中的一个重要课题;再加上每一位职工的具体实际情况不同,规章制度的不断完善,增大了个人工资的发放难度;每个人每月的工资都要通过工资制度的审核,这大大增加了管理人员的工作量。通过计算机管理系统对员工工资进行全面的统计与管理,全面解决了工资管理过程中所遇到的各种问题,并且克服了传统管理方式中的易出错等问题。这样不仅节省了大量的人力资源,使工资管理中的事务处理更加规范明了,而且大大提高工作效率。越来越多的单位使用工资管理系统,用户的数量和种类越来越多,促使工资管理系统不断发展和完善,逐渐地工资管理系统成为了管理系统中的一个重要分支。

如今市面上流行的工资管理软件数不胜数。但是,对于于企、事业单位的工资管理来说,不需要太大型的数据库系统。只需要一个操作方便,功能实用,能同时满足财务部门、单位其他相关部门及代发单位三方对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用,用户操作方便,简单明了的工资管理软件。企业工资管理系统可以完成日常工资的管理,如查询、修改、增加、删除以及存储等操作,迅速准确地完成各种工资数据的统计和汇总工作,迅速打印工资报表等,大大提高了企业的管理效率。

1.2主要研究内容

随着社会的发展,企业的规模不断扩大,跨国公司争相出现。在这种情况下,手动的作业在企业财务管理中已经不再适合。于是出现了计算机软件实现企业工资管理,它满足了各个企业财务管理人员的需求,并且与传统的手工作业相比,工资管理系统软件有利于减少错误,减轻人事部门的任务,提高效率,节约人力资源,降低企业成本。

根据中小企业的实际情况,本文为企业量身定做了一套工资管理系统。本系统包括员工信息管理、工资查询、工资管理、系统管理和帮助等几个功能模块,具体模块功能如下:

(1)基本信息管理模块

基本信息管理模块主要包括员工录入、员工删除两个部分。

(2)工资查询模块

工资查询模块主要包括基本工资查询、浮动工资查询、加班/休假查询、总体查询四个部分。

(3)工资管理模块

工资管理模块主要包括工资发放管理、基本工资管理、浮动工资管理三个部分。

(4)系统管理模块

系统管理模块主要包括用户管理、修改密码、退出系统三个部分。

1

河北大学2009届本科生毕业论文(设计)

(5)帮助模块

帮助模块主要包括关于一个部分

1.3论文结构

本文大体分为五部分,引言、总体设计、系统设计、总体功能的实现、总结。引言部分主要介绍课题的研究背景和主要研究内容;总体设计包括系统的设计目标,系统的总体功能结构和各个模块功能介绍;系统设计包括数据库设计的基本内容;总体实现部分介绍了各个模块的具体实现方法和实现结果;总结是对系统实现的整体概括,既有系统的优点,也有系统的缺点。

2

河北大学2009届本科生毕业论文(设计)

3

二 总体设计

在总体设计阶段,首先要找出实现目标系统的各种可能方案,然后从这些方案中选取合理的方案并推荐出最佳实施方案。接下来为最终方案制定详细的计划及设计软件结构、进行必要的数据库设计和制定测试计划。

2.1设计目标

现在市面上可见的工资管理系统不胜枚举,但是对企事业单位的工资管理来说用不了大型的数据库。本系统主要针对中小企业,完全能够满足企业财务人员的工作需求。主要设计目标如下:

(1)系统运行稳定,安全可靠。 (2)界面设计美观,人机交互界面友好。

(3)信息查询灵活、方便、快捷、准确,数据存储安全可靠。 (4)操作员可以随时修改自己的口令。

(5)对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。

2.2 系统功能结构

工资系统的功能结构如图2-1所示。

图2-1 系统功能图

2.3模块功能详细化及界面设计

(1)用户登录模块

本模块实现用户对系统的登录功能,在用户输入用户名和密码之后,系统会根据数据库中的信息做匹配,如果用户名和密码都正确,就会进入系统主界面;如果用户名或密码为空,系统就会提示“用户名或密码不能为空”;如果用户名和密码错误,系统就会提示“输入正确的用户名和密码”。

(2)基本信息管理模块

工资管理系统

基本信息管理 基本工资管理 工资查询 系统管理 帮助

员工录入

员工删除

基本工资管理

浮动工资管理

浮动工资查询

加班休假查询

用户管理

修改密码

关于

基本工资查询

工资发放管理

河北大学2009届本科生毕业论文(设计)

企业员工是很有可能发生人事变动的,因此,员工基本信息管理模块主要用于对新员工的信息添加,对正式员工信息的修改完善,对离职员工信息的删除。本模块只有系统管理员有权使用,普通用户权限不够。员工信息录入时需要认真填写员工的每一项信息,确认正确后添加。员工信息录入之后,将存储到数据库中,需要时可以被查询。如果员工信息发生变化,需要修改时,系统管理员可以修改需要变动的项目。员工离职时,系统管理员必须把员工信息从数据库中删除。从列表中选择或者直接输入员工编号,删除即可。(3)工资管理模块

本模块应该包括工资的发放管理,员工基本工资管理,员工加班/休假管理和员工浮动工资管理。工资发放管理将显示一个数据库表,其中包括员工工资的各项条目。工资发放管理必须有工资添加的功能,用于添加或修改员工的具体工资。为了减少系统管理员的工作量在添加过程中选择编号之后,员工的上个月的各项工资将显示在对应编辑框内,管理员只需修改这个月不同的条目即可。员工的基本工资管理,加班/休假管理和浮动工资管理功能基本是相似的。即,添加或修员工的基本工资,加班/休假,浮动工资,输入编号后,同样能显示上个月各项条目。

(4)工资查询模块

工资查询模块用于查询员工工资的详细情况,具体应该包括总体查询、基本工资查询、浮动工资查询、加班/休假查询。输入员工编号可以直接通过数据库查询到员工的工资详细信息。但是系统管理员和普通用户权限有区别,系统管理员可以查询全部员工的工资明细,而普通用户只能查询自己的工资明细。

(5)系统管理模块

本模块是对本系统的用户信息进行管理。普通用户可以修改自己的密码,管理员用户可以修改密码和设置权限。

(6)帮助模块

显示本系统的版权,版本信息。

2.4运行环境

2.4.1硬件要求

CPU:300MHz以上的处理器。

内存:128MB,推荐256MB。

硬盘:150MB以上剩余空间。

显示像素:最低800*600,最佳效果1024*768。

2.4.2软件要求

操作系统:Windows2000/NT/XP/Vista。

数据库:SQL Server2000。

4

河北大学2009届本科生毕业论文(设计)

三系统设计

系统设计是把需求转化为软件系统的最重要的环节。系统设计的优劣在根本上决定了软件系统的质量。这一部分包括了相关技术介绍和数据库的详细设计两部分。

3.1相关技术介绍

微软公司出品的Visual C++是一个功能非常强大的可视化编程工具,可以说是目前功能最强大的程序开发平台之一。Visual C++的效率是比较高的,提供了相当优秀的集成开发环境(Integrated Developing Environment,IDE),集代码编辑、调试、向导、编译和可视化资源编辑等功能于一体,其MFC基本类库对Windows API函数做了非常好的封装并拓展了功能,可满足大多数的基本功能需求,程序设计人员只需简单的调用MFC类封装的功能函数即可。本系统就是基于Visual C++中的MFC开发的。

SQL Server 2000 是微软公司推出的关系数据库管理系统,该版本继承了以前版本的优点,同时又比它们增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2003 的大型多处理器的服务器等多种平台使用。

ADO是ActiveX Data Object(ActiveX数据对象)的缩写,是Microsoft数据库接口的组成部分,通过定义一组COM对象来操作不同数据源的数据。ADO实际是一种建立在OLE DB底层技术之上的基于COM的自动化接口技术,兼有强大的数据处理功能和简单易用的编程特点。

3.2数据库设计

3.2.1数据库设计概要说明

数据库设计是指对于一个给定的应用环境,构造优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统。数据库设计应该和应用系统设计相结合。数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。数据库设计的好与坏,直接影响到这个系统的运行效率。良好的数据库设计,可以提高数据信息的存储效率,减少数据冗余,确保数据信息的完整性和一致性。数据库的设计方法有新奥尔良(New Orleans)方法,基于E-R模型的数据库设计方法,3NF的设计方法,ODL方法。本系统采用基于E-R模型的数据库设计方法。

系统E-R图如下:

5

河北大学2009届本科生毕业论文(设计)

6

图3-1 员工基本信息属性图

图3-2 员工基本工资信息属性图

图3-3 员工浮动工资信息属性图

员工浮动工资信息

保险费 生活补助

员工编号

员工姓名

个人所得税

住房补助

员工基本工资信息

基本工资

职务工资

员工编号

员工姓名

工龄工资

养老保险金

员工基本信息

性别 文化程度

员工编号 员工姓名

河北大学2009届本科生毕业论文(设计)

7

图3-4 员工加班休假信息属性图

图3-5 用户信息属性图

3.2.2数据库表的结构

本系统的数据库结构设计采用关系数据库模式,根据系统的功能需求,员工基础信息表、员工基本工资表、员工浮动工资表、员工加班/休假表、工资发放明细表、用户表,这6个基本数据表将能够完成对整个系统的数据管理。图3-6所示的为本系统数据库中的数据表结构图。该表可以清晰地反映数据库信息。

图3-6 数据库概要说明

员工基本信息表(YG_xx )主要记录员工的基本信息,如:员工编号,员工姓名,性别,文化程度。具体采用的字段及数据类型如表3-1。

员工加班休假信息

休假天数 休假扣款

员工编号 员工姓名

加班天数

加班工资

用户信息

级别

密码 用户名

河北大学2009届本科生毕业论文(设计)

8

表3-1 YG_xx (员工基础信息表)

字段名 数据类型 长度 描述 YG_Id YG_Name YG_Sex YG_Whcd

varchar varchar char varchar

30 30 2 15

员工编号 员工姓名 员工性别 员工学历

员工基本工资表(YG_jg )主要记录员工工资的基本组成部分,如:基本工资,职务工资,工龄工资,养老保险金等。具体采用的字段及数据类型如表3-2。

表3-2 YG_jg (员工基本工资表)

字段名 数据类型 长度 描述 YG_Id YG_Name YG_Jb YG_Zw YG_Gl YG_Yl

varchar varchar money money money money

30 30 8 8 8 8

员工编号 员工姓名 员工基本工资 员工职务工资 员工工龄工资 员工养老保险金

员工浮动工资表(YG_fg )主要记录了每个员工除基本工资外的一些经常浮动的工资项目,如:个人所得税,住房补助,保险费,生活补助等。具体采用的字段及数据类型如表3-3。

表3-3 YG_fg (员工浮动工资表)

字段名 数据类型 长度 描述 YG_Id YG_Name YG_Gr YG_Zf YG_Bx YG_Sh

varchar varchar money money money money

30 30 8 8 8 8

员工编号 员工姓名 员工个人所得税 员工住房补助 员工保险费 员工生活补助

员工加班/休假表(YG_jx )主要记录的是员工请假和加班的情况以及相应的工资情况,如:加班天数,加班工资,休假天数,休假扣款等。具体采用的字段及数据类型如表3-4。

河北大学2009届本科生毕业论文(设计) 9

表3-4 YG_jx (员工加班休假表)

字段名 数据类型 长度 描述 YG_Id YG_Name YG_Jt YG_Jg YG_St YG_Sk

varchar varchar int money int money

30 30 4 8 4 8

员工编号 员工姓名 员工加班天数 员工加班工资 员工休假天数 员工休假扣款

河北大学2009届本科生毕业论文(设计)

10

四 主要功能模块设计与实现

本部分主要介绍企业工资管理系统从工程创建到各个模块功能完成的具体实现过程。

4.1建立工程框架

本系统是直接利用MFC AppWizard 应用程序向导创建一个基于对话框的应用程序。

在Visual C++ 6.0中建立一个工程,进而完成企业工资管理系统的基本框架,步骤如下: 单击菜单“文件 新建”,打开“新建”对话框,单击“工程”选项卡,选择“MFC AppWizard(exe)”,输入工程名“GZGLXT ”,并设置正确路径,如图4-1所示。

图4-1 “新建”对话框

单击“确定”按钮,对话框“MFC 应用程序向导-步骤1”就已经打开,如图4-2所示,选择“基本对话框(D )”选项,接着单击“下一步”按钮。

图4-2 “MFC 应用程序向导-步骤1”对话框

在弹出的“MFC 应用程序向导-步骤2 共4步”对话框中,输入对话框标题,其他选项默认就可以,如图4-3所示。

河北大学2009届本科生毕业论文(设计)

11

图4-3 “MFC 应用程序向导-步骤2 共4步”对话框

然后一直不用其他操作,默认属性即可。最后会弹出图4-4所示的工程属性图,在属性图中可以看到自己设置的工程的属性。单击“确定”按钮后,就完成了新建工程。

图4-4 设计好的工程属性

4.2主窗口的设计

主窗口是用户登录后弹出的界面,通过主界面可以进入子模块。故主窗口必须包含两部分,菜单和客户区。

4.2.1菜单资源设计

河北大学2009届本科生毕业论文(设计)

12

新建一个菜单项,在GZGLXT Resources 目录下新增一个Menu 目录项,菜单ID 为IDR_MENU 。双击此菜单,对此菜单项的属性进行设计。

4.2.2客户区设计

新建一个对话框,在Menu 组合框中选择IDR_MENU 。如图4-5主界面所示。

图4-5 主界面

4.3登录模块设计 4.3.1设计步骤

(1) 向工程项目中插入一个新窗口,资源ID 为IDD_LOGIN 。打开IDD_LOGIN 的属性框,将窗口名称改为“用户登录”。

(2) 从控制面板上向资源中添加2个Static 、2个Edit ,更改资源的属性,并为资源设置相对应的变量,如表4-1所示。

表4-1 登录模块资源设置表

编号 属性 类型 成员 IDC_EDIT1 IDC_ EDIT2

IDOK IDCANCEL

默认 PassWord TRUE Caption 登录 Caption 退出

CString Cstring

G_name G_pwd

4.3.2具体实现

输入正确的账号和密码后,就会进入用户主界面。具体运行结果如图4-6和图4-7。

河北大学2009届本科生毕业论文(设计)

13

图4-6 用户登录界面

图4-7 主界面

4.4基本信息管理模块设计 4.4.1设计步骤

按照系统设计中设计好的窗体,完成员工录入和员工删除的界面。现在介绍员工录入窗口的设计。在窗口中添加4个Static 、2个Combo 、2个Edit ,更改资源的属性,并为资源设置相对应的变量,如表4-2所示。

4-2 员工基本信息模块资源设置表

编号 Caption 属性

类型 成员 IDC_EDIT1 IDC_ EDIT2 IDC_COMBO1 IDC_COMBO2

默认 默认

CString CString CComboBox CComboBox

Y_id Y_name Y_sex Y_whcd

河北大学2009届本科生毕业论文(设计)

14

4.4.2代码分析

(1)数据库的连接部分代码如下:

class ADO_Connection {

public:

//添加一个指向Connection 对象的指针 _ConnectionPtr Y_pConnection; //添加一个指向Recordset 对象的指针 _RecordsetPtr Y_pRecordset; public:

ADO_Connection ();

virtual ~ ADO_Connection ();

//初始化

void OnInit ADO_Connection ();

_RecordsetPtr&GetRecordSet(_bstr_t bstrSQL); //执行数据库查询语句

BOOL ExecuteSQL(_bstr_t bstrSQL); //断开连接

void ExitConnect();

};

4.4.3具体实现

点击“基本信息管理”进入员工录入界面,输入员工的信息, 如图4-8所示,点击“添加”按钮,如果正确输入就会显示“完成输入”;如果没有输入编号(姓名),就会显示“编号(姓名)不能为空”。如图4-9所示。

图4-8 员工录入

河北大学2009届本科生毕业论文(设计)

15

图4-9 编号不为空

4.5工资管理模块设计 4.

5.1设计步骤

按照系统设计中设计好的窗体,完成工资发放管理,基本工资管理,浮动工资管理和加班/休假管理的界面。先介绍基本工资管理中员工工资添加的设计。在员工工资添加窗口中添加19个Static 、17个Edit 控件,具体的属性和变量如表4-3所示。

表4-3 工资管理模块资源设置表

编号 属性 类型 成员 IDC_EDIT1 IDC_EDIT2 IDC_EDIT3 IDC_EDIT4 IDC_EDIT5 IDC_EDIT6 IDC_EDIT7 IDC_EDIT8 IDC_EDIT9 IDC_EDIT10 IDC_EDIT11 IDC_EDIT12 IDC_EDIT13 IDC_EDIT14 IDC_EDIT15 IDC_EDIT16 IDC_EDIT17

默认 默认 默认 默认 默认 默认 默认 默认 默认 Read-only TRUE

默认 Read-only TRUE

默认 默认 默认 Read-only TRUE Read-only TRUE

CString CString int int int int int int int CEdit int CEdit int int int CEdit CEdit

Y_id Y_name Y_jg Y_jw Y_gl Y_zf Y_sh Y_bx Y_jt Y_jg Y_st Y_sg Y_yl Y_gr Y_sf Y_yf Y_sy

河北大学2009届本科生毕业论文(设计)

16

4.5.2具体实现

具体实现如图4-10,图4-11,图4-12所示

图4-10 基本工资管理

图4-11 浮动工资管理

图4-12 员工添加管理

相关文档
最新文档