当前位置:文档之家› 管理信息系统课程设计个人报告

管理信息系统课程设计个人报告

沈阳化工大学科亚学院管理信息系统课程设计报告( 2015 -- 2016学年第二学期)题目:企业人事薪酬管理信息系统设计院系:工商管理班级:1302组号:01组长:龚玥珅组员:隋越陈爽李旭指导教师:王嘉冰设计周数:一周个人姓名:龚玥珅个人成绩:日期:2016年6月 14日目录1.项目背景及系统目标 (1)1.1 项目背景.。

1.2 系统目标2系统分析2.1业务流程分析2.2 数据流程分析3系统设计3.1 代码设计(包括代码的设计和代码校验位的计算)3.2 I/O设计(设计部分输入报表和输出报表)3.3 数据库设计3.3.1 数据库文件名规范3.3.2 字段名规范3.3.3 数据表结构设计3.4 系统功能结构图4. 系统实施4.1 程序流程图4.2 源程序4.3 系统测试4.4 系统使用说明书4.4.1 软硬件环境4.4.2 使用说明5. 收获和体会....................................................241、项目背景及系统目标1.1项目背景随着科学技术的发展和整个社会的进步,计算机技术也得到了很大的提高,特别是微型计算机的大范围普及,使计算机的应用逐渐由科学计算、实时控制等方面向非数值处理的各个领域中渗透并发挥着越来越重要的作用。

尤其是以微型计算机为处理核心,以数据库管理系统为开发环境的管理系统在办公室自动化以及商业信息管理等方面的应用,日益受到人们的关注。

1.2系统目标人事工资管理是企业内部很重要的一个管理事项,其管理方式和工具对企业的决策者和管理者来说至关重要。

但一直以来大多数企业内部人事和工资的管理基本上都是传统的手工操作,这种人工管理的方式效率低,保密性差,而且很难满足及时记录、随时查询的需要,为信息的管理者带来诸多不便。

利用计算机进行信息控制和数据处理,不仅从整体上大大提高了工作效率和安全性,而且具有存储量大,寿命长,成本低等优点,这些更是手工管理所无法比拟的。

用计算机支持完成人事管理的日常事务,能够使人事管理自动化和科学化,提高了信息处理的速度和准确性;工资管理更是一项琐碎、复杂而又十分细致的工作,如果实行手工操作,会浪费工作人员很多时间和精力,且失误在所难免,而使用计算机进行工资计算和发放,不仅能够保证工资核算准确无误,而且能对相关信息进行统计,使企业内部管理体制更加科学有效。

总之,为了很好的实现数据的录入、插入、删除、查询、统计、更新等功能,以达到使企业人事工资信息管理科学化、系统化、规范化和自动化的目的,建立人事工资管理系统是十分必要的。

一个基于网络的人事工资管理系统,能在网络环境下实现数据的录入、插入、删除、查询、统计、更新等功能。

将工资管理作为一个独立的模块与人事管理相联系,同时关联员工单位福利等管理,来生成每个员工的基本工资,能够实现人事信息和工资管理的科学化、系统化、规范化和自动化。

2、系统分析2.1业务流程分析当薪酬业务发生时,企业的人力资源部门需要新建业务,整理原始文档,同时将新建的业务归并到原始文档里,同时要登陆系统处理由A新建的任务,将新建的业务和登录系统同时进行判断,之后进行处理,并由系统保存处理结果,下面系统将会进行逻辑核对,业务过程存档,之后将岗位中的基本工资数据,绩效工资数据,保险业务数据,外聘工资津贴数据进行汇总,人事部门会生成费类汇总数据,最后由财务部门发放,并定期反馈发放报表。

2.2 数据流程分析数据流程分析是把数据在组织内部的流动情况抽象地独立出来, 舍去了具体的组织机构等,以发现和解决数据流中的问题。

员工通过员工号可以查询到员工信息以及员工个人工资,得到员工基本信息表、员工基本工资表、员工岗位工资表、员工工龄工资表。

通过这4个表进行工资汇总处理,最终得出工资报表。

最后将工资报表上交人事部门以及财务部门。

财务部门发放,并定期反馈发放报表业务流程图2.1:数据流程图3、系统分析3.1代码设计任何信息都是通过一定的编码方式、以代码的形式输入并存储到计算机中的,一个信息系统如果有比较科学的、严谨的代码系统,将大大提高系统的质量。

编写代码要遵循唯一性、规范性、系统性、简单性、适用性的原则。

我们将员工按性别都进行了分类,分别将男设置为01,女设置为02。

而且还按员工进入公司的日期进行了员工号排序,这样就能区分不同的员工,而且就今后招聘员工进行排序也提供了依旧和方便。

3.2 I/O设计(1)输入设计输入内容:用户名、密码,登录成功即可进入。

输入设计要遵循控制人工输入量、减少输入延迟、减少输入错误、避免额外步骤、简化输入过程的原则,以便提高效率和减少错误。

