工资管理系统开发实验报告

上传人:仙*** 文档编号:90695213 上传时间:2022-05-15 格式:DOC 页数:17 大小:71.50KB
收藏 版权申诉 举报 下载
工资管理系统开发实验报告_第1页
第1页 / 共17页
工资管理系统开发实验报告_第2页
第2页 / 共17页
工资管理系统开发实验报告_第3页
第3页 / 共17页
资源描述:

《工资管理系统开发实验报告》由会员分享,可在线阅读,更多相关《工资管理系统开发实验报告(17页珍藏版)》请在装配图网上搜索。

1、-信息系统设计与开发1编写目的随着社会的开展,中国的中小型企业越来越多,而对企业而言,人力资源是企业最珍贵的资源,也是企业的“生命线。工资管理又是人力资源管理的重中之重。实行电子化智能化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。实现企业更大的工作效益和利润。提高工作效率,减少人力;节省开支;先前人工劳动的自动化;针对使用企业与人群为中小型的管理者。2背景借助现代信息技术和管理理论,建立企业管理信息系统是当今社会的重要趋势,企业要在当今剧烈的社会竞争中生存并开展,单靠人工或九十年代的手动,机械化操作是不够的,社会的开展,要求企业要跟上时代的步伐,抓住新时

2、代的新科技的机遇,运用自动化,智能化的电脑管理,实现企业的高效益开展,这其中,企业员工的工资管理,对一个企业起着很关键的作用。因此开发一个能自动化的管理企业员工工资的发放,员工部信息的管理,企业招聘的管理等功能的系统,对一个企业的开展铺上了一条奔向高速开展的道路。在一个企业中,工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会消耗工作人员大量的时间和精力,计算机进展工资发放工作,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进展统计,效劳于财务部门其他方面的核

3、算和财务处理,同时计算机具有着手工管理所无法比较的优点.例如:检索迅速、查找方便、可靠性高、存储量大、*性好、寿命长、本钱低等。这些优点能够极大地提高人事工资资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。2、可行性研究的前提1要求主要功能:为企业提供工资管理的软件,方便公司进展准确的工资管理。性能要求:可以准确登记出勤率以及一些特殊的影响工资的因素,工资的计算及发放等,可以以不同的方式查询工资情况。最重要的是准确。输入要求:数据完整、准确,真实。输出要求:简洁、快速、实时、可以打印相关的报表,提供一定的视图。平安与*要求:本系统的管理员要对该管理系统的平安负责,系统由特定人

4、员修改及进展更新,计算等功能实现。职工只有查询的权利,不能对其中的数据进展修改。上级管理者可以利用视图进展查看,或是打印报表。2目标系统实现后,大大地提高职工工资管理系统的运行效率,可以减少由人为而导致的纪录及运算错误。可以对*些特殊工资的界定条件进展设定保护,使公司更好的运行。3评价尺度:本钱效益分析结果,效益大于本钱,技术可行,效益小于本钱,技术不可行,现有技术可完全承当开发任务,操作可行,软件可被原工作人员快速承受。(4)1、管理上的可行性分析随着市场近几年的开展,公司规模的不断扩大,业务的扩,为了提高企业的业务水平,为企业简化人事管理,提高商品库存效率,增加公司的业绩。在管理方面已经积

5、累了丰富的管理经历与方法,并建立的成熟的管理制度、齐全的规章制度聚集了正确的原始数据,使管理工作有了制度支持与信息支持。特别是,能够改良企业管理机制,改善决策方式,减少管理本钱,提高工作效率。领导的支持对于信息系统的开发和实施有很大作用,也能保证系统在开发过程中妥善解决矛盾,在企业上下顺利实施信息系统,实现信息系统最初的目标。2、技术上的可行性随着IT技术的开展,特别是网络技术和数据库技术的开展,在软件开发方面,可以采用现行主流的开发技术;硬件技术方面则可以充分利用日益增强的存储能力、通讯能力和处理速度来保证系统开发技术的准备。由此可见,该系统在技术上具有可行性。3、经济上的可行性对于信息系统

6、的初期投资,都是为了以后获得更大的经济效益。通过一定的本钱、效益分析,我认为开发这个系统在经济上是可行的。因为虽然系统开发需要初始本钱和日后的维护费用,但是,信息系统可以提供比以前更加准确和及时的信息,可以改善领导层的决策方式,促进故那里体制改革和提高工作效率,减少人员费用,这些都是可以在以后的管理过程中表达出来的,并且可以令公司比其他竞争对手更加具有竞争优势,对企业长远的开展有不可无视的作用。所以,经济上的可行性是肯定的。4、可行性分析结论在对系统目标和环境进展分析的根底上,更进一步对系统的技术可行性、经济可行性、营运可行性等方面进展系统的可行性分析研究:二、组织机构图三、业务流程图四、功能

