🚀欢迎来到本文🚀
🍉个人简介:matinal,目前职业是IT行业,一个正在慢慢前行的普通人。
🏀系列专栏:涵盖SAP各模块,Python,Excel,人工智能等
💡 其他专栏:一些平时学习的技术,感兴趣的小伙伴可以看看。🍔公众号:matinal
🎁希望各位→点赞👍 + 收藏⭐️ + 留言📝
⛱️万物从心起,心动则万物动🏄♂️
前言:统一日记账(Universal Journal)是S/4HANA在财务领域最大的创新。它把原先分散的SAP财务模块数据,整合到了一个完全集成的后台表中,就是Table ACDOCA。
🦙(工作遇到傻逼,千万要远离。道路千万条,远离傻逼第一条)
关于统一日记账ACDOCA你必须知道的事
统一日记账(Universal Journal)是S/4HANA在财务领域最大的创新。它把原先分散的SAP财务模块数据,整合到了一个完全集成的后台表中,就是Table ACDOCA。
下图就展示了ACDOCA是如何将总账(General Ledger),利润中心会计(Profit Center Accounting),固定资产会计(Fixed Asset Accounting),物料账(Material Ledger),成本(Controlling),获利分析(Profitability Analysis)等各个财务子模块的数据集成到一起的。
这样一个集成的信息源,就能生成各式各样的报表:固定资产,库存,应收应付,利润,销售成本COGS),资产负债表,损益表等等。它也让以前ECC系统中的很多后台索引表(Index)和汇总表(Total)变得不再需要。
在本文中,我将就一些关键点,跟ECC的数据结构做一个比较。
1. ACDOCA里有的,BSEG里不一定有
以下的一些凭证行项目,都是只在ACDOCA表里面存在,而在BSEG表里不存在的(你可以通过BKPF表的BSTAT字段的凭证状态U来识别):
- 资产折旧过账
- 特定账套(Ledger)过账
- 外币评估过账
- CO内部凭证
2. 年末结转数字存储在ACDOCA的Period 000中
ACDOCA把上一年度的结转数放在Period 000中,这样便于计算YTD(year-to-date)数字,你不需要回去找上一年度末的数字。
3. ACDOCA的体量比BSEG大很多
ACDOCA表中的行项目数量可能会非常大,因为评分拆分,所有的行项目都被拆分到了最小的维度,再考虑到多个账套的存在,凭证行项目数量还要翻倍。
所以,从长期业务运行的角度,数据库大小和磁盘大小都需要提前考虑好。
4. 已归档的数据会在BKPF/BSEG中被删除,但在ACDOCA中依然存在
当你在财务模块中做数据归档时,对应数据会被从BKPF/BSEG表中删除。
然而,在ACDOCA表中,数据不会立刻被删除,而是添加一条反向的凭证到ACDOCA表里,让汇总余额为0。
要实际上删除ACDOCA中的数据,必须要执行Compression Run。
Compression Run是一个数据压缩的过程,它用汇总数据来替代明细数据。它的数据颗粒度就跟年末余额结转的颗粒度一致,对于余额不产生影响。
5. 对于同样的维度,BSEG和ACDOCA可能有差异
对于同一条记录的同一个字段,你可能会发现在BSEG和ACDOCA中的值可能会不一样。
例如,你可以在Entry View上,通过替代(Substitution)来修改Assignment字段(ZUONR)的值,但是它不一定会被拷贝到ACDOCA表里面。拷贝到ACDOCA是由BAdI BADI_FINS_ACDOC_BSEG_FIELDS控制的,所以当你在系统中做替代时,需要关注一下。
6. Coding Block中的自定义字段 - 集成到ACDOCA
当你在Coding Block中添加自定义字段的时候,自定义字段也会被增加到ACDOCA中。
但是,在各种凭证输入的场景中,这些自定义字段是如何被使用的,将取决于具体的定义。你在Table FINSC_ACDOC_FCT中,能看到这些自定义字段的各种属性。例如,自定义字段在以下各种流程的使用都是可以具体定义的:
- 在损益类科目的年末结转中
- 在资产负债类科目的年末结转中
- 在科目余额中
- 在科目报表中
- 在科目余额评估时
- 在对FI凭证做修改时
- 在科目分摊时
- 在汇总层级定义时
7. 很多时候,报表的数据需求会超越ACDOCA所能提供的信息
有时候报表不仅仅是关于财务细节的,它可能会混合其他维度,例如主数据中的字段,供应商名称,成本中心层次等。
所以,在报表设计时,你需要考虑使用SAP预建的一些CDS view,它们已经混合了ACDOCA的数据和其他维度的数据。并且对于新报表来说,应该尽量基于ACDOCA做开发,而不是BSEG。
其它
更精确的理解ACDOCA,应该意识到其是一个存储实际财务凭证(Actuals)的表,对于noted item(例如down payment request预付款请求凭证),并不会更新到ACDOCA中,而是仍然存储在BSEG中。
请见下例 (F-47创建一笔预付款请求)-
原因
对于注释项目noted item,其属于标记的项目,并不会产生直接的财务影响。
ACDOCA用于用于最终财务表报的出具,而BSEG仍然会存在并用于相关应收/应付(AP/R)流程凭证的记录,例如清账,付款,催款,预付款请求等操作。
在上例中,预付款请求凭证不会更新到ACDOCA中,但如果对于这个预付款请求发生的真实的付款动作,那么这个真实的付款凭证则会被更新至ACDOCA中。
更简单的理解,可以认为一笔真实的财务凭证,一定是有借有贷的。
小结
统一日记账ACDOCA整合了财务模型,但BSEG仍然会用于相关财务流程中数据的存储,对于Item级别的凭证数据,应当结合ACDOCA和BSEG查看数据。
但在ACDOCA中并没有这个FI凭证的记录 -
怎么样,在了解此篇文章有何感想?
如果本文对大家有所帮助的话,还望各位能给我点赞、收藏并评论一下,感谢各位💕!!! 另如果大家有什么疑问或者建议的话,欢迎评论区留言。更多精彩内容->在这里