企业人事薪酬管理信息系统能够完成员工基本信息的录入以及查询各种详细信息,根据人事部的提交情况完成输入。

在输入界面中,可以通过选择、填写等方式来完成输入,数据库文件由手工写入的教材信息组成,可完成以后的数据保存、编辑等工作。

(2)输出设计输出内容:1、在我们的企业人事薪酬管理信息系统中登陆成功,用户将直接进入系统进行操作。

2、正常操作下输出用户所查询等操作显示内容,包括输出项目、位数、数据形式(文字、数字)。

3、若这个用户或密码错误,将会跳出对话框显示出现错误;4、当输入内容出现格式错误或其他错误,则不能进行正常录入。

在这个企业人事薪酬管理信息系统可以通过条件查询,满足一定的需求,生成上报的表格和统计表格,使用显示器来显示这些数据,实现数据的输出。

信息系统的输出采用最为广泛的输出方式之一的屏幕显示。

在功能选择、查询、检索信息时采用的是屏幕输出方式。

3.3.2 字段名规范(1)数据库表字段应是有意义而且易于理解的,最好是能够表达字段含义的英文字母。

在企业薪酬管理系统中,员工为employee,薪酬为remuneration。

(2)仅用于标识唯一性和程序内部用到的标识性字段,字段名称建议取为 ID ,采用类型为整型或长整型.(3)系统中属于是业务内的编号字段,代表一定业务信息,建议字段命名为code , 如员工信息查询编号D1_code .(4)不要在数据库表字段名中包含数据类型,如:datetime(5)不要在数据库表字段命名时重复表名,可以使用表名首字母(不包含数据库表名前缀)3.3.3 数据表结构设计1、员工信息表:PERSONNEL.DBF2、基础工资设置表:COURSE.DBF3、岗位工资设置表:RANK.DBF4、工龄工资设置表:GONGLING.DBF5、用户注册表:ADMINER.DBF3.4 系统功能结构图企业人事薪酬管理信息系统功能结构图如图所示:4、系统实施4.1程序流程图企业人事薪酬管理信息系统程序流程图如图:4.2源程序1.员工工资查询登录界面设计其主要验证代码如下:dim user,password,selstorage u ser=request("username")password=request("password")sql="select * from user where username="&user&" and password="&password &""rs.open sql,conn,32if rs.eof and rs.bof thenresponse.write"<SCRIPT language=JavaScript>alert('错误的用户名或密码,请重新输入!');"response.write"javascript:history.go(-1)</SCRIPT>" elsers("isonline")=True rs("login_time")=now()rs("ip")=Request.ServerVariables("REMOTE_HOST")rs.updatesession("userlogin")="true"session("storage")=selstoragesession("username")=user员工工资查询主界面设计其主要验证代码如下:员工基本信息的click事件:do form\salary\form\personne1工资基本设定的click事件:do form salary\form\dataformat工资汇总的click事件:do form\salary\form\result.scx个人工资查询的click事件:do form\salary\form\grcx.scx退出的click事件:hisform.releasetimer1事件:if i=0bel1.visible=.F.i=1elsebel1.visible=.T.i=0endi员工基本信息界面设计1、员工基本信息增删改功能具体编码如下:(1)“增加新记录”按钮控件源代码:thisform.pageframe1.page1.fy1.enabled=.F.mand2.enabled=.F.mand3.enabled=.F.mand4.enabled=.T.if mand1.caption='增加新记录'thisform.pageframe1.page1.txtpid.enabled=.T.thisform.pageframe1.page1.txtpname.enabled=.T.thisform.pageframe1.page1.txtpsex.enabled=.T.thisform.pageframe1.page1.txtpjob.enabled=.T.thisform.pageframe1.page1.txtpindate.enabled=.T.thisform.pageframe1.page1.txtprank.enabled=.T. append blankmand1.caption='增加确认'thisform.pageframe1.page1.refreshthisform.pageframe1.page1.txtpid.setfocuselsegetid=alltrim(thisform.pageframe1.page1.txtpid.value)getname=alltrim(thisform.pageframe1.page1.txtpname.value)getsex=alltrim(thisform.pageframe1.page1.txtpsex.value) getjob=alltrim(thisform.pageframe1.page1.txtpjob.value)getindate=alltrim(thisform.pageframe1.page1.txtpindate.value)getrank=alltrim(thisform.pageframe1.page1.txtprank.value)if empty(getid) or empty(getname) or empty(getsex) or empty(getjob) or empty(getindate) or empty(getrank)messagebox("资料不足",48,"错误")elsemand1.caption='增加新记录'tableupdate(.t.)thisform.pageframe1.page1.txtpid.enabled=.F.thisform.pageframe1.page1.txtpname.enabled=.F.thisform.pageframe1.page1.txtpsex.enabled=.F.thisform.pageframe1.page1.txtpjob.enabled=.F.thisform.pageframe1.page1.txtpindate.enabled=.F.thisform.pageframe1.page1.txtprank.enabled=.F.thisform.pageframe1.page1.fy1.enabled=.T.mand2.enabled=.T.mand3.enabled=.T.mand4.enabled=.F.endifendif(2)“修改这条记录”按钮控件源代码:mand1.enabled=.F.mand3.enabled=.F.mand4.enabled=.T.thisform.pageframe1.page1.fy1.enabled=.F.if mand2.caption='修改这条记录'thisform.pageframe1.page1.txtpid.enabled=.T.thisform.pageframe1.page1.txtpname.enabled=.T.thisform.pageframe1.page1.txtpsex.enabled=.T.thisform.pageframe1.page1.txtpjob.enabled=.T.thisform.pageframe1.page1.txtpindate.enabled=.T..pageframe1.page1.txtprank.enabled=.Tmand2.caption='修改确认'thisform.pageframe1.page1.refreshthisform.pageframe1.page1.txtpid.setfocus elsemand2.caption='修改这条记录' tableupdate(.t.) thisform.pageframe1.page1.txtpid.enabled=.F.thisform.pageframe1.page1.txtpname.enabled=.F.thisform.pageframe1.page1.txtpsex.enabled=.F.thisform.pageframe1.page1.txtpjob.enabled=.F.thisform.pageframe1.page1.txtpindate.enabled=.F.thisform.pageframe1.page1.txtprank.enabled=.F.mand1.enabled=.T.mand3.enabled=.T.mand4.enabled=.F.thisform.pageframe1.page1.fy1.enabled=.T.endif2、员工信息查询功能具体编码如下:“查询”按钮控件源代码:getpid=alltrim(thisform.pageframe1.page2.text1.value)getpname=alltrim(thisform.pageframe1.page2.text2.value)flag1=thisform.pageframe1.page2.check1.value flag2=thisform.pageframe1.page2.check2.valueif flag1=0 and flag2=0messagebox("请输入查询条件",48,"错误")endifif flag1=1 and flag2=0set order to pidseek getpidif found()messagebox("查到记录",48,"注意")select * from personnel where pid=getpid into cursor ling thisform.pageframe1.page3.enabled=.T.thisform.pageframe1.page3.refreshelsemessagebox("没有这条记录",48,"注意")endifendifif flag1=0 and flag2=1set order to pname seek getpnameif found()messagebox("查到记录",48,"注意")select * from personnel where pname=getpname into cursor ling thisform.pageframe1.page3.enabled=.T.thisform.pageframe1.page3.refreshelsemessagebox("没有这条记录",48,"注意")endifendifif flag1=1 and flag2=1set order to pidseek getpidif personnel.pname=getpnamemessagebox("查到记录",48,"注意")select * from personnel where pid=getpid and pname=getpname into curs or lingthisform.pageframe1.page3.enabled=.T.thisform.pageframe1.page3.refreshelsemessagebox("没有这条记录",48,"注意")endifendif工资基本设定界面设计其主要验证代码如下:基本工资的click事件:Do form salary\form\jcgz Thisform.release岗位工资的click事件:Do form salary\form\gwgz Thisform.release工龄工资的click事件:Do form salary\form\glgz Thisform.release设定结束的click事件:Thisform.release相应的代码设计如下:修改的click事件:Thisform.grdrank.column1.text1.enabled=.t.Thisform.grdrank.column2.text1.enabed=.t.Thisform.grdrank.column1.text1.setfocus修改确认的click事件:Thisform.grdrank.column1.text1.enabled=.f.Thisform.grdrank.column2.text1.enabed=.f.添加的click事件:Append blank Go bottomThisform.grdrank.column1.text1.enabled=.t.Thisform.grdrank.column2.text1.enabed=.t.Thisform.grdrank.column1.text1.setfocus删除的click事件:Thisform.grdrank.recordsourcec= Use rank exclusiveDelete from rank where rname=getidThisform.grdrank.recordsource=’rank’Thisform.grdrank.refresh退出的click事件:Thisform.releaseDelete from rank where rname=getid Thisform.grdrank.recordsource=’rank’Thisform.grdrank.refresh退出的click事件:Thisform.release相应的代码设计如下:修改的click事件:Thisform.grdrank.column1.text1.enabled=.t.Thisform.grdrank.column2.text1.enabed=.t.Thisform.grdrank.column1.text1.setfocus修改确认的click事件:Thisform.grdrank.column1.text1.enabled=.f.Thisform.grdrank.column2.text1.enabed=.f.添加的click事件:Append blank Go bottomThisform.grdrank.column1.text1.enabled=.t.Thisform.grdrank.column2.text1.enabed=.t.Thisform.grdrank.column1.text1.setfocus删除的click事件:Thisform.grdrank.recordsourcec= Use rank exclusiveDelete from rank where rname=getidThisform.grdrank.recordsource=’rank’Thisform.grdrank.refresh退出的click事件:Thisform.release4.3系统测试软件测试是系统质量保证的主要活动之一,测试虽然不是质量保证的“安全网”,但它是不可缺少的,而且是重要的环节。

相关主题