[原创] 企业薪酬计算软件实现的探讨
企业薪酬计算软件实现的探讨杨日魁 发表《计算机世界网》
关键词:IC卡;考勤;薪酬;工资;软件
一. 问题的提出
薪酬管理是一个企业管理中最基本的,也是必不可少的组成部分;同时,其操作过程繁琐,要求结果准确无误;特别当员工较多或变动频繁时,薪酬管理是一件十分麻烦的事情。特别是在大型制造业中存在的2个特点:人员多且薪酬的计算方案多变。为了彻底解放薪酬管理人员的繁重劳动,使薪酬管理更加准确高效,利用计算机软件实现企业的薪酬计算管理势在必行。
结合目前市场上多套薪酬管理软件进行综合分析,根据多个客户的实际需求,在此进行薪酬软件计算方法的探讨和软件实现,该方法我们已经成功应用到《博特IC卡考勤、工资、人力资源管理软件》的薪酬管理模块上。
二. 基本功能需求
按照企业的管理需求转换成软件实现的过程中,首先必须在系统的参数定义上进行一些规约条件的设计。
1. 薪酬项目的自定义:
根据实际需要,允许自己增加薪酬项目,可自定义项目名称,或者删除不再使用的薪酬项目。对任何一家企业,工资项目都不会一样,对于此功能的设计是必须的。
为了提高计算效率和易维护性,我们还考虑到允许使用一些中间过程的计算量。有些项目并非工资项目但我们可能在后面的项目中需要频繁调用的。
作为工资报表,有些项目虽然存在但不在报表上显示。为此我们提供了显示项目和不显示项目的选择。可以根据需要选定项目组织成管理报表。
从数据的安全性考虑,必须为每个工资项目指定操作人员可修改的属性,作为不同级别的操作用户应该具备不同修改权限。操作员可以修改软件计算后的结果,但针对不同操作员分配不同的操作项目是工资数据的安全性和准确性的需要。
根据实际情况,定义先计算哪个项目,再计算哪个项目,最后计算什么项目。因为一个项目的计算可能会取决于其他项目的计算结果。即后面的工资项目可以引用前面的计算结果。
工资项目的属性中还应该包括该项目是如何计算即:继承的还是保留的还是考勤的。
“继承的”表示延续上个月的数据,在未到发生调整的月份就不计算,只有当月份到了指定调整的月份才重新计算,比如社会养老保险,一般是一年才调整一次。
“保留的” 则判断当前员工当前项目数据是否存在,如果存在则不计算,否则重新计算当前员工当前项目,一般有些项目的收据需要手工书输入,在手工输入后就不希望软件计算的覆盖了原来的数据。
“考勤的”,则表示该项目与考勤数据有关系,应取得当前员工当前月份的当前考勤项目的数据。
2. 薪酬项目计算公式的自定义:
用户根据实际的算法自定义计算公式,如果用户需求改变,只要更改计算公式即可以了。对此,我们要求计算公式必须是简单可行的,具有高级编程语言的特点。
我们认为直接使用了开发工具提供的内置函数是比较理想而且保证数据的准确,有些软件采用了自行定义语法和格式,这样的操作不利于错误的检查和操作人员的理解学习。其效率也是比较低下的。
由于我们在开发该软件时就定义使用PowerBuilder作为整个系统的开发工具,所以我们充分使用了其提供的DataWindows公式计算函数。
3. 薪酬项目权限的定义:
可以规定每一个员工的工资保密的级别,并且规定操作用户具备查看或者编辑的权限级别,从而在便于分散操作的同时实现对薪酬权限的统一控制。保证了工资的保密性的要求。
4. 薪酬级别的自定义:
可自定义薪酬级别,将某些薪酬项目有相同算法的员工合并为一个相同的级别,并且能够定义薪酬级别中每一薪酬项目的计算公式。
5. 个人薪酬项目的定义:
允许定义每一个员工薪酬项目,如:允许定义每一员工的基本薪酬,采用手工或者批处理的方式进行录入。该功能在实现员工工资调整的时候也可以使用到的,任何一个员工的工资调整都具有阶段性特点。允许一个员工的工资在一个会计月中允许几次调整并且都能计算。
6. 会计周期起始日期的自定义:
根据实际需要,结合企业实际情况,允许用户自定义会计周期起始日期。
三. 薪酬算法的实现:
结合上述定义,薪酬结果的计算设计思路可按如下流程实现:
1. 可计算权限
根据用户选择的组织结构进行人员的过滤,判断当前操作员的计算权限,只允许计算允许其操作人员的薪酬。对于无权计算的人员直接进行过滤。
2. 组织计算公式
根据全厂的各个工资的计算公式、各个员工不同的薪酬级别,以及结合个人工资调整的计算公式,最终确定各个员工每一个薪酬项目的计算公式。
将计算公式中参数转换为实际的数据。由于在计算公式中用到的很多参数是一种代表词语,在此步骤中必须替换成实际的参数。例如BS代表基本工资,各个企业的基本工资次序不定,有些是在第一个工资项目,有些是第三个项目,那么这里就必须将BS替换成其对应的列名。
3. 按顺序计算各薪酬项目
按照工资的项目的先后次序,后面的项目可以引用前面的项目作为计算参数。这个尤其重要,因为(1)我们可以根据需要设置一些中间计算过程变量以提高计算效率和提供错误检查判断依据(2)简化计算公式的,使其简洁易读。
4. 计算完成后,根据需要允许手工修改某些薪酬项目:
判断当前用户是否有权修改当前项目,如果没有权限项目,就应该无法修改,只能读。
由于各个月份的工资数据必须全部保存,当工资发放结束后必须将该月份锁定。所以必须判断当前需要编辑月份薪酬数据是否已经锁定,如果已锁定,则无法修改薪酬数据。
手工数据编辑维护的界面应该提供所有人员一个页面内的所有项目的修改维护。使得操作员在一个页面内简单明了地无须切换操作都能进行工资的编辑工作。
5. 薪酬报表
根据选择的薪酬项目,对不要求显示的薪酬项目隐藏,只显示所选择的薪酬项目。
根据选择薪酬项目时各项目排列顺序依次显示各薪酬项目。
根据用户所选择的图形分析方式重新组织生成图形。
报表应能提供各种对内及对外报表(个税、银行转帐单等)
四. 取得的效果:
1. 高效
在薪酬项目规划和计算公式定义完成,系统正常运行后,一个3000人的企业生成一个月的薪酬数据,大约在二个小时左右,具体情况还取决于后台服务器的性能、本机性能以及网络速度等。
从用户普遍的反映来看,薪酬管理的结果是令人满意的,代替了原来的手工计算,彻底解放了薪酬管理人员的繁重劳动,使薪酬计算从复杂到简单的转换,大大地提高了工作效率。
2. 准确:
从生成的结果来看都符合我们的设计目标,系统生成的结果和手工计算的结果一致。
但也出现过与原来的电子表格手工计算全厂总工资总额有几元的出入。这个我们分析后得知,在EXCEL中所采用的计算公式中对小数点后几位的处理方式(截取或四舍五入)与在软件系统中设置的不同。经过修正计算公式总可以保证与手工一致。
广州市南日电脑电子技术有限公司 020-33504169
页:
[1]