SAP SCDO 表的修改日志记录_第1页
SAP SCDO 表的修改日志记录_第2页
SAP SCDO 表的修改日志记录_第3页
SAP SCDO 表的修改日志记录_第4页
SAP SCDO 表的修改日志记录_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、SAP系统中,如果有需要对自建表的数据记录修改日志的,可以创建文档记录,由系统自动记录表字段的修改. 程序中只需要传入修改前和修改后的数据即可. 需要显示日志时,只需要读出修改记录,显示即可.一. SE11 进入要记录修改日志的自建表,进入需要记录修改的字段的数据元素中,在further characteristic页面中,勾选 更改文档二. TCODE : SCDO输入文档对象 ZMG_TEST001,点击继续输入描述,及需要记录日志的表名字注:如果是对比单条记录的修改,则不需要勾选 复制为内部表.(如抬头信息)如果需要批量对比多条记录的修改,则需要打勾.(如行项目信息)然后点击: 插入条目

2、来到如下屏幕菜单栏 :实用程序 -> 生成更新程序 系统将自动生成一个可以记录修改日志的更新函数,只需将修改前及修改后的记录填入函数相关参数中,系统会自动判断此次对哪些字段(数据元素中更改文档已打勾)做了修改,并记录下来点击保存.然后退出回到前一屏点击: 生成信息文档修改对象创建完成红框中的函数名即为更新程序三. 在程序中, (修改前的字段内容和修改后的字段内容)调用更新函数来记录修改日志.      call function ' ZMG_TEST001_WRITE_DOCUMENT'

3、60;       exporting          objectid                = lv_obid“对象值 如PO号          

4、;tcode                   = sy-tcode“修改记录的tocde          utime               

5、;    = sy-uzeit“当前时间          udate                   = sy-datum“当前日期         &#

6、160;username                = sy-uname“修改人          object_change_indicator = 'U'          n_zmms

7、p1                = zmmsp1 “修改后的数据记录(单条)          o_zmmsp1                = zmms

8、p1_old“修改前的数据记录(单条)          upd_zmmsp3              = 'U'        tables         &

9、#160;icdtxt_zmm_sp           = icdtxt          xzmmsp2                 = zmmsp2_new“修改后的数据记录(多条)

10、0;         yzmmsp2                 = zmmsp2_old.“修改前的数据记录(多条)四. SE37创建读出日志并显示的函数Z_READ_HISTORY函数相关属性如下:IMPORTTABLESSource code  data:editpos type 

11、;table of cdred  with header line,       aeditpos type table of cdred with header line.  data:wk_repid type repid.  if tablekey is initial.  

12、0; call function 'CHANGEDOCUMENT_READ'      exporting        objectclass                = objectclass   

13、60;    objectid                   = objectid        username             &#

14、160;     = username        tablename                  = tablename      tables    

15、0;   editpos                    = aeditpos      exceptions        no_position_found    

16、60;     = 1        wrong_access_to_archive    = 2        time_zone_conversion_error = 3        others  &#

17、160;                  = 4.  else.    loop at tablekey .      call function 'CHANGEDOCUMENT_READ'  

18、0;     exporting          objectclass                = objectclass          objectid 

19、                  = objectid          tablekey                  &

20、#160;= tablekey-tabkey          tablename                  = tablename          username  

21、                 = username        tables          editpos          &#

22、160;         = editpos        exceptions          no_position_found          = 1    &

23、#160;     wrong_access_to_archive    = 2          time_zone_conversion_error = 3          others       &#

24、160;             = 4.      loop at editpos.        append editpos to aeditpos.      endloop.  &

25、#160; endloop.  endif.  if aeditpos is initial.    message s010(zac00).  else.    if tcode ne space.      delete aeditpos where tcode ne

26、0;tcode.    endif.    wk_repid = objectclass.    call function 'CHANGEDOCUMENT_DISPLAY'      exporting        i_applicationid = wk_r

27、epid        i_objectclas    = objectclass      tables        i_cdred         = aeditpos.  endif.注: 修改日志在AEDITPOS表中,可以按需自己定义输入的屏幕,不需要调用函数CHANGEDOCUMENT_DISPLAY输出五.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论