是否可以使用基于CDS和基于代码的OData混合服务?

2020-08-22 01:32发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我有一个中等复杂的导航树场景,其...

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

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


我有一个中等复杂的导航树场景,其中大多数节点可以通过 OData:Publish = true 表示,但是两个不能。 因此,现在我想吃点蛋糕,然后将CDS用于所有非CDS实体。

我将尝试绘制图片:

/Entity1/to_Entity2/to_Entity3/to_Entity4 
| |
| + ----/to_Entity5 *
| + ------/to_Entity6/to_Entity7 *

这里,除实体5和7之外的所有内容都可以通过CDS生成。 实体5和7需要代码才能返回数据。

过去,我为此创建了一个单独的GW服务。 但是在我当前的情况下,这将意味着使用一个大的$ filter进行多个查询,并且这也是一个对性能敏感的过程,因此我们希望一次通过$ expand和$ filter检索所需的所有内容。

我已经开始在DPC_EXT中对所有代码进行编码,但是想知道是否有一种方法可以节省构建每个导航/选择并仅覆盖SADL生成的服务的一部分?

顺便说一句,关于命名的一个小意见问题:

我注意到有一种将导航路径命名为" ToCustomer"," ToOrder"等的趋势(包括在The Gateway Book中),但是OData将它们格式化为to_Customer,to_Order。 我使用" to _..."来保持一致。 人们使用什么?