sap表修改记录查询

sap表修改记录查询
sap表修改记录查询

目录

SAP表修改记录查询 ..................................................................................... 错误!未定义书签。更改记录表CDHDR和CDPOS....................................................................... 错误!未定义书签。SAP保存操作记录CDHDR和CDPOS表....................................................... 错误!未定义书签。

错误!未定义书签。

错误!未定义书签。

SAP表修改记录查询

SAP中修改频率较低的定制表(T001等)一般都会有修改记录存在,查看一个表有没有修改记录可以在SE11中查看他的技术设置,如果其中的LOG DATA CHANGES选中则表示此表有历史修改记录存在。

要查看他的修改记录可以使用Tcode:SCU3 。

菜单路径:工具-定制-IMG-IMG Logging

参考说明:

系统读取历史修改记录的Function :DBLOG_READ_WITH_STATISTIC

转载:

SE16N 通过&sap_edit 可以修改表,修改表后如何查看呢。分两步进行。

1. 事务码SE16N, 然后输入表 SE16N_CD_Key,输入相应的查询条件。例如table 名,查出相应的ID

2. 事务码SE16N,然后输入表SE16N_CD_DATA, 输入相应的ID,就可以查询到修改的内容。其他方式:表

DBTABLOG

CDHDR 更改日志表头

CDPOS 更改日志行项目

查询用户的最近一次登陆日期和时间,USR02中有个上次登陆日期和登陆时间;或者用SE38跑下RSUSR200,输入用户名即可查询上次登陆日期

还有个方法是ST03N,专家模式,选择时间段,选择user和user profile,可惜,小弟权限不够没法测试

更改记录表CDHDR和CDPOS

SE16N查询CDPOS表,在字段OBJECTCLAS(更改文档对象,VERKBELEG表示销售凭证,不同的凭证类别代码不同的文档对象,如需查看文档对象,可使用事务代码SCDO,相关表为TCDOB/TCDOBT)中输入:VERKBELEG,TABNAME(表名)输入:VBAK/VBAP(VBAK 查询整张订单、VBAP查询订单行项目),CHNGIND(修改标识符)输入:D(U表示更新,I 表示插入,E表示删除单个字段,D表示删除整行或整个单据),执行后,字段OBJECTID(对象价值)表示订单号码,字段TABKEY(表键)中的最后两位表示订单行号,同理,我们可查看其他删除或修改的各种单据和凭证。

转载自(在此基础上做了修改)

sap的字段和对象的修改都会保存旧值,数据保存在CDHDR和CDPOS表中,提取旧值可以采用两种方法

1) 使用sap的标准函数CHANGEDOCUMENT_READ_HEADERS 和CHANGEDOCUMENT_READ_POSITIONS

CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS' "Change document: Read change document items

EXPORTING

* archive_handle = 0 " sy-tabix Handle on Open Archive Files

changenumber = " cdpos-changenr Change document number

* tablekey = SPACE " cdpos-tabkey Object class table key

* tablename = SPACE " cdpos-tabname Object class table name

* tablekey254 = SPACE " cdpos_uid-tabkey Table Key for CDPOS in Character 254

* keyguid = SPACE " cdpos_uid-keyguid UUID in Character Format

* keyguid_str = SPACE " cdpos_str-keyguid UUID in Character Format

IMPORTING

header = " cdhdr Change document header (structure CDHDR)

et_cdred_str = " cdred_str_tab Additional Change Document - Table for STRINGs * TABLES

* editpos = " cdshw Table with edited change document items

EDITPOS_WITH_HEADER = "CDRED 更改文档,显示结构

EXCEPTIONS

NO_POSITION_FOUND = 1 " No item foun

WRONG_ACCESS_TO_ARCHIVE = 2 " incorrect access to archive

2)使用select语句直接从表中读取。

直接使用SELECT语句读取数据的示例:

*提取信用额度字段修改的抬头信息 select cdhdr~changenr cdhdr~udate

cdhdr~utime into corresponding fields of table p_cdhdr from cdhdr where cdhdr~objectclas = 'KLIM' and cdhdr~objectid = wa_customerinfo-kunnr. if sy-subrc = 0. *提取信用额度字段修改的字段值 select cdpos~changenr cdpos~value_old

cdpos~value_new into corresponding fields of table p_cdpos from

cdpos for all entries in p_cdhdr where cdpos~objectclas = 'KLIM'

and cdpos~objectid = wa_customerinfo-kunnr and cdpos~changenr =

p_cdhdr-changenr and cdpos~tabname = 'KNKK' and cdpos~fname =

'KLIMK'. if sy-subrc = 0. endif. endif.

可以在CHANGEDOCUMENT_READ_HEADERS 中设置中断获得对象类型。

相关主题
相关文档
最新文档