FPM增强-在tooltip中显示OTR描述
在开发FPM程序时,为了使页面支持多语言,有时候会使用OTR文本(TCode: SOTR_EDIT)。
但在设计页面时无法很直观的看到OTR对应的文本,只有执行APP才能看到文本。
使用下述增强,设计页面时,可以在Form组件的tooltip上显示文本;在List组件的列名上显示文本
- FORM组件
在 类CL_FPM_ADV_FORM_BASE_DATA_MGR,方法GET_STANDARD_ELEMENTS中,增加增强逻辑,源码如下:
ENHANCEMENT 1 ZFPM_SHOW_OTR_TEXT. "active version "如果属性上标签文本为OTR,则在预览页签中input_prompt(输入提示)上,显示对应的描述(不影响用户输入的input_prompt) "mv_design_time = abap_true AND GET PARAMETER ID 'ZSHOW_OTR_TEXT' FIELD DATA(lv_show_otr_text). IF lv_show_otr_text IS NOT INITIAL. LOOP AT et_standard_element ASSIGNING FIELD-SYMBOL(<ls_element>). IF <ls_element>-label_text CS '$OTR:'. DATA(lv_otr) = <ls_element>-label_text. REPLACE ALL OCCURRENCES OF '$OTR:' IN lv_otr WITH ''. <ls_element>-input_prompt = cl_wd_utilities=>get_otr_text_by_alias( lv_otr ). ENDIF. ENDLOOP. ENDIF. ENDENHANCEMENT.
- LIST组件
在 类CL_FPM_LIST_UIBB_CONFIG_DATA,方法GET_COLUMNS_REF中,增加增强逻辑,源码如下:
ENHANCEMENT 1 ZFPM_SHOW_OTR_TEXT_LIST. "active version "如果属性上标题为OTR,则在预览时显示为描述 IF mv_design_time = abap_true. GET PARAMETER ID 'ZSHOW_OTR_TEXT' FIELD DATA(lv_show_otr_text). IF lv_show_otr_text IS NOT INITIAL. LOOP AT rr_columns->* ASSIGNING FIELD-SYMBOL(<ls_columns>). IF <ls_columns>-TEXT CS '$OTR:'. "$OTR:ZSRM_OTR_S/0239 DATA(lv_otr) = <ls_columns>-TEXT. REPLACE ALL OCCURRENCES OF '$OTR:' IN lv_otr WITH ''. <ls_columns>-text = cl_wd_utilities=>get_otr_text_by_alias( |{ lv_otr }| ). ENDIF. ENDLOOP. ENDIF. ENDIF. ENDENHANCEMENT.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本