7、构造图五、数据流程图1.第一层数据流程图2.第二层数据流程图六、数据字典1数据流数据流D01-03 数据流名:出勤情况简要说明:每月员工出勤统计情况数据流来源:人事部数据流去向:工资信息设置处理数据流组成:考勤统计时间+出勤天数+迟到早退次数+旷工次数+正常加班次数+特殊加班次数+出差次数2数据存储数据存储F1 数据存储名称:月工资表简要说明:每月按部门的工资表数据存储来源:工资核算处理数据存储去向:工资查询处理数据存储组成:工资统计时间+根本工资+职务津贴+奖金+福利+加班费+出差费+迟到早退扣发+旷工扣发+其他3处理逻辑P 01-1.2 处理逻辑的名称:工资计算简述:计算本月所有部门员工工

8、资输入数据流:根本工资,来自“工资信息设置处理逻辑其他工程,来自“工资信息设置处理逻辑效益工资,来自“工资信息设置处理逻辑出勤情况,来自“工资信息设置处理逻辑数据存储组成:工资统计时间+根本工资+职务津贴+奖金+福利+加班费+出差费+迟到早退扣发+旷工扣发+其他输出的数据流:部门工资,去“月工资表数据存储员工个人工资,去“工资单数据存储4外部实体S04 名称:员工简述:本单位的员工输入的数据流:工资单输出的数据流:确认七、E-R图八、对象关系图九、数据表详情1、工资表2、职工表3、财务表十、系统截图系统分析报告借助现代信息技术和管理理论,建立企业管理信息系统是当今社会的重要趋势,企业要在当今剧

9、烈的社会竞争中生存并开展,单靠人工或九十年代的手动,机械化操作是不够的,社会的开展,要求企业要跟上时代的步伐,抓住新时代的新科技的机遇,运用自动化,智能化的电脑管理,实现企业的高效益开展,这其中,企业员工的工资管理,对一个企业起着很关键的作用。因此开发一个能自动化的管理企业员工工资的发放,员工部信息的管理,企业招聘的管理等功能的系统,对一个企业的开展铺上了一条奔向高速开展的道路。在一个企业中,工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会消耗工作人员大量的时间和精力,计算机进展工资发放工作

10、,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进展统计,效劳于财务部门其他方面的核算和财务处理,同时计算机具有着手工管理所无法比较的优点.例如:检索迅速、查找方便、可靠性高、存储量大、*性好、寿命长、本钱低等。这些优点能够极大地提高人事工资资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。1、系统的易用性和易维护性工资信息管理系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提

11、供足够的在线帮助,缩短用户对系统熟悉的过程。工资信息管理系统中涉及到的数据是企业的相当重要的信息,系统要提供方便的手段供系统维护人员进展数据的备份,日常的平安管理,系统意外崩溃时数据的恢复等工作。系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合主流国际、和行业标准。例如在开发中使用的操作系统、网络系统、开发工具都必须符合通用标准。如规的数据库操纵界面、作为业界标准的TCP/IP网络协议及ISO9002标准所要求的质量规等;同时,在自主开发本系统时,要进展良好的设计工作,制订行之有效的软件工程规,保证代码的易读性、可操作性和可移植性。3、系统的先进性目前计算系

12、统的技术开展相当快,做为员工信息管理系统工程,应该保证系统在下个世纪仍旧是先进的,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。这一方面通过系统的开放性和可扩大性,不断改善系统的功能完成。另一方面,在系统设计和开发的过程中,应在考虑本钱的根底上尽量采用当前主流并先进且有良好开展前途的产品。代码设计:添加用户:Private Sub cmdcancel_Click() Unload Me E*it SubEnd SubPrivate Sub cmdok_Click() Dim sql As String Dim rs As ADODB.Recordset If Tr

13、im(username.Te*t) = Then MsgBo* 请输入用户名称, vbOKOnly + vbE*clamation, 提示 E*it Sub username.SetFocus Else sql = select * from userinfo where userid= & username & Set re = getrs(sql, salary) If re.EOF = False Then MsgBo* 这个用户已经存在,请重新输入用户名, vbOKOnly + vbE*clamation, 提示 username.SetFocususername.Te*t = pas

14、sword.Te*t = confirmpwd.Te*t = E*it Sub Else If Trim(password.Te*t) Trim(confirmpwd.Te*t) Then MsgBo* 两次输入密码不一致,请重新输入密码, vbOKOnly + vbE*clamation, 提示 password.Te*t = confirmpwd.Te*t = password.SetFocus E*it Sub ElseIf Trim(password.Te*t) = Then MsgBo* 密码不能为空, vbOKOnly + vbE*clamation, 提示 password.Te

15、*t = confirmpwd = password.SetFocus Else sql = insert into userinfo (userid,userpwd) values( & username sql = sql & , & password & ) Call transactsql(sql, salary) MsgBo* 添加成功, vbOKOnly + vbE*clamation, 添加结果 username.Te*t = password.Te*t = confirmpwd.Te*t = username.SetFocus End If End If End IfEnd S

16、ubPrivate Sub Form_Load()End Sub出勤结果:Option E*plicitPrivate Sub DataGrid1_Click()End SubPrivate Sub Form_Load() Dim sql As String Dim rs As New ADODB.Recordset Dim sd As String If strusername admin Then sql = select sid from stuffinfo where sname= & strusername & Set rs = getrs(sql, salary) sd = rs(

17、0) sql = select * from attendancestatistics where stuffid= & sd & Me.Adodc1.ConnectionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=工资管理;Data Source=(local) Me.Adodc1.RecordSource = sql Else sql = select * from attendancestatistics Me.Adodc1.Connec

18、tionString = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=工资管理;Data Source=(local) Me.Adodc1.RecordSource = sql End IfEnd Sub根本工资设置Option E*plicitPrivate id As StringPrivate Sub cmdcancel_Click() Unload Me E*it SubEnd SubPrivate Sub init() Me.position.List

19、Inde* = 0 Me.stuffid.ListInde* = 0 Me.te*tmoney = Me.optionid.Value = TrueEnd SubPrivate Sub addrecord() 添加记录 Dim sql As String Dim rs As New ADODB.Recordset sql = select * from salarysetting Set rs = getrs(sql, salary) rs.AddNew rs.Fields(1) = Trim(id) rs.Fields(2) = Trim(Me.position.Te*t) rs.Field

20、s(3) = Trim(Me.te*tmoney) rs.Update rs.CloseEnd SubPrivate Sub cmdok_Click() Dim sql As String Dim rs As New ADODB.Recordset If ichangeflag = 1 Then If Me.optionid.Value = True Then If Me.stuffid.Te*t = Then MsgBo* 请选择员工编号, vbOKOnly + vbE*clamation, 提示 ElseIf IsEmpty(Me.te*tmoney) = True Then MsgBo*

21、 请输入根本工资, vbOKOnly + vbE*clamation, 提示 ElseIf IsNumeric(Me.te*tmoney) = False Then MsgBo* 请输入数字, vbOKOnly + vbE*clamation, 提示 Me.te*tmoney = Else sql = select * from salarysetting where stuffid= & Me.stuffid.Te*t & Set rs = getrs(sql, salary) If rs.EOF = False Then sql = delete from salarysetting wh

22、ere stuffid= & Me.stuffid.Te*t & Call transactsql(sql, salary) End If rs.Close Call addrecord MsgBo* 已经设置根本工资, vbOKOnly + vbE*clamation, 添加结果 Call init sql = select * from salarysetting Call frmresult.basictopic Call frmresult.showbasic(sql) frmresult.Show frmresult.ZOrder 0 Me.ZOrder 0 End If End I

23、f If Me.optionposition.Value = True Then If Me.position.Te*t = Then MsgBo* 请输入职务, vbOKOnly + vbE*clamation, 提示 ElseIf IsEmpty(Me.te*tmoney) = True Then MsgBo* 请输入根本工资, vbOKOnly + vbE*clamation, 提示 ElseIf IsNumeric(Me.te*tmoney) = False Then MsgBo* 请输入数字, vbOKOnly + vbE*clamation, 提示 Me.te*tmoney = E

24、lse sql = select * from salarysetting where sposition = & Me.position.Te*t & Set rs = getrs(sql, salary) If rs.EOF = False Then sql = delete from salarysetting where sposition = & Me.position.Te*t & Call transactsql(sql, salary) End If rs.Close sql = select * from salarysetting where sposition = & M

25、e.position.Te*t & Set rs = getrs(sql, salary) While Not rs.EOF id = rs(0) Call addrecord rs.MoveNe*t Wend rs.Close MsgBo* 已经设置根本工资, vbOKOnly + vbE*clamation, 添加结果 Call init sql = select * from salarysetting Call frmresult.basictopic Call frmresult.showbasic(sql) frmresult.Show frmresult.ZOrder 0 Me.

26、ZOrder 0 End If End If Else sql = update salarysetting set salary= & Me.te*tmoney & where stuffid= sql = sql & Me.stuffid & Call transactsql(sql, salary) MsgBo* 已经修改根本工资设置, vbOKOnly + vbE*clamation, 提示 Unload Me sql = select * from salarysetting Call frmresult.basictopic Call frmresult.showbasic(sql

27、) frmresult.Show frmresult.ZOrder 0 Call frmsumsalary.resumsalary(Date) End IfEnd SubPrivate Sub Form_Load() Dim sql As String Dim rs As New ADODB.Recordset If ichangeflag = 1 Then 添加信息 sql = select sid from stuffinfo order by sid Set rs = getrs(sql, salary) If rs.EOF = False Then While Not rs.EOF M

28、e.stuffid.AddItem rs(0) rs.MoveNe*t Wend rs.Close Me.stuffid.ListInde* = 0 End If sql = select distinct sposition from salarysetting Set rs = getrs(sql, salary) If rs.EOF = False Then While Not rs.EOF Me.position.AddItem rs(0) rs.MoveNe*t Wend rs.Close Me.position.ListInde* = 0 End If Me.optionid.Va

29、lue = True Else 修改信息 Me.Caption = 修改根本工资设置 Set rs = getrs(strpublicsql, salary) Me.stuffid.Te*t = rs(1) Me.position.Te*t = rs(2) Me.te*tmoney = rs(3) Me.stuffid.Enabled = False Me.position.Enabled = False rs.Close End IfEnd Sub修改密码:Private Sub cmdcancel_Click() Unload Me E*it SubEnd SubPrivate Sub c

30、mdok_Click() Dim sql As String Dim rs As ADODB.Recordset If Trim(oldpwd.Te*t) = Then MsgBo* 请输入旧密码, vbOKOnly + vbE*clamation, 提示 oldpwd.SetFocus E*it Sub Else If Trim(oldpwd.Te*t) Trim(userpassword) Then MsgBo* 旧密码与登录的密码不同,请重新输入!, vbOKOnly + vbE*clamation, 提示 oldpwd.Te*t = oldpwd.SetFocus ElseIf Tri

31、m(newpwd.Te*t) = Then MsgBo* 请输入新密码, vbOKOnly + vbE*clamation, 提示 newpwd.SetFocus E*it Sub ElseIf Trim(newpwd.Te*t) Trim(confirmpwd.Te*t) Then MsgBo* 两次密码不同, vbOKOnly + vbE*clamation, 警告 newpwd.Te*t = confirmpwd.Te*t = newpwd.SetFocus Else userpassword = newpwd sql = update userinfo set userpwd= & n

32、ewpwd & where userid= & strusername & Call transactsql(sql, salary) MsgBo* 密码已经修改, vbOKOnly + vbE*clamation, 修改结果 Unload Me End If End IfEnd SubPrivate Sub oldpwd_Change()End Sub公式设置Private Sub cmdcancel_Click() Unload Me E*it SubEnd SubPrivate Sub cmddefault_Click() Me.te*tovertime = 200 Me.te*tove

33、rtimespe = 400 Me.te*terrand = 200 Me.te*tabsent = 50 Me.te*tle = 20 Call setvalueEnd SubPrivate Sub cmdok_Click() If Me.te*tovertime = And IsNumeric(Me.te*tovertime) = True Then MsgBo* 请输入正常加班工资百分比, vbOKOnly + vbE*clamation, 提示 Me.te*tovertime = ElseIf Me.te*tovertimespe = And IsNumeric(Me.te*tover

34、timespe) = False Then MsgBo* 请输入特殊加班工资百分比, vbOKOnly + vbE*clamation, 提示 Me.te*tovertimespe = ElseIf Me.te*terrand = And IsNumeric(Me.te*terrand) = False Then MsgBo* 请输入出差工资, vbOKOnly + vbE*clamation, 提示 Me.te*terrand = ElseIf Me.te*tabsent = And IsNumeric(Me.te*tabsent) = False Then MsgBo* 请输入旷工扣发工资

35、, vbOKOnly + vbE*clamation, 提示 Me.te*tabsent = ElseIf Me.te*tle = And IsNumeric(Me.te*tle) = False Then MsgBo* 请输入迟到早退扣发工资, vbOKOnly + vbE*clamation, 提示 Me.te*tle = Else Call setvalue Call init End IfEnd SubPrivate Sub setvalue() Dim sql As String Dim rs As New ADODB.Recordset sql = select * from fo

36、rmulasetting Set rs = getrs(sql, salary) If rs.EOF = False Then sql = delete from formulasetting Call transactsql(sql, salary) End If rs.AddNew rs.Fields(0) = Me.te*tovertime rs.Fields(1) = Me.te*tovertimespe rs.Fields(2) = Me.te*terrand rs.Fields(3) = Me.te*tabsent rs.Fields (4) = Me.te*tle rs.Update rs.Close MsgBo* 已经设置公式, vbOKOnly + vbE*clamation, 设置结果End SubPrivate Sub init() 初始化 Me.te*tabsent = Me.te*terrand = Me.te*tovertime = Me.te*tovertimespe = Me.te*tle = End Sub. z.

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!