ME53N 增加按钮,调用URL
最近遇到一个需求,就是在ME52N,ME53N上增加一个按钮,调用程序直接登录别的系统查看PR对应的单据(这里使用网址代替)
1.添加自定义按钮
打开函数组MEGUI->找到名为REQ的Status(如果对ME23N增强是选择NORMAL)点击上方的
直接添加一个BUTTON:ZCALLOAURL
注意这里修改时需要选择编辑->修改操作->关闭助手
2. 添加隐式增强
在我们加好按钮之后,我们需要对按钮增加相对应的逻辑,通过SE38 打开include LMEGUICJL 程序 在Method lcl_document_cmd->if_command_mm~execute 的最后做隐式增强 ZMM_TAB_CUSTOM_BUTTON,然后添加如下的代码
代码语言:javascript复制CASE im_fcode.
WHEN 'ZCALLURL'.
IF SY-TCODE EQ 'ME52N' OR SY-TCODE = 'ME53N'.
DATA(l_transaction_oaurl) = l_appl->my_trmgr->get_current( ).
READ TABLE l_transaction_oaurl->my_data ASSIGNING FIELD-SYMBOL(<fs_oaurl>) INDEX 1.
IF <fs_oaurl>-doc_key IS NOT INITIAL."这里doc_key是PR Number
"当PR存在时调用链接
data lv_url TYPE string.
lv_url = 'www.baidu.com'.
CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
document = lv_url
EXCEPTIONS
OTHERS = 1.
IF sy-subrc NE 0.
MESSAGE s368(00) WITH '打开连接失败' '' DISPLAY LIKE 'E'.
RETURN.
ENDIF.
ENDIF.
ENDIF.
WHEN OTHERS.
ENDCASE.
其中<fs_oaurl>对应的结构是:doc_key存放着的是PR号码
3. ME5XN效果
完成后,我们在ME53N,选择一个PR后,点击调用链接,就可以跳转到百度首页了