SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼

i042416發表於2020-09-14

You paste the following source code for a simple CDS view into ABAP development studio and activate it:

@AbapCatalog.sqlViewName: 'zjerrySQL0208'@AbapCatalog.compiler.compareFilter: true@AccessControl.authorizationCheck: #CHECK@EndUserText.label: 'test 233'@ObjectModel: {
   createEnabled,
   deleteEnabled,
   updateEnabled}define view Zjerrytest20160208as select from spfli association [0..1] to scarr as _scarron _scarr.carrid = spfli.carrid {
       key spfli.carrid,
       key _scarr.carrname,
       key spfli.connid,
       spfli.cityfrom,
       spfli.cityto}

And you would like to know what objects are automatically generated during CDS view activation.

Automatically generated ABAP objects during CDS view activation You could query table TADIR with following parameters:


SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


And get answer: DDLS: Data Definition Language SourceSTOB: Structured Object


SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


The relationship among these objects is listed below:


SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


And if you use the same approach described in tutorial part1, you can realize that lots of database tables “DD*” are involved during CDS view activation, for exampleDDLDEPENDENCY. A small tip here is, if you click “Display Object List” button, you will navigate to the package where other related ABAP artifacts within the same package are displayed as well.


SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼 SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


Now we can go through each database table one by one.

Automatically inserted table entries during CDS view activation

Several table entries are inserted to the database tables in package SDDL during view activation.

DDDDLSRC

Query this table by specifying DDLNAME as CDS view name we specified in ABAP development studio, the name after keyword “define view” : Zjerrytest20160208, and we can find view source code stored in field SOURCE.


SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


DDDDLSRC02BT Text table which stores the view description specified via annotation@EndUserText.label.

DDHEADANNO

It stores all header annotation specified in CDS view source code with corresponding value.


SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


DDLDEPENDENCY

It maintains relationship between the CDS core entity and automatically generated database view.


SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2719303/,如需轉載,請註明出處,否則將追究法律責任。

相關文章