(精选文档)sap表修改记录查询.docx

上传人:rrsccc 文档编号:9001458 上传时间:2021-01-29 格式:DOCX 页数:12 大小:59.25KB
返回 下载 相关 举报
(精选文档)sap表修改记录查询.docx_第1页
第1页 / 共12页
(精选文档)sap表修改记录查询.docx_第2页
第2页 / 共12页
(精选文档)sap表修改记录查询.docx_第3页
第3页 / 共12页
(精选文档)sap表修改记录查询.docx_第4页
第4页 / 共12页
(精选文档)sap表修改记录查询.docx_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《(精选文档)sap表修改记录查询.docx》由会员分享,可在线阅读,更多相关《(精选文档)sap表修改记录查询.docx(12页珍藏版)》请在三一文库上搜索。

1、目录SAP表修改记录查询1更改记录表CDHDR和CDPOS2SAP保存操作记录CDHDR和CDPOS表2通过CDHDR CDPOS获取增量数据7其他方式11SAP表修改记录查询SAP中修改频率较低的定制表(T001等)一般都会有修改记录存在,查看一个表有没有修改记录可以在SE11中查看他的技术设置,如果其中的LOG DATA CHANGES选中则表示此表有历史修改记录存在。要查看他的修改记录可以使用Tcode:SCU3 。菜单路径:工具定制IMGIMG Logging参考说明:http:/ . cfab6d/frameset.htm系统读取历史修改记录的Function : DBLOG_REA

2、D_WITH_STATISTIC转载:http:/ 通过&sap_edit 可以修改表,修改表后如何查看呢。 分两步进行。1. 事务码 SE16N, 然后输入表SE16N_CD_Key, 输入相应的查询条件。例如 table 名,查出相应的ID2. 事务码 SE16N,然后输入表 SE16N_CD_DATA, 输入相应的ID,就可以查询到修改的内容。其他方式: 表DBTABLOGCDHDR更改日志表头CDPOS更改日志行项目查询用户的最近一次登陆日期和时间,USR02中有个上次登陆日期和登陆时间;或者用SE38跑下RSUSR200,输入用户名即可查询上次登陆日期还有个方法是ST03N,专家模式

3、,选择时间段,选择user和user profile,可惜,小弟权限不够没法测试更改记录表CDHDR和CDPOSSE16N查询CDPOS表,在字段OBJECTCLAS(更改文档对象,VERKBELEG表示销售凭证,不同的凭证类别代码不同的文档对象,如需查看文档对象,可使用事务代码SCDO,相关表为TCDOB/TCDOBT)中输入:VERKBELEG,TABNAME(表名)输入:VBAK/VBAP(VBAK查询整张订单、VBAP查询订单行项目),CHNGIND(修改标识符)输入:D(U表示更新,I表示插入,E表示删除单个字段,D表示删除整行或整个单据),执行后,字段OBJECTID(对象价值)表

4、示订单号码,字段TABKEY(表键)中的最后两位表示订单行号,同理,我们可查看其他删除或修改的各种单据和凭证。SAP保存操作记录CDHDR和CDPOS表转载自http:/ FUNCTION CHANGEDOCUMENT_READ_POSITIONS Change document: Read change document itemsEXPORTING*archive_handle = 0 sy-tabixHandle on Open Archive Fileschangenumber = cdpos-changenrChange document number*tablekey = SPAC

5、E cdpos-tabkeyObject class table key*tablename = SPACE cdpos-tabnameObject class table name*tablekey254 = SPACE cdpos_uid-tabkeyTable Key for CDPOS in Character 254*keyguid = SPACE cdpos_uid-keyguidUUID in Character Format*keyguid_str = SPACE cdpos_str-keyguidUUID in Character FormatIMPORTINGheader

