人事工资管理系统数据库设计_第1页
人事工资管理系统数据库设计_第2页
人事工资管理系统数据库设计_第3页
人事工资管理系统数据库设计_第4页
人事工资管理系统数据库设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-作者xxxx-日期xxxx人事工资管理系统数据库设计【精品文档】人事工资管理系统1问题描述本系统的设计目标是能够对该公司的员工的基本信息和工资信息进行添加和修改,根据个人信息将工资分为职务工资,职称工资和其他工资。能够调整工资标准和员工信息,也能够调整其他工资项目,根据需要对教职员工基本信息和工资信息的查询,系统应该包括系统用户数据的添加,修改和删除。系统应该具有简单,易用,小巧,经典的特色,应该能够对高校工资管理进行优化,使其系统化,高效化,智能化。并保证工资管理的准确性,简易性,为公司财务人员提供便利。随着市场经济的快速发展,公司规模越来越大,员工的数量也越来越多,员工工资管理更加的复杂

2、,而工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行工资发放工作,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,同时计算机具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事工资资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。这就对人事工资管理提出了新的要求,用计算机管理系

3、统来管理高校工资已经成为目前的趋势,使用计算机可以高速,快捷地完成以上工作。在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范数据管理行为,从而提高了管理效率和水平。人事工资管理系统便是以计算机为工具,通过对工资管理所需的信息管理,不仅把管理人员从繁琐的数据计算处理中解脱出来,而且优化了管理体系,使其高效化,简易化,智能化,也提高了透明度和互动性。2系统目标和建设原则某公司决定建立“工资管理系统”,以取代单一的人工管理。根据人员基本情况表中的职位、职称及工龄长短,决定工资表中的基本工资和岗位津贴的具体数值。根据各部门上报的扣款表的内容决定工资表中扣款项的金额。按月汇总工资表。

4、根据我们确定的工资数据库的设计思想,我们提出我建设原则如下:A高可靠性:该系统是该公司进行工资管理、员工信息管理、日常行政管理和奖惩管理的基础设施,要求有很高的可靠性,以此建立起稳定、实用的应用环境,因此系统方案设计就以高可靠性为首要原则。B安全性:系统平台和系统平台数据的安对网络系统应严格地管理,并通过防火墙和有效设置权限等方法加强系统平台和数据的安全。C实用性:选择适合公司应用规模和层次的技术,需求操作平台充分考虑其性价比和适用性,网络管理简单方便、可维护性强,以降低系统管理、运行、维护和升级费用,增强可使用性。D规范、开放:坚持开放性和标准化原则,采用的各种系统平台、协议、技术、开发工具

5、、应用系统是开放的、标准化的和可维护的。3运行环境规划 选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企业在规划内部网络时,将微软平台作为首选方案;另一方面从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都非常容易,而且性能优越。A开发工具与语言:B中文版硬件环境:CPU型号为Pentium 以上,内存128M以上。 C系统环境:Linux及Windows98以上系统均可。 DDBMS开发工具:MS SQL Server 20054需求分析说明A员工基本信息模块员工基本信息模块具有员工信息输入、员工增删、员工信息查询三个功能,员工基本信息包括员工号、员工姓名、

6、员工性别、所在职位、具体职称、工龄和工资等级等信息。员工增删实现了对数据库中员工信息的增加和删除。员工可以通过员工号或员工姓名对员工信息进行查询。B工资结构设置模块根据该公司的工资管理实际情况,本系统将工资结构分为职位工资、职称工资、工龄工资、其他工资四部分。该模块可以对这四个工资类型设置工资等级,并对每个等级设置工资标准。C工资汇总模块用户在员工信息管理模块对该员工的工资等级进行输入以后,在工资汇总模块会自动对员工工资进行汇总。用户可以打印出工资汇总表,打印之前可以通过打印预览功能进行打预览。以下便是该系统的功能模块示意图:用户数据添加系统用户管理用户数据修改 用户数据查询员工信息添加员工信

7、息修改员工信息管理员工信息删除高校工资管理系统工资标准设立工龄工资标准设立职位工资标准设立职称工资标准设立其他工资标准设立工资创建工资修改工资信息管理工资结算工资统计 所谓数据库(Database)就是指按一定组织方式存储在一起的,相互有关的若干个数据的结合,数据库管理系统(database Management System)就是一种操纵和管理数据库的大型软件,简称DBMS,他们建立在操作系统的基础上,对数据库进行统一的管理和控制,其功能包括数据库定义,数据库管理,数据库建立和维护,与操作系统通讯等。DBMS通常由数据字典,数据描述语言及其编译程序,数据操纵(查询)语言及其编译程序,数据库管

