人力资源统计分析报表的开发是人力资源管理系统研发和实施过程中绕不过去的话题的工作。因为不同的客户系统的主数据和编码的设计各异,需要的统计指标和统计逻辑也有一些差异。所以如何设计和开发出具有通用性的统计报表系统也是一个巨大的挑战,最后往往是通过定制化开发区实现,费时费力,不同的实施项目有大量的重复性工作。
几个主要需要考虑的共性问题:
1、统计维度的选择,可以使一维的,如果组织机构,也可以使多维的,如机构家人员分类;
2、统计指标的选择,有些是人力资源模块自包含的,如在职人数(含在岗人数和不在岗人数)、计薪人数、工资总额、人工成本总额、人均工资、人均人工成本,也可能包含一些生产经营指标如营业收入、经营利润、劳动生产率、人工成本效率等。
3、统计期间的选择,可以使年度也可以使月度,年度是按年度统计,月度则是按日历月统计,但有时候除了统计当期的数据外,可以还要提取预算(预测)数据、上年同期数据、上月数据作差异分析和占比分析。
年度: 当年数据,也可以包含当年预算(预测)数据、上期(上年)数据作差异分析和占比分析
月度: 当月数据,也可以包含当月预算(预测)数据、当年同月数据、上月数据作差异分析和占比分析
4、如果是包含当期、上年同期、上期数据,如果这些数据都是从明细数据统计,计算量会比较大;
5、对于一些非人力资源模块的数据,需要设计系统表格和维护界面,需要按组织机构、时间维度体现输入或者导入系统。
最近我在帮一家集团客户实施SAP ERP HCM系统优化项目,应客户的要求帮他们设计和开发了一个人力资源经营数据闭环分析报表,解决方案如下:
1、基于逻辑数据库PCH的程序负责根据根组织机构节点和评估路径生成报表的横栏,也就是说统计的组织机构是动态生成的,可以依赖机构的层级和类别来选择要统计的机构。系统的评估路径采用深度优先算法,这样一个机构的下属机构都是显示在该机构的直接下放,符合业务习惯;
2、用户可以选择是从汇总表中取汇总数据,也可以根据机构中的员工的当期明细数据去生成汇总数据;
3、如果选择了使用明细数据实时生成,对当期数据、历史数据如上年同期数据、上期数据都是根据对应时间的数据有员工明细数据实时统计生成;
4、如果选择了读取汇总数据,对当期数据、历史数据如上年同期数据、上期数据都是根据对应时间的数据从系统的汇总数据中提取,如果没有汇总数据,则再从员工明细数据实时计算生成;
5、一个机构通过其下属员工的明细数据统计出汇总数据,是由主程序将组织机构的ID传递给另外一个基于逻辑数据PNPCE的被调用程序,该程序获得员工级的数据并作必要的条件判断生成一些统计标识和统计数字,该程序完成计算处理后一内表的形式通过SAP 内存返回给主程序作统计和输出。
6、主程序根据返回的员工数据明细表(内表),逐行处理,生成对应期间的统计表数据,因为每次返回的就是当期机构的员工的数据,只要统计在统计表的当前行即可,不需要再统计表的不同行中作散列分布。如:
当前期间(实际):
如果员工计薪,则计薪人数+1;
如果员工是这个期间内入职的,则引进人数= 引进人数 +1;
如果员工是这个期间内离职的,则离职人数= 离职人数 +1;
这样做的一个潜在缺点是一个员工可能会被读取几次,如 A机构的下面有A1 和A2两个二级机构,统计表中按:
机构名称 项目 实有人数
A 当期实际 300
A1 当期实际 145
A2 当期实际 155
这样A1和A2下的员工会被读取和处理两次,但好处是不需要做散列分布。
7、生成的汇总数据可以选择保存到数据库中,按组织机构、统计类别(年度和余额度)以及归属的统计期间存放,用于以后期间的统计;
8、纵栏的指标目前是固定的,下一步打算包含更多的人力资源度量分析指标,且用户可以选择要展示哪些指标;
9、报表程序的选择屏幕界面:
10、报表的输出示例:
设计和开发这个人力资源经营数据闭环分析程序还是有些挑战的,不过总算顺利完工,希望客户能使用起来并给客户业务上带来价值。下一步计划做进一步的扩展和提升,做成通用数据模型和方案,包含更多的人力资源度量分析指标 (HR Metrics)。也希望可以提供給更多SAP ERP HCM客户使用,我个人认为是有推广应用价值的。
领取专属 10元无门槛券
私享最新 技术干货