《非法修改系统中的程序》
对于ABAPer,有时在写程式时总会遇到反复测试的问题,可是在DEV中,数据会不全,测不出效果。在QAS上测每次都要请BASIS传请求号到QAS,反反复复大家都不方便。
用下面的两种方法就不用请BASIS就可以自己在QAS中改程序了,千万别再PRD中使用哦,这个是系统的bug.
NO.1(要有DEBUG权限)
进入SE37,找到TR_EDIT_CHECK_OBJECTS_KEYS,在第429行下断点,429行的代码如下:
*---keys without objects------------------------------------------------
IF wt_e071[] IS INITIAL
AND NOT wt_e071k[] IS INITIAL.
PERFORM raise_error_no_show
TABLES lt_enqueue wt_e071 wt_e071k
USING 0 'TK' 116 ' ' ' ' ' ' ' '
wi_with_dialog wi_send_message
gc_raise2_no_header_object.
ENDIF.
然后就可以进入SE38,SE78输入程式名,点CHANGE就会进入设断点的地方,通过debug把wt_e071[] 反复清空,就可以进入修改程式的界面。
NO.2 (下面的程式必须要QAS系统内)
REPORT zabapprogram.
DATA: BEGIN OF src OCCURS 1,
txt(255) TYPE c,
END OF src.
PARAMETERS: rep LIKE trdir-name.
AT SELECTION-SCREEN.
START-OF-SELECTION.
sy-uname = 'SAP'.
READ REPORT rep INTO src.
EDITOR-CALL FOR src.
IF sy-subrc = 0.
INSERT REPORT rep FROM src.
ENDIF.
运行上面的程式,输入要改的程式名,改好后保存,就OK了。
 
                    
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号