使用cds view annotation实现SAP UI5的drop down list效果
发布日期:2021-06-30 14:05:10
浏览次数:3
分类:技术文章
本文共 7363 字,大约阅读时间需要 24 分钟。
class ZCL_ZJERRY_SANDBOX_DPC_EXT definition public inheriting from ZCL_ZJERRY_SANDBOX_DPC create public .public section. methods /IWBEP/IF_MGW_APPL_SRV_RUNTIME~GET_ENTITYSET redefinition .protected section.private section. methods FILL_STATUS_TEXT changing !CR_ENTITYSET type ref to DATA . methods GET_DOMAIN_LIST returning value(RT_RESULT) type DD07V_T . methods GET_STATUS_LIST exporting !ER_ENTITYSET type ref to DATA .ENDCLASS.CLASS ZCL_ZJERRY_SANDBOX_DPC_EXT IMPLEMENTATION.*---------------------------------------------------------------------------------------+* | Instance Public Method ZCL_ZJERRY_SANDBOX_DPC_EXT->/IWBEP/IF_MGW_APPL_SRV_RUNTIME~GET_ENTITYSET* +-------------------------------------------------------------------------------------------------+* | [--->] IV_ENTITY_NAME TYPE STRING(optional)* | [--->] IV_ENTITY_SET_NAME TYPE STRING(optional)* | [--->] IV_SOURCE_NAME TYPE STRING(optional)* | [--->] IT_FILTER_SELECT_OPTIONS TYPE /IWBEP/T_MGW_SELECT_OPTION(optional)* | [--->] IT_ORDER TYPE /IWBEP/T_MGW_SORTING_ORDER(optional)* | [--->] IS_PAGING TYPE /IWBEP/S_MGW_PAGING(optional)* | [--->] IT_NAVIGATION_PATH TYPE /IWBEP/T_MGW_NAVIGATION_PATH(optional)* | [--->] IT_KEY_TAB TYPE /IWBEP/T_MGW_NAME_VALUE_PAIR(optional)* | [--->] IV_FILTER_STRING TYPE STRING(optional)* | [--->] IV_SEARCH_STRING TYPE STRING(optional)* | [--->] IO_TECH_REQUEST_CONTEXT TYPE REF TO /IWBEP/IF_MGW_REQ_ENTITYSET(optional)* | [<---] ER_ENTITYSET TYPE REF TO DATA* | [<---] ES_RESPONSE_CONTEXT TYPE /IWBEP/IF_MGW_APPL_SRV_RUNTIME=>TY_S_MGW_RESPONSE_CONTEXT* | [!CX!] /IWBEP/CX_MGW_BUSI_EXCEPTION* | [!CX!] /IWBEP/CX_MGW_TECH_EXCEPTION* +-------------------------------------------------------------------------------------- METHOD /iwbep/if_mgw_appl_srv_runtime~get_entityset. CASE iv_entity_name. WHEN 'OrderStatus'. get_Status_list( IMPORTING er_entityset = er_entityset ). WHEN OTHERS. TRY. CALL METHOD super->/iwbep/if_mgw_appl_srv_runtime~get_entityset EXPORTING iv_entity_name = iv_entity_name iv_entity_set_name = iv_entity_set_name iv_source_name = iv_source_name it_filter_select_options = it_filter_select_options it_order = it_order is_paging = is_paging it_navigation_path = it_navigation_path it_key_tab = it_key_tab iv_filter_string = iv_filter_string iv_search_string = iv_search_string io_tech_request_context = io_tech_request_context IMPORTING er_entityset = er_entityset es_response_context = es_response_context. CATCH /iwbep/cx_mgw_busi_exception . CATCH /iwbep/cx_mgw_tech_exception . ENDTRY. IF iv_entity_name = 'Z_C_OrderType'. fill_status_text( CHANGING cr_entityset = er_entityset ). ENDIF. ENDCASE. ENDMETHOD.*---------------------------------------------------------------------------------------+* | Instance Private Method ZCL_ZJERRY_SANDBOX_DPC_EXT->FILL_STATUS_TEXT* +-------------------------------------------------------------------------------------------------+* | [<-->] CR_ENTITYSET TYPE REF TO DATA* +-------------------------------------------------------------------------------------- method FILL_STATUS_TEXT. FIELD-SYMBOLS: TYPE zcl_zjerry_sandbox_mpc=>tt_z_c_ordertype. ASSIGN cr_entityset->* TO . DATA(idd07v) = get_domain_list( ). LOOP AT ASSIGNING FIELD-SYMBOL(). READ TABLE idd07v ASSIGNING FIELD-SYMBOL( ) WITH KEY domvalue_l = -order_status. IF sy-subrc = 0. -order_status_text = -ddtext. ENDIF. ENDLOOP. endmethod.* ---------------------------------------------------------------------------------------+* | Instance Private Method ZCL_ZJERRY_SANDBOX_DPC_EXT->GET_DOMAIN_LIST* +-------------------------------------------------------------------------------------------------+* | [<-()] RT_RESULT TYPE DD07V_T* +-------------------------------------------------------------------------------------- method GET_DOMAIN_LIST. CALL FUNCTION 'DD_DOMVALUES_GET' EXPORTING domname = 'ZORDER_STATUS_DOMAIN' "<-- Your Domain Here text = 'X' langu = sy-langu TABLES dd07v_tab = rt_result EXCEPTIONS wrong_textflag = 1 OTHERS = 2. endmethod.*---------------------------------------------------------------------------------------+* | Instance Private Method ZCL_ZJERRY_SANDBOX_DPC_EXT->GET_STATUS_LIST* +-------------------------------------------------------------------------------------------------+* | [<---] ER_ENTITYSET TYPE REF TO DATA* +-------------------------------------------------------------------------------------- METHOD get_status_list. FIELD-SYMBOLS: TYPE STANDARD table. CREATE DATA er_entityset TYPE zcl_zjerry_sandbox_mpc=>tt_orderstatus. ASSIGN er_entityset->* TO . DATA(idd07v) = get_domain_list( ). LOOP AT idd07v ASSIGNING FIELD-SYMBOL(). DATA(list) = value zcl_zjerry_sandbox_mpc=>ts_orderstatus( code = -domvalue_l text = -ddtext ). APPEND list to . ENDLOOP. ENDMETHOD.ENDCLASS.class ZCL_ZJERRY_SANDBOX_MPC_EXT definition public inheriting from ZCL_ZJERRY_SANDBOX_MPC create public .public section. methods DEFINE redefinition .protected section.private section.ENDCLASS.CLASS ZCL_ZJERRY_SANDBOX_MPC_EXT IMPLEMENTATION.* ---------------------------------------------------------------------------------------+* | Instance Public Method ZCL_ZJERRY_SANDBOX_MPC_EXT->DEFINE* +-------------------------------------------------------------------------------------------------+* | [!CX!] /IWBEP/CX_MGW_MED_EXCEPTION* +-------------------------------------------------------------------------------------- method DEFINE. super->define( ). zcl_fis_shlp_annotation=>create( io_odata_model = model io_vocan_model = vocab_anno_model iv_namespace = 'sap' iv_entitytype = 'Z_C_OrderType' iv_property = 'order_status' iv_search_help = space iv_search_supported = abap_false iv_search_help_field = space iv_valuelist_entityset = 'OrderStatusEntitySet' iv_valuelist_property = 'Code' ##NO_TEXT )->add_display_parameter( iv_valuelist_property = 'Text' ). data(lo_txt_property) = model->get_entity_type( 'Z_C_OrderType' )->get_property( 'order_status' ). lo_txt_property->set_value_list( /iwbep/if_mgw_odata_property=>gcs_value_list_type_property-fixed_values ). data(lo_text_anno) = lo_txt_property->/iwbep/if_mgw_odata_annotatabl~create_annotation( 'sap' ). lo_text_anno->add( iv_key = 'text' iv_value = 'order_status_text'). lo_txt_property = model->get_entity_type( 'OrderStatus' )->get_property( 'Code' ). lo_txt_property->set_value_list( /iwbep/if_mgw_odata_property=>gcs_value_list_type_property-fixed_values ). lo_text_anno = lo_txt_property->/iwbep/if_mgw_odata_annotatabl~create_annotation( 'sap' ). lo_text_anno->add( iv_key = 'text' iv_value = 'Text'). endmethod.ENDCLASS.
转载地址:https://jerry.blog.csdn.net/article/details/103896456 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年04月27日 08时56分04秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
linux 根目录下文件夹分析
2019-04-30
linux 查看分区和文件大小
2019-04-30
Not using PCAP_FRAMES 解释(snort中)
2019-04-30
技术转管理?这些“坑”你要绕道走
2019-04-30
领域驱动设计(DDD)前夜:面向对象思想
2019-04-30
Camera驱动调试小记
2019-04-30
对于中断函数返回值的分析
2019-04-30
四线触摸屏原理
2019-04-30
C/C++如何返回一个数组/指针
2019-04-30
腾讯AI语音识别API踩坑记录
2019-04-30
YbtOJ——递推算法【例题4】传球游戏
2019-04-30
YbtOJ——字符串处理【例题1】数字反转
2019-04-30
转trt步骤记录
2019-05-01
MatConvNet安装
2019-05-01
依赖错误
2019-05-01
ROS安装与卸载
2019-05-01
安装openrave 0.9的各种依赖包
2019-05-01
trajopt代码使用
2019-05-01
kpm代码使用细节
2019-05-01