RFC的基于SADL的服务

2020-08-23 13:39发布

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

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


我们有一个自定义RFC,我们将通过Service Builder将其作为OData服务公开。 通过服务生成器公开RFC没问题。 但是,我们正在尝试使用分析列表报告模板来使用分析表。 为此,我们需要尺寸和措施。 我们能够在SEGW中添加sap:aggregate标签,然后覆盖MPC_EXT定义方法,从而为元数据添加维度和度量。 但是,IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS没有选项来指定RFC的聚合逻辑。

我们正在遵循SADL OData指南,但是似乎无法重新定义IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS;

谢谢

周杰伦

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

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


我们有一个自定义RFC,我们将通过Service Builder将其作为OData服务公开。 通过服务生成器公开RFC没问题。 但是,我们正在尝试使用分析列表报告模板来使用分析表。 为此,我们需要尺寸和措施。 我们能够在SEGW中添加sap:aggregate标签,然后覆盖MPC_EXT定义方法,从而为元数据添加维度和度量。 但是,IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS没有选项来指定RFC的聚合逻辑。

我们正在遵循SADL OData指南,但是似乎无法重新定义IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS;

谢谢

周杰伦

付费偷看设置
发送
8条回答
小灯塔
1楼-- · 2020-08-23 14:33

杰伊,你好

请参阅以下博客 https://blogs.sap .com/2018/01/12/fiori-elements-analytical-table-with-sadl/通过 Joseph BERTHE

在这里可以找到另一个指向以下PDF的链接

https://archive.sap.com/kmuuid2/b0405b7f-c1d2-3110-79bd-ce64f64ea6b7/How%20to%20Use%20OData%20Analytics%20in%20SADL-Based%20Services.pdf

在第10页上,您将找到示例代码,该示例代码如何通过MPC_EXT中基于代码的实现(例如

)添加上述注释。
 DATA(lo_entity_type)=模型-> get_entity_type('FlightType')。  lo_entity_type-> set_semantic(/iwbep/if_ana_odata_types => gcs_ana_odata_semantic_value-查询-聚合)。

代楠1984
2楼-- · 2020-08-23 14:12

安德烈,

感谢您的快速回复。 问题是我在我可以重新定义的DPC_EXT类中看不到IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS。 我将数据源作为RFC。 我能够覆盖MPC_EXT中的DEFINE来设置尺寸和尺寸。 但是现在我想覆盖IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS,但是我看不到它。 我看不到为该类实现的IF_SADL_GW_QUERY_CONTROL接口。 我尝试将接口手动添加到类中,然后实现该方法,但这没有用(我不认为可以,但是给了我一个机会)。

编写代码不是问题,但是要添加代码是一个问题。

谢谢

Jay

骆驼绵羊
3楼-- · 2020-08-23 14:26

IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS仅在使用映射数据源方法并且使用CDS视图进行查询和读取访问的情况下可用。

因此 您将不得不在从RFC收到的结果之上处理分析查询选项。 但是我怀疑这是否可能,即使它可行,也不是一件容易的事。

如果您运行的是740或更高版本,我建议创建CDS视图以读取数据而不是 使用RFC功能模块。

然后,您将可以按照 Joseph BERTHE 中概述的方法进行操作。

最诚挚的问候

安德烈

lukcy2020
4楼-- · 2020-08-23 14:15

嗨安德烈

感谢您的回答。 RFC实际上非常复杂-甚至从SAP ECC到APO都进行了调用-因此CDS视图将不起作用。 一种想法是创建一个CDS视图包装,然后在DPC_EXT类中,重写方法GET_ENTITYSET并进行聚合-但我不确定这种方法是否有意义。

此致

Jay

Violet凡
5楼-- · 2020-08-23 14:29

嗨安德烈,

感谢您的快速回复。 问题是我在我可以重新定义的DPC_EXT类中看不到IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS。 我将数据源作为RFC。 我能够覆盖MPC_EXT中的DEFINE来设置尺寸和尺寸。 但是现在我想覆盖IF_SADL_GW_QUERY_CONTROL〜SET_QUERY_OPTIONS,但是我看不到它。 我看不到为该类实现的IF_SADL_GW_QUERY_CONTROL接口。 我尝试将接口手动添加到类中,然后实现该方法,但这没有用(我不认为可以,但是给了我一个机会)。 编写代码不是问题,但是要添加代码是一个问题。

大道至简
6楼-- · 2020-08-23 14:35

杰伊·马拉(Jay Malla)如果您的数据来自功能模块,则将无法使用SADL。 该框架会查询数据库表。

我建议您查看一下功能模块,看看是否可以用CDS视图替换它。 因此可以使用SADL。

我不确定您是否可以将分析表与RFC功能一起使用。 所有的机制都很复杂。

一周热门 更多>