8、理例行程序等部分组成。关系数据库是以关系模型为基础的数据库,是数据表、记录、字段之间的关系将这些表联系在一起,关系数据库提供了成为结构化查询语句(SQL)标准接口,该接口允许使用多种数据库工具和产品,关系数据库是目前最流行的数据库。在VFP中数据库是一个逻辑概念,通过一组系统文件将相互关联的数据表及其数据库对象组织起来,成为扩展名为.dbc的数据库文件、扩展名为.dtc的数据库备注文件和扩展名为.dcx的数据库索引文件,三个文件一般不能直接使用,而是交由VFP数据库统一管理。VFP把.dbf文件称为表文件,一个库可以容纳多个表,通过库我们明确各表之间的相互关系,使表文件不在彼此孤立,而成为相互

9、关联的数据集合。根据对工资管理工作的调查和用户需求分析,该系统的数据流图如图4.2所示:其他工资设定工龄工资设定职称工资设定系统的数据流图员工工资汇总员工信息设定工资标准设定职位工资设定该软件的数据库由下述五张数据表组成:A员工信息表:P字段字段名类型宽度说明1员工号字符型3数字2员工姓名字符型10小于等于5个汉字3员工性别字符型2“男”或“女”4职位名称字符型14小于等于7个汉字5工龄数值型2199之间6工资等级数值型2199之间表4. 1员工信息表:P字段字段名类型宽度说明1工资等级数值型2199之间2工资标准数值型419999之间字段字段名类型宽度说明1职称名称字符型14小于等于7个汉字

10、2工资标准数值型419999之间字段字段名类型宽度说明1工龄等级数值型2199之间2工资标准数值型419999之间字段字段名类型宽度说明1工资标准数值型2199之间2备注字符型10任意字符5概念结构设计说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、表的标识符、定义、类型、度量单位和值域,建立本数据库的每一幅用户视图和全局视图(E-R图,可以用基本E-R图扩展E-R图或类图)。姓名员工编号受聘时间职务所属部门职称职称工资工资职位员工职称工资职位工资 n工资拥有从属其他工资备注 1工龄工资部门工资部门名称部门编号工龄图5.1 E-R图将概念结构映射

11、为数据库全局逻辑结构(关系模型),包括所确定的关键字和属性、重新确定的记录结构和所建立的各个表文件之间的相互关系。员工(员工编号,姓名,职务,职称,受聘时间,所属部门)部门(部门编号,部门名称)职务工资(职务,工资)职称工资(职称,工资)受聘时间工资(受聘时间,工资)扣款工资(员工编号,扣款金额)6系统的功能实现6.1数据库的连接: 在Adodc控件中,设置ConnectStringProvider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem”,然后再

12、设置CommandType为8 adCmdUnknown,数据源定为SQL查询语句,语句内容根据不同需要而更改。图6.1 设定ConnectString属性当然,可以手工输入,也可以利用“生成”让VB自动给出语句。图6.2 设定RecordSource属性A连接数据库核心语句:Provider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem” = SQL查询语句B断开数据库核心语句:Adodc1.Recordset.CloseADODB对象作为SQL连接接

13、口由于在程序中使用瞬间连接数据库比长期连接数据库高效,而且在本程序中大量使用,因而新增了模块Module1,自定义了SqlConnect函数作为连接,SqlDisConnect函数来断开连接,方便编写程序,提高代码使用率,提高开发效率和运行效率。A连接数据库核心语句:str_CS = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystemstr_RS = SQL查询语句SqlConnect Ado_Conn, Ado_RS, str_CS, str

14、_RS其中模块中定义了SqlConnect函数: Public Sub SqlConnect(ByVal Ado_Connection As ADODB.Connection, _ ByVal Ado_Recordset As ADODB.Recordset, _ Ado_ConnectionString As String, _ Ado_RecordSource As String) Ado_Connection.ConnectionString = Ado_ConnectionString Ado_Connection.ConnectionTimeout = 30 Ado_Recordse

15、t.Open Ado_RecordSource, Ado_ConnectionEnd SubB断开数据库核心语句:SqlDisConnect Ado_RS其中模块中定义了SqlDisConnect函数:Public Sub SqlDisConnect(ByVal AdoRecordset As ADODB.Recordset) End Sub利用连接数据库的方法,返回一个RecordSet集合。通过MSHFlexGrid控件、DataGrid控件等控件对集合作表格方式的输出。使用Adodc控件时,可以通过属性的设定,把MSHFlexGrid控件、DataGrid1控件捆绑在Adodc控件上。

16、当使用ADODB对象时,可以通过Set语句对MSHFlexGrid.DataSourse 进行赋ADODB对象的Recordset值。但是DataGrid1则不能。利用连接数据库的方法,返回一个RecordSet集合。通过对RecordSet集合的提取,把元组中的属性值赋给TextBox等控件控件,让其输出。核心代码: Adodc1.Recordset.Find 工号=1234Text1.Text = Adodc1.Recordset.Fields(工号).Value Text2.Text = Adodc1.Recordset.Fields(姓名).Value . . .6.2.3 对查询所得

17、到的集合作出判空:方法有多种:(设Ado_RS为Recordset)A、利用EOF和BOF两个属性进行判断: If Ado_RS.BOF = False And Ado_RS.EOF = False Then 集合不为空 Else 集合为空 End If B、利用Recordset 的RecordCount属性判断: If Ado_RS.RecordCount 0 Then 集合不为空 Else 集合为空 End If C、利用DataGrid 的ApproxCount属性来判断: 判断条件会因表格的自定义显示而有所不同 If 0 Then 集合不为空 Else 集合为空 End If D、利

18、用MSHFlexGrid的Rows属性判断: 判断条件会因表格的自定义显示而有所不同 If MSHFlexGrid1. Rows 1 Then 集合不为空 Else 集合为空 End If对于特定元组,由于主码的唯一性,所以当对主码作准确查询时,所得的表只有两种情况:只有一条元组或者什么都没有。通过6.2.3的方法,可以对集合判空。如果为空,则认为特定元组不存在,查询失败;如果返回一条元组,则指针肯定是指向该元组,可以马上对数据进行读取。核心代码: str_CS = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security In

19、fo=False;Initial Catalog=ManageSystem str_RS = select * from BaseTable where BID= & Trim(Text1.Text) & SqlConnect Ado_Conn, Ado_RS, str_CS, str_RS 检测帐号是否存在 If Ado_RS.EOF = False Then 如果帐号存在 If Trim(Ado_RS.Fields(BID) = Trim(Text1.Text) And Trim(Ado_RS.Fields(BPassword) = Trim(Text2.Text) Then还有一种方法,

20、利用Find方法进行查找,如果找到则指针指向该元组。如找不到则返回错误。因此利用捕获错误的方法也可以得到效果。第三种,利用MSHFlexGrid控件、DataGrid控件等,均可以利用控件内部的属性和方法进行查询。A利用嵌入SQL语句。首先使用ADODB对象连接的方法,利用ADODB.Connection.Execute直接嵌套运行SQL语句对数据进行修改。 核心语句: Ado_Conn.Execute “updata 表名 set 某属性=XX”B此外还可以利用ADO接口提供的Fields属性对数据进行修改。 核心语句:Adodc1.Recordset.Find 工号= & Text3.Te

21、xt & C利用DataGrid控件对数据库进行强行修改。只需要连接好数据库,然后对DataGrid进行捆绑,而且DataGrid的AllowUpdate等属性设为True就可以通过界面直接修改。基本方法跟6.3一样。A使用SQL嵌套语句删除数据。Ado_Conn.Execute “delete from表名 where某属性=XX”B此外还可以利用ADO接口提供的Fields属性对数据进行修改。核心语句:Adodc1.Recordset.Find 工号= & Text3.Text & 基本方法跟6.3一样。A使用SQL嵌套语句增加数据。Ado_Conn.Execute “insert int

22、o 表名 values(某属性=XX)”B此外还可以利用ADO接口提供的Fields属性对数据进行修改。核心语句:Adodc1.Recordset.AddItem读取BaseTable(员工基本表)里面的BPosition(职位)。通过对其的判断,来选择其他更多的步骤。核心语句:Select Case Trim(Ado_RS.Fields(BPosition) 检测权限Case 总裁 Case 人事经理 Case 经理 Case 维护部员工 Case 员工End Select7心得体会随着我国成功加入WTO及信息化浪潮的日益临近,企业在激烈的市场竞争环境下求得生存,就必须有效地利用人才、时间、

23、信息结合的优势。因此,如何使企业及时掌握本企业人才的各种信息、第一时间处理好随时变化的工资管理问题,建立一套符合企业实际的工资管理系统就显得尤为重要。在本项目的软件开发的过程中,我全面实践一个面向数据库的应用系统的开发过程,学习很多有关的知识。这样的项目对我们学过的数据结构,程序设计,数据库,软件工程,等课程是一个综合性很高的实践。一些以前没有学得很杂实的课程内容,由于需要在实践中运行,刚开始我也感到头痛。但回过头来再去看教课书,经历着一段时间的实践,对于这些知识点有关的背景,概念和解决方案理解得更透彻了,学习起来也越来越有兴趣,越来越轻松。另外我还充分体会了从事软件开发工作需要特别谨慎认真地态度和作风,一点都不能马虎。每个细微的细节都必须十分注意,如

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论