目錄
- alv單元格跳轉RCS子產品 FPM應用Webdynpro界面
-
- 源代碼截圖
alv單元格跳轉RCS子產品 FPM應用Webdynpro界面
功能需求:通過alv的單元格跳轉到 FPM的Webdynpro界面,例如:通過項目辨別跳轉到項目對應的總預算成本Webdynpro功能界面。
源代碼截圖
把使用的方法封裝函數,後續根據業務需要可通過調用函數使用:
FUNCTION zfm_click_to_prj.
*"----------------------------------------------------------------------
*"*"本地接口:
*" IMPORTING
*" VALUE(I_OBJ) TYPE SOBJ_NAME
*" REFERENCE(I_KEY) TYPE /BOBF/CONF_KEY
*" EXPORTING
*" VALUE(I_URL) TYPE STRING
*" REFERENCE(E_MSG) TYPE BAPIMESSAGE
*"----------------------------------------------------------------------
SELECT SINGLE zlink_url INTO i_url
FROM zrre_url_to_prj
WHERE obj_name = i_obj.
IF sy-subrc = 0.
i_url = i_url && i_key .
CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
document = i_url
EXCEPTIONS
OTHERS = 1.
ELSE.
e_msg = '表ZRRE_URL_TO_PRJ 缺少配置資料!'.
ENDIF.
ENDFUNCTION.
關鍵是方法 cl_gui_frontend_services=>execute 的使用。
需要把FPM的功能界面位址維護到相關的配置表,示例中的配置表為:zrre_url_to_prj。
表字段截圖:

根據需要跳轉的功能界面URL擷取相關的OBJ_NAME:ZRRE_WDA_TGCST_MNT
可通過事務碼SE80 檢視對應FPM應用:
RCS子產品需要在功能界面通過技術幫助找到相關的FPM應用的OBJ_NAME。
User-command代碼示例:
FORM user_command USING u_ucomm TYPE sy-ucomm
us_selfield TYPE slis_selfield.
DATA:lv_msg TYPE bapimessage.
CASE u_ucomm.
WHEN '&IC1'.
READ TABLE gt_zcbys INDEX us_selfield-tabindex INTO DATA(wa_zcbys). "擷取單擊行
IF us_selfield-fieldname = 'XMBM' AND wa_zcbys-xmbm IS NOT INITIAL.
CALL FUNCTION 'ZFM_CLICK_TO_PRJ'
EXPORTING
i_obj = 'ZRRE_WDA_TGCST_MNT'
i_key = wa_zcbys-db_key
IMPORTING
* I_URL = I_URL
e_msg = lv_msg.
IF lv_msg IS NOT INITIAL.
MESSAGE s016 DISPLAY LIKE 'E'.
ENDIF.
ENDIF.
ENDCASE.
us_selfield-refresh = 'X'.
CLEAR u_ucomm.
ENDFORM.
效果截圖;
點選項目辨別單元格實作跳轉: