如何创建CDS视图

2020-11-27 15:01:14 浏览数 (1)

今天继续聊S/4 HANA的CDS视图,上一篇我们简单介绍了一下CDS视图的几个聚合函数,如果你还没来得及看,请翻阅《简单介绍几个CDS视图聚合函数》。

今天就聊一下如何创建CDS视图,在这之前,我们要准备一下前提环境。包括以下几个方面:

①、本地安装了eclipse或者studio。

②、在eclipse或者studio上安装了ADT。

③、有一个可访问的ABAP Netweaver 7.4以上的系统。

④、在eclipse或者studio上创建ABAP project,连接到ABAP Netweaver 7.4以上的系统。

如果以上条件都具备了,那么我们来做一下具体的实施步骤。

1、选择要创建CDS视图的package。右键package - new - other ABAP repository object。

2、在New ABAP Repository Object窗口中,通过在搜索字段中输入来搜索DDL Source。选择DDL Source并单击Next。

3、在New DDL Source窗口中,输入CDS View的Name和Description,然后单击Finish。

4、这时就会打开一个新的CDS视图编辑器。如下所示:

5、这里我们将使用ABAP CDS View从表SNWD_PD中检索数据。在DDL源处我们需要替换几个值:

①、将data_source_name替换为要从中获取数据的表名SNWD_PD。

②、为@AbapCatalog.sqlViewName替换为新值ZV_DEMO_01。

6、以上替换之后的结果,如下图所示:

7、我们来看一下CDS的语法。

语法

代码语言:javascript复制
@AbapCatalog.sqlViewName: 'CDS_DB_VIEW'
[@view_annot1]
[@view_annot2] …
[DEFINE] VIEW cds_entity [name_list] [parameter_list] AS select_statement [;]

从上面的语法中可以看到,在语法的第一句中,声明了一个注释。

创建CDS视图时,注释“@ AbapCatalog.sqlViewName”是必需的,通过它可以在数据字典中创建视图。

▸cds_entity - 是视图的名称。

▸name_list - 运行CDS视图时输出中显示的字段名称列表。

▸parameter_list - CDS视图的输入参数列表。

▸select_statement - 是从表中提供的select语句。

8、让我们回到CDS视图,这里我们从表SNWD_PD中检索PRODUCT_ID,TYPE_CODE和CATEGORY。所有表字段都将在DDL源代码编辑器中的大括号{}内输入,如下所示:

代码语言:javascript复制
@AbapCatalog.sqlViewName: 'ZV_DEMO_01'
@ClientDependent: true
@AbapCatalog.compiler.CompareFilter: true
@EndUserText.label: 'Demo'
define view Zcds_Demo_Example1 as select from snwd_pd 
{
   product_id,
   type_code,
   category   
}

从表中访问所有字段。

代码语言:javascript复制
@AbapCatalog.sqlViewName: 'ZV_DEMO_01'
@ClientDependent: true
@AbapCatalog.compiler.CompareFilter: true
@EndUserText.label: 'Demo'
define view Zcds_Demo_Example1 as select from snwd_pd 
{ * }

9、通过单击工具栏上的按钮并激活DDL Source来进行语法检查。

10、现在,将在ABAP DDL Sources文件夹下创建并提供新的ABAP DDL Source对象,并且还将在Views文件夹下创建新的字典视图。

11、右键单击新创建的DDL Source,然后选择Open Data Preview来查看数据。

12、最后我们可以看到如下所示的输出,并从CDS视图中检索数据。

到这里我们已经完成了一个完整的CDS视图创建过程。

0 人点赞