克米亚sap论坛,中国最好的sap论坛,sap系统,sap培训,kemiya,克米亚,sap账号,sap ides,sap mm,sap hana,sap fico,sap pp

 找回密码
 注册
查看: 31|回复: 1

UI5开发 – OData Model编程

[复制链接]
kmy 发表于 2019-1-7 09:21:17 | 显示全部楼层 |阅读模式
前面在SEGW中完成了Model的创建工作,接下来我们需要开始写代码,前面说过,在激活Model的时候产生了4个类,MPC两个(Model Provider),DPC两个(Data Provider),在实际开发中,主要基于DPC_EXT进行程序的开发。  

首先我们来看看DCP_EXT几个主要的方法:
可以看到,对于每个entity,都包括了CRUD的操作,其中READ包含GET_ENTITY以及GET_ENTITYSET。
  • GET_ENTITYSET:取得符合筛选条件的多条记录。
  • GET_ENTITY: 取得根据Key值返回的单条记录。
取得plant列表重定义PLANTSET_GET_ENTITYSET方法
    method PLANTSET_GET_ENTITYSET.       SELECT * from t001w       into CORRESPONDING FIELDS OF TABLE et_entityset       UP TO 50 ROWS       where adrnr <> space.      endmethod.  取得plant单条记录    method PLANTSET_GET_ENTITY.       DATA ls_converted_keys LIKE er_entity.       data lv_plant type werks_d.       io_tech_request_context->get_converted_keys(       IMPORTING       es_key_values = ls_converted_keys ).       lv_plant = ls_converted_keys-werks.       CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'       EXPORTING       input = lv_plant       IMPORTING       output = lv_plant.       select single * from t001w into CORRESPONDING FIELDS OF ER_ENTITY       where werks = lv_plant.      endmethod.  根据plant信息,取得address信息 method ADDRESSSET_GET_ENTITY.       data: lt_key_tab TYPE /iwbep/t_mgw_tech_pairs,       ls_keys LIKE LINE OF lt_key_tab.       data: lv_adrnr type AD_ADDRNUM,       lv_werks type werks_d.       CALL METHOD io_tech_request_context->get_source_keys       RECEIVING       rt_source_keys = lt_key_tab.       IF lt_key_tab IS INITIAL.         lt_key_tab = io_tech_request_context->get_source_keys( ).       ENDIF.       read table lt_key_tab INTO ls_keys index 1.       CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'         EXPORTING           input = ls_keys-value         IMPORTING           output = lv_werks.       select single adrnr from t001w into lv_adrnr where werks = lv_werks.       select SINGLE * from adrc into CORRESPONDING FIELDS OF ER_ENTITY         where ADDRNUMBER = lv_adrnr.      endmethod.  根据plant信息,取得geo信息method GEOCODESET_GET_ENTITY.       data: lt_key_tab TYPE /iwbep/t_mgw_tech_pairs,       ls_keys LIKE LINE OF lt_key_tab.       data: lv_adrnr type AD_ADDRNUM,       lv_werks type werks_d.       CALL METHOD io_tech_request_context->get_source_keys       RECEIVING       rt_source_keys = lt_key_tab.       .       IF lt_key_tab IS INITIAL.       lt_key_tab = io_tech_request_context->get_source_keys( ).       ENDIF.       read table lt_key_tab INTO ls_keys index 1.       CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'       EXPORTING       input = ls_keys-value       IMPORTING       output = lv_werks.       select single adrnr from t001w into lv_adrnr where werks = lv_werks.       select SINGLE * from geoloc into CORRESPONDING FIELDS OF ER_ENTITY       where ADDRNUMBER = lv_adrnr.      endmethod.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|克米亚sap论坛,sap账号,sap系统,sap ides,sap学习机,sap练习环境 ( 渝ICP备18002525号-5 )

GMT+8, 2019-1-18 18:30

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表