天天看点

ABAP SAP系统更改日志表CDHDR和CDPOS

介绍:

表 CDHDR和 CDPOS 是记录SAP系统更改日志表,主要存放的是主数据层级的更改记录。这两张表可以结合使用。SAP所有的凭证,业务数据的创建,删除和修改的历史都会被保存到表CDPOS和CDHDR中,通常我们会通过SE16n查询这两个表来得到更改历史。

CDHDR:(更改凭证抬头)

ABAP SAP系统更改日志表CDHDR和CDPOS

CDPOS:(更改凭证项目)

ABAP SAP系统更改日志表CDHDR和CDPOS

使用过程:

通过表CDHDR的字段TCODE,可以找到指定事务的所有更改记录,如事务:ME23N(采购订单),找到的记录中的OBJECTID就是存放的EBELN,然后根据记录到表CDPOS就可以查找到具体哪些字段的值发生变化,而且还记录了字段发生前后的值。

ABAP SAP系统更改日志表CDHDR和CDPOS
ABAP SAP系统更改日志表CDHDR和CDPOS

一些常用的object class:

OBJECTCLAS = ‘INFOSATZ’ 信息记录

OBJECTCLAS = ‘BANF’ 采购申请

OBJECTCLAS = ‘EINKBELEG’ 采购订单

可以通过表TCDOBT查看对应的object class

ABAP SAP系统更改日志表CDHDR和CDPOS

查看更改历史报表-RSSCD1TS

其实SAP也提供了一个标准程序RSSCD1TS来方便查询。比如,要查询采购订单抬头的修改历史数据,SE38运行RSSCD1TS,输入object class ‘EINKBELEG’和采购订单抬头表名ekko,运行。

ABAP SAP系统更改日志表CDHDR和CDPOS

运行后,列出更改历史,修改类型,新值,旧值都会列出来。

ABAP SAP系统更改日志表CDHDR和CDPOS

其他:

数据库表和object class的对应关系保存在表TCDOB中,通过表名能查询到对应的对象类(object class),

ABAP SAP系统更改日志表CDHDR和CDPOS

也可通过Tcode SCDO来查到所有的object class,但是不能通过这个tcode找到object class和表之间的关系。

ABAP SAP系统更改日志表CDHDR和CDPOS

object class 的描述保存在表TCDOBT中,

ABAP SAP系统更改日志表CDHDR和CDPOS

继续阅读