SAP实现页面跳转(穿透)
创始人
2024-06-01 18:56:29

SAP实现页面跳转

一、刷新页面:
  1. 代码:

    FORM frm_user_command USING r_ucomm LIKE sy-ucommrs_selfield TYPE slis_selfield.DATA gv_str TYPE string.
    *刷新alvDATA:lob_grid TYPE REF TO cl_gui_alv_grid.CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'IMPORTINGe_grid = lob_grid.CALL METHOD lob_grid->check_changed_data.rs_selfield-refresh = 'X'.rs_selfield-col_stable = 'X'.rs_selfield-row_stable = 'X'.CASE r_ucomm.WHEN '&INTO'.PERFORM frm_bapi_data."批次特性匯入PERFORM frm_bapi_alldata."文件匯入WHEN '&IC1'."页面跳转IF rs_selfield-fieldname = 'AUFNR'.gv_str = rs_selfield-value+0(2).IF gv_str = '45' OR gv_str = '48'."採購單set PARAMETER ID 'BSA' field 'ZNB'.set PARAMETER ID 'BES' field rs_selfield-value.call TRANSACTION 'ME23N'.ELSEIF gv_str = '55'.PERFORM frm_bdcme39 USING rs_selfield-value.ELSE."訂單PERFORM frm_bdcco03 USING rs_selfield-value.ENDIF.ELSEIF rs_selfield-fieldname = 'MBLNR'.IF rs_selfield-value IS NOT INITIAL.PERFORM frm_bdcmbl USING rs_selfield-value.ENDIF.ENDIF.ENDCASE.rs_selfield-refresh = 'X'.
    "宽度自适应gt_layo-cwidth_opt = 'X'.CALL METHOD lob_grid->set_frontend_layoutEXPORTINGis_layout = gt_layo.CALL METHOD lob_grid->refresh_table_display " 功能A: 基本显示EXCEPTIONSfinished = 1OTHERS   = 2.CALL METHOD lob_grid->refresh_table_display.
    ENDFORM.
    
  2. 注意:刷新时,工具栏会再次出现,可以设置gt_layo的参数no_toolar来去掉工具栏

二、页面跳转:
  1. 使用SET PARAMETER和CALL TRANSACTION语句跳转:

    案例一:

    CASE r_ucomm.WHEN '&INTO'.PERFORM frm_bapi_data."批次特性匯入PERFORM frm_bapi_alldata."文件匯入WHEN '&IC1'."页面跳转IF rs_selfield-fieldname = 'AUFNR'.gv_str = rs_selfield-value+0(2).IF gv_str = '45' OR gv_str = '48'."採購單set PARAMETER ID 'BSA' field 'ZNB'.set PARAMETER ID 'BES' field rs_selfield-value.call TRANSACTION 'ME23N'.ELSEIF gv_str = '55'.PERFORM frm_bdcme39 USING rs_selfield-value.ELSE."訂單PERFORM frm_bdcco03 USING rs_selfield-value.ENDIF.ELSEIF rs_selfield-fieldname = 'MBLNR'.IF rs_selfield-value IS NOT INITIAL.PERFORM frm_bdcmbl USING rs_selfield-value.ENDIF.ENDIF.ENDCASE.
    
  2. MIGO时需要通过函数MIGO_DIALOG进行跳转

    CALL FUNCTION 'MIGO_DIALOG'EXPORTINGI_ACTION                  = 'A04'I_REFDOC                  = 'R02'I_MBLNR                   = '4900000324'I_MJAHR                   = '2018'EXCEPTIONSILLEGAL_COMBINATION       = 1OTHERS                    = 2.
    IF sy-subrc <> 0.
    * Implement suitable error handling here
    ENDIF.
    

相关内容

热门资讯

达嘉维康:积极推进AI技术促进... 证券之星消息,达嘉维康(301126)01月13日在投资者关系平台上答复投资者关心的问题。 投资者提...
远光软件:AI引领企业数智化管... 证券之星消息,远光软件(002063)01月12日在投资者关系平台上答复投资者关心的问题。 投资者提...
青海4名评标专家“饿晕”当天经... 转自:扬子晚报据中国新闻周刊,近日,青海省数据局通报4名评标专家因身体不适拒评标,引发关注。2026...
这家公司控股股东变更!还被隐形... 来源:@证券日报之声微博本报记者 张晓玉1月13日晚间,国家电投集团产融控股股份有限公司(以下简称“...
AI4S又一瓶颈被攻克:两个A... 深势科技 投稿 量子位 | 公众号 QbitAI 过去几十年里,科学计算领域积累了数量空前的开源软...