cancel
Showing results for 
Search instead for 
Did you mean: 

Why do we need of Private CDS Views - S/4 HANA VDM

ssurampally
Active Contributor
0 Kudos

Hi, I am trying to understand what is use case of having private cds view in S/4 HANA VDM CDS, I understand that they are not reusable and not exposed to analytics applications, but what is purpose of having them in VDM model? I can see lot of standard private views in all business areas of S/4 HANA, why do they have to be private views?

I have gone through blogs on CDS views VDM topic, but did not get answer to my question.

Thanks

Sreekanth

Accepted Solutions (0)

Answers (1)

Answers (1)

gasparerdelyi
Active Participant
0 Kudos

Annotation @VDM.private: true carries the message that the entity should not be reused direcrtly by other components, of course. However as far as I know it is not enforced (unllike private methods or attributes of a class). The annotation can have some influence on certain static checks in SCI/ATC.

The Help Portal content states it is used for internal classification at SAP.

ssurampally
Active Contributor
0 Kudos

Hi Gaspar, I will give an example to my question., I am looking at private views in SAP standard VDM.., p_salesanalytics and p_opensalesOrderAnalyts, noticed there is no special thing about them, view definition code is exactly same as what is in regular composite CDS view., then why SAP added them as @VDM.private: true. to make them private views?

Why can't SAP give regular composite views for the above views?

gasparerdelyi
Active Participant
0 Kudos

Check for standard ABAP CDS view(s) using the private use as data source by where used functionality to find the view(s) that was/were meant to be used as a data source by others.

For each view the responsible developer knows detailed answer, it is a bit hard to respond in general. Most typically private views are technical helper views -- due to a design decision on separation of concern, better code readability and supportability.

Let me mention that usually private views often they have no authorization check as it is done for the nesting view(s).