6、= cdhdrChange document header (structure CDHDR)et_cdred_str = cdred_str_tabAdditional Change Document - Table for STRINGs* TABLES*editpos = cdshwTable with edited change document itemsEDITPOS_WITH_HEADER=CDRED更改文档,显示结构EXCEPTIONSNO_POSITION_FOUND = 1No item founWRONG_ACCESS_TO_ARCHIVE = 2incorrect ac

7、cess to archive2)使用select语句直接从表中读取。直接使用SELECT语句读取数据的示例:*提取信用额度字段修改的抬头信息select cdhdrchangenr cdhdrudate cdhdrutime into corresponding fields of table p_cdhdr from cdhdr where cdhdrobjectclas = KLIM and cdhdrobjectid = wa_customerinfo-kunnr. if sy-subrc = 0. *提取信用额度字段修改的字段值select cdposchangenr cdposva

8、lue_old cdposvalue_new into corresponding fields of table p_cdpos from cdpos for all entries in p_cdhdr where cdposobjectclas = KLIM and cdposobjectid = wa_customerinfo-kunnr and cdposchangenr = p_cdhdr-changenr and cdpostabname = KNKK and cdposfname = KLIMK. if sy-subrc = 0. endif. endif.可以在CHANGED

9、OCUMENT_READ_HEADERS中设置中断获得对象类型。ex.提取有变动的Acc. changesSELECT SINGLE tabkey value_newINTO (cdpos-tabkey,ikoinh)FROM cdposWHEREobjectclas = KREDAND objectid = itab-lifnrAND changenr = itab-changenrAND tabname = LFBKAND fname = KOINH.提取有变动的vendor最新日期SELECT MAX( udate ) INTO itab-cndate FROM cdhdrWHERE o

10、bjectclas = KRED AND objectid = itab-lifnr.-抓取所有有变动的程序report ztest001.TYPE-POOLS slis.DATA : cdhdr TYPE cdhdr.SELECT-OPTIONS :s_objcls FOR cdhdr-objectclas OBLIGATORY,s_objtid FOR cdhdr-objectid,s_chngnr FOR cdhdr-changenr,s_usrnam FOR cdhdr-username DEFAULT sy-uname,s_udateFOR cdhdr-udateDEFAULT sy

11、-datum,s_timeFOR cdhdr-utime,s_tcodeFOR cdhdr-tcode,s_plncnr FOR cdhdr-planchngnr,s_chngno FOR cdhdr-act_chngno,s_wsplnd FOR cdhdr-was_plannd,s_chngid FOR cdhdr-change_ind.SELECTION-SCREEN SKIP.PARAMETERS p_max TYPE numc3 OBLIGATORY DEFAULT 200.*-*TYPES :BEGIN OF ty_s_cdhdr.INCLUDE STRUCTURE cdhdr.T

12、YPES : checkbox,END OF ty_s_cdhdr,BEGIN OF ty_s_cdpos.INCLUDE STRUCTURE cdpos.TYPES : checkbox,END OF ty_s_cdpos.*-*DATA :* Layout for ALVgs_layout TYPE slis_layout_alv,* Change document headert_cdhdr TYPE TABLE OF ty_s_cdhdr.*-*START-OF-SELECTION.* Read Change document headerSELECT * INTO TABLE t_c

13、dhdrUP TO p_max ROWSFROM cdhdrWHERE objectclas IN s_objclsand objectidin s_objtidand changenrin s_chngnrAND usernameIN s_usrnamAND udateIN s_udateAND utimeIN s_timeAND tcodeIN s_tcodeAND planchngnr IN s_plncnrAND act_chngno IN s_chngnoAND was_plannd IN s_wsplndAND change_ind IN s_chngid.gs_layout-ze

14、bra = X.gs_layout-colwidth_optimize = X.gs_layout-box_fieldname = CHECKBOX.* Display ALVCALL FUNCTION REUSE_ALV_GRID_DISPLAYEXPORTINGi_callback_program= sy-cprogi_callback_user_command = USER_COMMANDi_structure_name= CDHDRis_layout= gs_layoutTABLESt_outtab= t_cdhdr.*-*FORM USER_COMMAND*-*FORM user_c

