众所周知,更改凭证抬头表CDHDR和更改凭证项目表CDPOS中保存了SAP中业务数据的创建和变更历史。
但是在查询这两个表时,通常会面临不知道如何填写OBJECTCLAS和OBJECTID这两个字段的值。
对于OBJECTCLAS,可以通过表TCDOB查找到,以TABNAME为条件,查询对应的OBJECTCLAS。
比如下图,输入EKKO、EKPO...等表名就能找到对项目
采购订单抬头行项目,对应的对象名就是EINKBELEG;
销售订单抬头行项目,对应的对象名是VERKBELEG;
交货单抬头行项目数据,对应的对象名是LIEFERUNG。
对于对象值OBJECTID的查找稍微复杂一些,以采购订单的对象类EINKBELEG举例说明:
首先通过tcode SCDO找到对象类OBJECTCLAS的生成信息。
这里也可以看到对象类下所有的可以更改的表。
在生成信息中能找到更新函数EINKBELEG_WRITE_DOCUMENT
SE37,通过where use list找到所有用到EINKBELEG_WRITE_DOCUMENT的程序,找一个双击跳转到对应的程序中,
然后就看到这个对象值,objectID填写的是采购订单号(EKKO-EBELN)。通过此方法也可以找到其他对象类的对象值。
以上。
发表评论