非法修改系統中的程式

qiujun發表於2008-06-20

今天給大家提供兩個非法修改系統程式的方法,比較實用。

對於ABAPer,有時在寫程式時總會遇到反覆測試的問題,可是在DEV中,資料會不全,測不出效果。在QAS上測每次都要請BASIS傳請求號到QAS,反反覆覆大家都不方便。

用下面的兩種方法就不用請BASIS就可以自己在QAS中改程式了,在PRD(有一點風險,個人負責哦~~~)中也可以直接改程式碼

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了。

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90072/viewspace-1005874/,如需轉載,請註明出處,否則將追究法律責任。

相關文章