使用RFC创建Odata服务

2020-09-17 05:33发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好乡亲, 我有一...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好乡亲,

我有一个具有一个输入参数并导出嵌套结构的RFC,

嵌套结构具有四个字段,其中五个和第六个字段是两个结构。

示例:

-------------------------------------------------

field1

field2

field3

field4

structure1(其中有4个字段)

structure2(其中有五个字段)

--------------------------------------------------- ---------------------

export参数中的嵌套结构将具有多个值。

导入参数不是输出结构的一部分。

例如,我将在导入参数中输入systemid,并根据它获取人事编号,并在输出结构中获得与该Pernr相关的多个条目。

到目前为止,RFC工作正常。

现在,我想创建一个OData服务来利用此RFC。

在服务查询中,我仅将sys ID作为输入传递,并应获得输出结构。

不需要关联或导航。

我的问题是:

1)在没有任何复杂性的情况下实现此目的的最佳方法是什么(我发现大多数示例都具有关联性并且相当复杂)?

2)我尝试从RFC导入并映射单个数据字段。

但是如何映射输入参数(sysid),因为输出结构中没有相同的(sysid)?

4条回答
nice_wp
2020-09-17 06:01

嗨Subhajit,

我们在结构中具有sysid,可以在ls_sysid中获取sysid详细信息,并可以传入RFC并获取详细信息。

尝试。

呼叫方法超级方法>方法
导出
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
is br> it_navigation_path = it_navigation_path
it_order = it_order
iv_filter_string = iv_filter_string
iv_search_string = iv_search_string
io_tech_request_context = io_tech_request_context
IMPORTING
主题集/iwbep/cx_mgw_busi_exception。
捕获/iwbep/cx_mgw_tech_exception。
ENDTRY。

在it_filter_select_options INTO ls_filter处循环播放。

如果ls_filter-property ='SYSID'。
读取表ls_filter-select_options INTO ls_select索引1。
如果sy-subrc是INITIAL。
ls_sysid = ls_select-low。
ENDIF。 br> ENDIF。

ENDLOOP。

一周热门 更多>