15、ommand USING u_ucommTYPE syucommus_selfield TYPE slis_selfield.#EC CALLED* Macro definitionDEFINE m_sort.add 1 to ls_sort-spos.ls_sort-fieldname = &1.ls_sort-up = X.append ls_sort to lt_sort.END-OF-DEFINITION.DATA :ls_cdhdr TYPE ty_s_cdhdr,ls_sortTYPE slis_sortinfo_alv,lt_sortTYPE slis_t_sortinfo_al

16、v,*Change document itemslt_cdpos TYPE TABLE OF ty_s_cdpos.CASE u_ucomm.WHEN &IC1.PERFORM check_marked USING us_selfield.*Read Change document itemsLOOP AT t_cdhdr INTO ls_cdhdr WHERE checkbox = X.SELECT * APPENDING TABLE lt_cdposFROM cdposWHERE objectclas = ls_cdhdr-objectclasAND objectid= ls_cdhdr-

17、objectidAND changenr= ls_cdhdr-changenr.ENDLOOP.m_sort CHANGENR.*Display ALVCALL FUNCTION REUSE_ALV_GRID_DISPLAYEXPORTINGi_structure_name = CDPOSis_layout= gs_layoutit_sort= lt_sortTABLESt_outtab= lt_cdpos.ENDCASE.ENDFORM. USER_COMMAND*-FORM check_marked USING us_selfield TYPE slis_selfield.FIELD-SY

18、MBOLS : TYPE ty_s_cdhdr.READ TABLE t_cdhdr TRANSPORTING NO FIELDS WITH KEY checkbox = X.IF NOT sy-subrc IS INITIAL ANDNOT us_selfield-tabindex IS INITIAL.READ TABLE t_cdhdr INDEX us_selfield-tabindex ASSIGNING .-checkbox = X.ENDIF.ENDFORM.通过CDHDR CDPOS获取增量数据REPORT zscm_vendor2 LINE-SIZE 1023.DATA: B

19、EGIN OF itab OCCURS 0, spras LIKE lfa1-spras, lifnr LIKE lfa1-lifnr, name1 LIKE adrc-name1, name3 LIKE adrc-name3, regio LIKE lfa1-regio, stras LIKE lfa1-stras, str_suppl1 LIKE adrc-str_suppl1, pstlz LIKE lfa1-pstlz, telf1 LIKE lfa1-telf1, telfx LIKE lfa1-telfx, name2 LIKE knvk-name1, smtp_addr LIKE

20、 adr6-smtp_addr, buy_id(12) TYPE c, stceg LIKE lfa1-stceg, banka LIKE bnka-banka, bankn LIKE lfbk-bankn, vendor_type(3) TYPE c,*balance_type(4) TYPE c, END OF itab.DATA: BEGIN OF itab_temp OCCURS 0 , adrnr LIKE lfa1-adrnr. INCLUDE STRUCTURE itab.DATA: END OF itab_temp.DATA: BEGIN OF itab_adrc OCCURS

21、 0,addrnumber LIKE adrc-addrnumber,name1 LIKE adrc-name1,name3 LIKE adrc-name3,str_suppl1 LIKE adrc-str_suppl1,smtp_addr LIKE adr6-smtp_addr, END OF itab_adrc.DATA: BEGIN OF itab_knvk OCCURS 0, lifnr LIKE lfa1-lifnr, name2 LIKE knvk-name1, END OF itab_knvk.DATA: BEGIN OF itab_bnka OCCURS 0, lifnr LI

22、KE lfbk-lifnr, banka LIKE bnka-banka, bankn LIKE lfbk-bankn, END OF itab_bnka.DATA: BEGIN OF itab_lfb1 OCCURS 0, lifnr LIKE lfb1-lifnr, bukrs LIKE lfb1-bukrs, zterm LIKE lfb1-zterm, END OF itab_lfb1.DATA: changenr LIKE zcdhdr_max-changenr.PARAMETER: date TYPE syst-datum.DATA: BEGIN OF itab_object OC

23、CURS 0, objectid LIKE lfa1-lifnr , END OF itab_object.PERFORM getvendordata.*&-*& Form getvendordata*&-*FORM getvendordata.* get max changenr* SELECT MAX( zcdhdr_maxchangenr )* INTO changenr* FROM zcdhdr_max* WHERE zcdhdr_maxerdat changenr AND cdhdrudate = date . LOOP AT itab_object. IF itab_object-

24、objectid+0(1) = B.“B为公司职员 DELETE itab_object. ENDIF. ENDLOOP.* DELETE ADJACENT data SORT itab_object. DELETE ADJACENT DUPLICATES FROM itab_object. CHECK NOT itab_object IS INITIAL. SELECT lfa1spras lfa1lifnr lfa1stceg lfa1regio lfa1stras lfa1pstlz lfa1telf1 lfa1telfx lfa1adrnr lfa1ernam AS buy_id lf

25、a1ktokk AS vendor_type INTO CORRESPONDING FIELDS OF TABLE itab_temp FROM lfa1 FOR ALL ENTRIES IN itab_object WHERE lfa1lifnr = itab_object-objectid. SELECT knvklifnr knvkname1 AS name2 INTO CORRESPONDING FIELDS OF TABLE itab_knvk FROM knvk FOR ALL ENTRIES IN itab_object WHERE knvklifnr = itab_object

26、-objectid. SELECT lfbklifnr bnkabanka lfbkbankn INTO CORRESPONDING FIELDS OF TABLE itab_bnka FROM lfbk INNER JOIN bnka ON lfbkbanks = bnkabanks AND lfbkbankl = bnkabankl FOR ALL entries IN itab_object WHERE lfbklifnr = itab_object-objectid. CHECK NOT itab_temp IS INITIAL. SELECT adrcaddrnumber adrcs

27、tr_suppl1 adrcname1 adrcname3 adr6smtp_addr INTO CORRESPONDING FIELDS OF TABLE itab_adrc FROM adrc LEFT JOIN adr6 ON adrcaddrnumber = adr6addrnumber FOR ALL entries IN itab_temp WHERE adrcaddrnumber = itab_temp-adrnr . LOOP AT itab_temp. READ TABLE itab_knvk WITH KEY lifnr = itab_temp-lifnr. IF sy-s

28、ubrc = 0. itab_temp-name2 = itab_knvk-name2. ENDIF. READ TABLE itab_bnka WITH KEY lifnr = itab_temp-lifnr. IF sy-subrc = 0. itab_temp-banka = itab_bnka-banka. itab_temp-bankn = itab_bnka-bankn. ENDIF. READ TABLE itab_adrc WITH KEY addrnumber = itab_temp-adrnr. IF sy-subrc = 0. itab_temp-name1 = itab

29、_adrc-name1. itab_temp-name3 = itab_adrc-name3. itab_temp-str_suppl1 = itab_adrc-str_suppl1. itab_temp-smtp_addr = itab_adrc-smtp_addr. ENDIF. MODIFY itab_temp. MOVE-CORRESPONDING itab_temp TO itab. APPEND itab TO itab . CLEAR itab_temp. ENDLOOP. LOOP AT itab. WRITE:/ itab. ENDLOOP.* CALL FUNCTION WS_DOWNLOAD* EXPORTING* filename = c:vendor.txt* filetype = DAT* TABLES* data_tab = itab.ENDFORM.其他方式Tcode:STAD,SCU3,T03N (注:文档可能无法思考全面,请浏览后下载,供参考。可复制、编制,期待你的好评与关注)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1