SAP HCM中的薪资引擎是可靠且灵活的工具。 使用此工具,您可以考虑员工薪酬领域中法律和当地法规的任何要求。 然而,这种通用性的另一面是对设置变化的复杂性和高度敏感性。
例如,上图显示了设置工资类型的视图。 一个错误设置的参数或复选框将导致错误的计算。
此外,错误的代价在金钱和声誉方面都可能很高。
还值得注意的是,该错误可能不会立即发生,而只会在计算后的几个月内发生。 在这种情况下,可能有必要重新计算几个月的工资,或创建特殊的校正计算方案。 这两种情况都非常耗时且有风险,因此只能视为万不得已。
这些错误从何而来? 人力资源功能在不断发展;法律要求和业务要求正在变化。 为了满足这些要求,您必须定期更改SAP HCM设置。 在我们公司中,所有更改都在每月发布中实施。 SAP的标准更新也大约每月发布一次,并随发行版一起安装。
供应商的更新是包含说明和程序和设置更改的说明的软件包。 该图显示了服务包SAPK-60866INEAHRCRU的组成,其中包含四个针对俄罗斯的工资单。

安装您自己的开发产品\设置和标准Service Pack可能会更改当前设置并导致错误的系统操作。
回归测试
如何确定现有功能不受标准SAP更新和我自己的新开发/设置的影响?
您当然可以分析所有更改,所有标准注释。 为他们创建示例并进行功能测试。
但是在此必须牢记,音符的数量可能在数十个之内,并且它们可能会影响附带的功能。 如果加上我们公司的规模(SAP HR中计算有270,000多名员工),那么可能的案例数将超过合理的数量。
为了解决这个问题,我们“业务应用SAP HR管理”部门的员工开发了一种用于工资回归测试的机制。
这种机制的本质非常简单。 首先,通过在原始系统上计算工资来创建标准。
然后将更新安装在系统上,并进行新的工资核算。 结果保存为发布数据。
在最后阶段,将标准与发布数据进行核对。
测试是在全部人员数量上进行的。
现在让我们更详细地讨论这一点。
我们的SAP HCM具有经典的3系统格局。 开发系统(简称为HRD),测试系统(HRT)和生产系统(HRP)。 所有改进都必须在HRT中进行测试,而测试系统的技术特征却接近生产性特征。
回归测试分为以下几个阶段:
- HRT系统准备
- 测试数据准备
- 删除标准
- 发布发布
- 结果核对
HRT测试系统准备阶段
在此阶段,基础专家正在准备HRT系统。 HRT是在特定日期从生产系统的备份中还原的。 即 HRP和HRT中的数据相同。
测试数据准备阶段
尽管生产系统和测试系统之间的数据是一致的,但是工资测试必须在尚未计算的时期内进行。 为此,请准备测试数据:
由于我们要计算一个新的期间,因此我们需要为积极注册的员工生成时间戳。 为此,使用开发的程序,从IT0007中的员工计划中生成IT2011到达/离开的时间戳。

对于积极注册的员工,请使用专门设计的程序从IT1018复制数据来填写0027IT成本分摊。
使用分配给每个计算单元的人员编号完整准备测试数据。 为此,请使用事务HRUU0267填写IT267周期外付款。
为了计算假期,奖金,裁员和各种类型的病假,将为约20名员工创建测试数据。
启动所有测试数据后,将执行HRT系统的备份。
删除标准的阶段
此阶段包括:
为此,在pt60时间评估事务中创建了一个变体,该变体在RPCS0000程序中进一步使用。 标准程序RPCS0000用于人员组并行进行运行时间评估。 使用RPCS0000可以大大减少时间评估时间。

完成时间评估后,必须保存结果。 为此,创建了一个特殊程序,将评估结果(表ZES和ZL)存储在文本文件中:

创建的时间评估标准文件的一部分:

通过标准方式(HRCUCLACM程序和交易PUST)对人员总数进行计算。
为此,在工资类型PC00_M99_CWTR的标准报告中,我们保存了用于查看必要计算(正常或间期结算)的选项。 为了将计算数据保存在HRD开发系统中,开发了一个用户程序。 该程序的输入参数之一是报告PC00_M99_CWTR的生成版本:

在HRD开发系统中制定了该程序之后,将保存工资核算的参考结果:

在HRT测试系统中,将高效地过帐到测试财务系统。 之后,使用专门设计的程序,将过帐数据上载到HRD开发系统,以作为将来对帐的参考。

完成此程序后,财务系统过帐的参考结果将保存在HRD开发系统中:

在计算完薪水之后,我们形成了一个调职登记册。 使用开发的用户程序,这些注册表也存储在文本文件中作为参考。

工资转移注册表标准文件的一个片段:

使用标准报告RPCPAYRU_6NDFL和HRULNDFL分别生成6-NDFL和2-NDFL税收报告。 为了满足测试需求,已对它们进行了逻辑扩展,以将结果存储在透明表中。 在测试环境中生成税收报告后,这些结果将通过用户程序传输到开发系统。

收到的税收数据标准:

发布发布阶段
删除标准后,有必要从准备测试数据阶段之后的备份中恢复测试系统。 即 我们得到的系统带有完整的测试数据,但没有计算。 所有更新都安装在此系统上-SAP专有开发和标准Service Pack。 此后,将执行定期和结算间薪资计算,过帐和其他操作,类似于删除标准时的操作。
和解阶段
删除标准并发布之后,对帐阶段就到了。 在这个阶段
我们将安装更新之前收到的数据与更新系统上的数据进行比较。 并且基于对差异的分析,我们得出有关已安装更新中是否存在错误的结论。
为此,我们以“标准与发布比较”模式启动用于自动验证计算结果的程序。 作为参数之一,我们指示保存时间评估标准文件的目录。

如果标准数据和发布数据之间存在差异,则此报告将显示它。

从版本和基准发布数据已经在开发系统中。 为了进行验证,使用了一个用户报告,其中我们将发布日期和标准指定为参数:

如果标准数据和发布数据之间存在差异,则此报告将显示它。

在删除标准和发布阶段,将具有生成2-NDFL和6-NDFL报告的结果的数据传输到HRD开发系统。 用户报告用于验证数据。 输入的参数是标准\版本的删除日期以及进行这些删除的用户:

如果数据存在差异,则会显示它们。

在标准的制定和发布阶段,在定期计算工资的过程中获得的数据,以及测试系统中的各种不同解决方案,被转移到开发系统中。 现在,在开发系统中,使用已开发的用户程序对标准数据进行了验证并发布:

报告中提供了所有收到的差异。

在发布发布的阶段,生成了带有注册表数据以供列出的文本文件。 我们将这些参考数据与安装更新后创建的列表注册表进行比较。

如有差异,它们将显示在报告中。

SAP HCM支持部门的专家会分析所有获得的差异。 如果差异的原因是设置/设计中的错误,则在下一个迭代中对其进行更正和测试。 即 建立测试数据后,将再次从备份中恢复测试系统,安装带有错误修复程序的更新,并重新执行删除发布和对帐的步骤。
这种方法允许对诸如工资单之类的关键过程进行非常高质量的测试,不仅用于测试每月的发布/更新,而且还用于项目活动。 因此,仅在今年,它已成功应用于两个大型项目-重组法人实体和将SAP HCM系统更新到增强级别8。