前言: 在日常的ABAP开发中,有时候开发的报表设计的表或者字段比较多,而且经常用到,所以可以将这些表字段定义为CDS视图,可以大大提高我们的开发效率,当然CDS的应用远不止如此,本次只是简单介绍如何创建CDS View,步骤如下:

1.创建CDS View

1.1 新建Other ABAP Repository Object

使用eclipse创建简单CDS Views案例 - 图1

1.2 选择Data Definition

使用eclipse创建简单CDS Views案例 - 图2

1.3 完善信息

使用eclipse创建简单CDS Views案例 - 图3

1.4 编写代码

  1. // 可以使用 Alt + / 快速调用模板
  2. @AbapCatalog.sqlViewName: 'ZS_SD_TEST_01'
  3. @AbapCatalog.compiler.compareFilter: true
  4. @AbapCatalog.preserveKey: true
  5. @AccessControl.authorizationCheck: #CHECK
  6. @EndUserText.label: 'CDS测试案例'
  7. define view Zcds_Sd_Test_01 as select from vbak as A
  8. inner join vbap as B on A.vbeln = B.vbeln
  9. inner join vbfa as C on B.vbeln = C.vbelv and B.posnr = C.posnv
  10. left outer join t023t as D on B.matkl = D.matkl
  11. and D.spras = $session.system_language
  12. {
  13. A.erdat as erdat,
  14. A.erzet as erzet,
  15. A.ernam as ernam,
  16. A.audat as audat,
  17. A.vbtyp as vbtyp,
  18. A.auart as auart,
  19. A.lifsk as lifsk,
  20. A.vkorg as vkorg,
  21. A.vtweg as vtweg,
  22. A.spart as spart,
  23. A.vkgrp as vkgrp,
  24. A.fksak as fksak,
  25. A.gbstk as gbstk,
  26. A.vbeln as vbeln,
  27. B.posnr as posnr,
  28. B.matnr as matnr,
  29. B.matwa as matwa,
  30. B.pmatn as pmatn,
  31. B.charg as charg,
  32. B.matkl as matkl,
  33. C.wbsta as wbsta,
  34. C.fktyp as fktyp,
  35. D.wgbez as wgbez
  36. }

@AbapCatalog.sqlViewName: ‘ZS_SD_TEST_01’ 是可以在SE11和SE16N中查看的视图名称,同样可以用于SQL语句中

2.使用CDS View

2.1 创建测试程序

使用eclipse创建简单CDS Views案例 - 图4
使用eclipse创建简单CDS Views案例 - 图5

2.2 编写测试代码

使用eclipse创建简单CDS Views案例 - 图6

2.3 测试结果

使用eclipse创建简单CDS Views案例 - 图7

3.CDS其他内容

3.1 CDS注解

关于CDS的相关@注解信息,这里有一个博主进行了详细的解释说明,不懂的可以去阅读了解下: