发动篇
基于WWW的劳资人事管理系统 可行性研究报告 组员:徐少强,鲁长华,王娜,佘晓华 1 引言 1.1编写目的 本文提出了一个基于WWW环境的劳资人事管理系统,应用动态服务器页面实现了劳资人事的多条件查询、删除、更新、打印、密码设置等功能。 1.2背景 劳资人事管理是公司企业内部很重要的一个管理事项,但目前大多公司内部劳资人事的管理,基本上是手工操作或是基于dos下的应用,这样对信息的管理者有诸多不便,有的虽然是用foxpro、visual foxpro开发,但由于开发工具本身的限制,对网络功能的支持程度不是很强,为以后软件升级到互联网带来了麻烦。因此有必要开发一个基于网络的劳资人事管理系统,能在网络环境下实现数据的录入、插入、删除、查询、统计、更新、打印等功能。同时,为了信息的保密与安全,系统还要提供一定的安全机制。 Powerbuilder6.5是美国著名的Powersoft公司推出的广泛使用于客户机/服务器体系结构下的应用程序开发工具,具有完整的Web应用开发功能。它同时支持多种关系数据库管理系统,通过微软公司的ODBC接口和专用的大型数据库接口,能够高速读取数据库中的数据。本系统就采用Powerbuilder6.5开发,服务器端的操作系统为Windows NT 4.0,客户端操作系统为Windows 98。 2..现行组织系统那个概况 2.1组织目标和战略 系统的目标是开发一个基于网络的劳资人事管理系统,能在网络环境下实现数据的录入、插入、删除、查询、统计、更新、打印等功能。同时,为了信息的保密与安全,系统还要提供一定的安全机制。 2.2存在的主要问题 劳资人事管理是公司企业内部很重要的一个管理事项,但目前大多公司内部劳资人事的管理,基本上是手工操作或是基于dos下的应用,这样对信息的管理者有诸多不便,有的虽然是用foxpro、visual foxpro开发,但由于开发工具本身的限制,对网络功能的支持程度不是很强,为以后软件升级到互联网带来了麻烦。 3.拟建立的信息系统 3.1 系统功能分析 公司内部的劳资人事的管理,从大的方面分主要集中在公司职员的个人情况、工资细目、调入调出及用车等。所以该系统主要是实现对数据的录入、插入、删除,网上查询.统计.更新.打印等功能。其次,为了信息的保密与安全,系统还要提供一定的安全机制。 3.2 系统功能的规划 根据以上系统功能的分析,本系统决定采用MDI风格,它主要分为以下几个模块,其中劳资人事管理系统的父窗口的功能结构图。 文件模块:此模块实现本系统对数据的打开、保存、打印预览、打印及用户管理等功能,并可由此退出系统。 信息管理模块:此模块实现系统的信息管理,包括对职工情况一览表、职工调入调出情况表、职工工资表及其它各表的信息数据的插入、删除、修改、保存等功能。 查询模块:此模块实现本系统的查询功能,能将个人的基本情况、调入调出情况、工资情况等检索出来,并可实现多条件查询和模糊查询。 统计模块:此模块用于对数据库中的信息数据按照一定的规则进行统计。 系统服务模块:此模块用来系统管理人员设密码和对系统的功能和开发信息进行介绍等 3.3 初步建设计划 项目计划于2008年3月开工建设。开发期6个月,试运行期3个月,系统计划于2008年6月1日正式投入运行。 3.4 根据用户要求设计数据表 数据表的建立是应用程序开发过程中的非常重要的一个环节,必须清楚每一模块要操纵的数据是那些,以及数据间的相互关系,然后建立数据表。劳资人事管理系统要求能对职工的个人情况、调入调出情况、工资情况等进行管理,在职工个人情况表下面,还有象维护职务表,维护学历表等等。同时还要对系统设置安全机制,为实现以上要求,下面仅以人事、工资、密码表为例介绍一下各表的结构: 职工情况一览表 它包括职工标号、姓名、性别、政治面貌等信息。其结构如下: code char(4) not null, //职工编码 name char(8) null, //姓名 sex char(2) null, //性别 politics char(8) null, //政治面貌 birthday data null, //出生日期 work_time data null, //参加工作时间 post_zhw char(10) null, //职务 address char(30) null, //家庭住址 该表主键为职工编号(code)。 职工工资表 其结构主要包括职工所得的各种工资福利等。 Code char(4) not null, //职工编号 Name char(8) null, //姓名 g_pay integer null, //岗位工资 j_pay integer null, //技能工资 w_pay integer null, //物价补 s_pay integer null, //书报费 ws_pay integer null, //卫生费 xh_pay integer null, //小孩补贴 a_pay integer null, //工龄工资 ht_pay numeric(6,2) null, //合同补贴 jj_pay numeric(8,2) null, //奖金 total_pay numeric(8,2) null, //工资总额 该表主键为职工编号code。 系统密码表 user_name char(10) not null, //用户名称 user_word char(10) not null, //用户密码 user_qx char(2) not null, //用户权限 4.技术可行性分析 由于Powerbuilder具有完整的web应用开发功能,由它编制的软件可以方便的同服务器端的数据库协同工作,构成Client/Server工作方式,它使用的是业界熟悉的Web标准(HTML和Java),通过端对端的设计、调试和提交,可以控制Web应用的整个生命周期。本系统客户应用和服务器应用都采用Powerbuilder开发。其中服务器端的程序是实现中的重点部分,其内容主要是生成SQL语句对数据库操作及对所得的数据进行处理。它主要分为监听客户连接、处理客户请求、避免死锁、向客户推送消息等。 4.1 安全机制分析 在进入系统之前,要进行身份确认,只有用户名和用户密码都相符的用户方可进入本系统。为了防止不合法用户对数据的察看和修改,本系统把用户分为三个级别:超级、可修改和只读用户,即一二三级用户。超级(一级)用户不仅拥有对数据的查询、修改权限,还对用户的使用权限进行控制,可以设定用户名、密码和其权限,还可以对纪录进行增加、删除、修改等操作。可修改(二级)用户对数据可以查询、打印,还可以对纪录进行增加、删除、修改等操作。只读(三级)用户只拥有对纪录的浏览、查询和打印权限。当用户要进入系统是必须先输入用户名和密码,按“确认”按钮后,系统辨别用户身份,对合法用户根据用户的权限级别赋予相应的使用功能。 4.2 对任一数据列进行排序的问题。 熟悉Windows的用户一定对资源管理器不陌生,当目录或文件很多时,当然会想到使用排序来尽快定位目标,你只要用鼠标在资源管理器上端的name、size、type或modified中的任意一项点击,它就会将此项按升序或降序排列。同样地,在PowerBuilder中,如果数据比较多,我们也可以采用这种办法来排序以尽快查找记录。本系统以窗口w_rsh为例,要实现这样的排序功能,首先定义两个实例变量String pre_col=“”和Int click_time=0,它们分别记录上次点击的列和点击同一列的奇偶数。然后在dw_1的Clicked事件中添加如下脚本: String clicked_pos,col,format Long il_pos clicked_pos = dwo.Name //取点击的对象 il_pos = Pos(clicked_pos,'_t') //对于列标题, //取得的对象是列名+”_t” If il_pos >0 Then col = Left(clicked_pos,il_pos -1) If col=pre_col Then If click_time=0 Then click_time = 1 format = col+" A" Else click_time=0 format = col+" D" End If Else click_time = 0 format = col+" A" End If pre_col = col dw_1.SetSort(format) dw_1.Sort() End If 采用上面的方法可实现象Windows中资源管理器灵活排序的功能,从而使所要浏览的数据更加一目了然。本系统对日期型、需渐变量等数据的输入采用了编辑掩码控件editmask,这样就可以大大方便用户的操作。对于象性别这样只有男、女两个值的,则采用单选钮radiobutton形式,用户在录入时只需要鼠标点击选钮即可。在设置条件时的值段名和有固定职供用户选择的数据使用了下拉列表框(droplistbox),用户只需选择所要输入的值即可 5 社会可行性分析 随着计算机的发展与普及,以及互联网技术的扩展,日常劳资人事管理必将实现无纸化办公,并且加入到公司内部的Intranet或者是Internet上去,实现数据的共享,这样有利于劳资人事信息在单位内部的查询,提高了数据资源的利用,并且能及时的得到更新,不需要象过去那样浪费大量的人力物力去进行抄写,提高了工作的效率 6.经济可行性分析 6.1 支出/收益分析 在10年期内,系统投资和收益表1:系统总投入:180万,系统总收入:92万,2年可以收回开发投资。从经济上考虑,本系统完全有必要开发。 7.可行性研究结论 通过经济,技术和社会等方面的可行性研究,可以确定本系统的开发完全有必要,而且是可行,可以立项开发。参考资料:http://blog.sina.com.cn/s/blog_4b05c12a0100bhl6.html