云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

数据库_曹云金山西家信_超低折扣

小七 141 0

自从ABAP发行版7.76以来,有一个新的CDS实体可用:CDS投影视图。这篇博文解释了什么是CDS投影视图,2018世界人工智能大会,它是做什么的,以及它由哪些组件组成。

CDS视图的背景

目前有三种类型的CDS视图可用:CDS视图实体(DEFINE view ENTITY)、CDS基于DDIC的视图(DEFINE view)和CDS投影视图。CDS投影视图的设计类似于CDS视图实体。例如,它们没有附加SQL视图。有关不同类型的CD视图的更多详细信息,请参阅这篇关于CD视图实体的博客文章。

什么是CD投影视图,它做什么?

CDS投影视图在ABAP RESTful应用程序编程模型(RAP)中有特殊用途。它们在现有CDS视图模型的基础上定义接口。投影视图总是基于一个现有的CDS-view实体或基于CDS-DDIC的视图,国家大数据,并公开其元素的子集,这些元素是特定业务服务所必需的。CDS投影视图是使用DEFINE view ENTITY AS projection ON定义的CDS视图。

下图显示了CDS投影视图在制作业务服务中所起的作用。因为CDS投影视图总是基于现有的CDS视图模型,他们不能直接访问数据库表。

该图像是对ABAP RESTful应用程序编程模型的开发人员指南中发布的图像的改编。

CDS投影视图的语法

该示例显示了CDS投影视图的语法:

注释(实体注释、视图注释和元素注释)默认情况下从投影实体继承,但可以覆盖。还可以添加新批注。投影视图是使用DEFINE[ROOT]view ENTITY作为投影对象来定义的。CDS投影视图的数据源可以是不带参数的CDS视图实体,也可以是不带参数的基于CDS-DDIC的视图(向下兼容仍然支持这一点)。在元素列表中,物联网水表,显示来自底层投影实体的字段和关联。可以使用关键字VIRTUAL添加新的计算字段(详细信息如下)。可以为所有元素指定一个新的别名。投影实体中的关联可以直接公开,也可以重定向到新目标(详细信息见下文)。

CDS投影视图中的关联

首次发布CDS投影视图时,无法定义新关联。这个特性后来在ABAP 7.80版中引入。不过,大数据是啥,CDS投影视图中新定义的关联有一些限制:它们可以在元素列表中定义和公开,但不能用于在当前投影视图中包含关联目标中的字段。CDS投影视图中的关联只能用于建模可由使用者框架(如SADL)解释的新关系。

CDS投影视图中的虚拟元素

虚拟元素不是投影实体的一部分–它们是由框架(如SADL)在运行时计算的新添加元素。因此,ABAP SQL无法读取虚拟元素,ABAP SQL只返回初始值。

例如,好评返现怎么操作,在ABAP RESTful应用程序编程模型中,可以使用特定于框架的注释将虚拟元素连接到实现特殊虚拟元素接口的ABAP类ObjectModel.virtualElement.CalculatedBy对象模型.virtualElement.CalculatedBy.在这种情况下,虚拟元素的值在运行时由SADL框架计算。

在上述语法中,类CL\u DEMO\u SALES\u VIRT\u ELEM\u EXIT用于计算销售订单项的到期日期。

有关详细信息,请参阅在CDS投影视图中使用虚拟元素。

重定向CDS投影中的公开关联视图

您可以在CDS投影视图的元素列表中显示投影实体的CDS关联。如果关联的目标在投影层中没有改变,则可以直接暴露关联。如果目标实体也被投影,那么关联应该被重定向到目标投影视图,如上面示例中的关联买家所示。根据关联类型的不同,有三种不同的关键字可用于重定向:

重定向到:重定向简单关联。重定向到作文子项:重定向作文。重定向的关联必须是CDS组合。重定向到父级:重定向到父级关联。重定向的关联必须是到父关联。

下面的图像显示了属于业务对象的多个视图是如何投影和重定向的。

在CDS投影视图中重定向的合成

该图像是对ABAP RESTful应用程序编程的开发人员指南中发布的图像的改编模型

前景

CD投影视图是否提醒您消费观点?没错:CDS投影视图是消费视图的首选,这个框架中的新场景将使用CDS投影视图进行设计。现有的消费视图仍将可用,但创建的新视图将更少。

正在对CD投影视图进行更多开发。很快就会有不同类型的CD投影视图可用:常规投影视图、事务投影视图和分析投影视图。

要了解更多信息,请参阅我们的文档:

ABAP关键字文档解释了所有可能的添加及其功能。它也可以在sapgui和ADT中使用F1键。abaprestful应用程序编程模型的开发人员指南解释了如何创建CDS投影视图。有关CDS数据模型中父子关系的更多详细信息,请参见博客文章"使用ABAP CDS视图构建组合树"。