财务凭证生成过程中增强技术

发布时间 2023-08-17 10:00:06作者: seven1314pp

转载:https://zhuanlan.zhihu.com/p/104175960

在SAP ERP 及S/4 HANA 项目实施过程中,对财务凭证的控制总是一个永远的话题,在后勤模块中不好实现的的需求,最后都丢到财务模块中集中处理了,这简直是一个万能钥匙啊。

我在多年的项目中对此进行了总结,下面是一个简略的图,以供参考。不能说是100%的完整,对付绝大部分情况是足够了的。

 

简单来说,在产生财务凭证的地方有以下控制点:

  1. 从前台模块中,MM模块可以控制物料凭证上的信息,从而控制财务凭证的信息,比如文本信息(最常见),SD 模块中的相关的分录信息,甚至于会计科目,这些是通过用户出口实在现。
  2. 接下来在AC_DOCUMENT这个BADI 可以处理,这适用于从后勤模块到财务模块的过账,只是财务模块用F-xx 开头的事务码不适用。
  3. 接下来OBBH/OKC9 替代,对于一些简单的应用,比如从已有字段信息得到新的字段信息,不管是在OBBH/OKC9中直接处理,还是调用用户出口实现。
  4. 接下来会调用CO的成本对象相关的匹配性检查,因为早期ECC系统,CO凭证是单独的,所以在这里可以实现影响CO的检查,不管有没有产生会计凭证。 在S/4 HANA 的系统,只需要OB28就可以了。
  5. 除了上面常见的招式以外,接下来是RWIN(TRWPR)子过程调用,我有时间单独说明RWIN是怎么用的。RWIN 基于不同的时间点可以实现与财务凭证同步更新额外的算定义表格,或者检查,或者后处理。
  6. 在RWIN中Project阶段之后,就会调用OB28配的规则检查
  7. 接下来就是BTE,BTE 有1025 检查,1120 处理,特别要注意1120,因为系统在这一步改了数据就不会有新的检查了,所以一旦错了,凭证就生成错了,就会产生一些前面不可能成立的会计凭证,比如只有记账码与借贷标识不匹配。
  8. 接下来就是S/4 HANA 独有的增强点ES_FINS_ACDOCA,可以实现更加复杂的需求,因为这个可以控制ACDOCA 凭证(因为S/4 HANA中某些情况下,不再生成BSEG的记录,只产生ACDOCA的行记录,比如外汇评估,成本拆分)
  9. 接下来就是后处理,我经常用 BTE 1050,当然用RWIN 也是可以做后处理实现。

除此之外,还有一些特殊的点,我在这里列一下,比如SEGMENT 的派生的BADI,比如COPA的派生(KEDR)。

因为SAP 财务模块来说,最核心的就是控制分录的生成,并附加必要的信息,凭证对了账就对了,报表也是自然对了,通过上述的方法,之前遇到的难题都已经解决,如果谁有解决不了的问题,也希望与我分享一下,我也有机会继续完善该文档。