The video offers a precise and practical guide to DCL annotations, demystifying the technical constraints of SAP’s data security layer. It effectively bridges the gap between complex syntax and functional implementation for enterprise developers.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
107 - ABAP on HANA - CDS View - Access Control - DCL Role - AnnotationsAdded:
Hello everyone. We will continue that topic about on Hana and currently we are covering CDS view and in the last few videos we started with the concept of access control in CDS view. Firstly we understood the meaning of access control in CDS view, then we covered yes, if I want to achieve access control in CDS view, I can achieve through DCL, data control language. Now after that we covered what are the various steps you need to perform. Simply create your CDS view depends upon your requirement, then you can define your DCL role. Once you define your DCL role, then apply on to your CDS view. After that we covered what are the various conditions, access conditions you can pass into your DCL role. We can go for literal conditions, we can go for aspect condition. Aspect condition means whatever the authorization object, authorization field we created in classical ABAP.
Classical ABAP means we created through SAP GUI SU20, SU21 transaction code, we can simply use in this CDS view. After that yes, you can go for combination of both in one DCL role. You can go for literal plus aspect condition in one DCL role. Now into this particular video, we will cover the annotations of that DCL role. Before we cover the annotations of that DCL role, I will go for one point because so many people mentioned in the comment section.
They ask, yes, how we can check is there any existing DCL role is there for our CDS view or not? Simple. You all know you have a provision or you have a feature of where used list. Suppose, this is our CDS view. If I want to check where this CDS view is used, is there any access there any DCL role is there for this CDS view or not? Simple. This this is your CDS view. This is the button for where used list. This is the icon for where used list.
So, it will clearly show you. Have you seen? It is clearly saying this CDS view we are using into this particular Z access underscore control. If I will click here, you can see first statement is defined role. So, we can simply understand this CDS view is assigned to this particular DCL role. So, you can check by this way.
If you do not want to go by this way, no problem. Just right click. You have a option of where used list. You can go by this way or you can simply use the shortcut control plus shift plus G. So, whenever you think, yes, the CDS view has lots of data, but I'm not able to see that data or I'm only able to see that limited data or I'm not able to see anything, just check is there any role defined on top of that CDS view or not?
Yes. So, this is the way you can check.
Now, I will go for the annotations.
What are the various annotations whenever we are creating a DCL role? If I will show you the system as of now, this is our DCL role. Have you seen two annotations are present? Anyways, in the next video whenever I will go about the practical, you will be able to see these two annotations. What is first annotation?
At the rate and user text.label, and it is saying access control. What is this access control? Whenever we are creating, suppose simple, whenever we have created this particular CDS view, so far we created so many CDS view.
Whenever you are creating a CDS view, you are providing a description.
Whatever the description you are providing, it is by default the part of this particular annotation, and user text.label. This is what we are getting.
Yes, you can change. It is totally your wish. You can change depends upon your requirement. But whatever that description you are providing, it is by default the part of this particular annotation. Same thing is here. Whenever I will create a DCL role, whatever that description I will provide, it will be the part of this particular annotation.
So it's a new It's not a new annotation as a part of DCL role. Whenever you are creating CDS view, at that time also this particular annotation is there.
Now this annotation, what this annotation is, it is a translatable short text of the role. Because here we are talking in terms of role. Why I'm saying it is translatable? Because we can translate in the future. I will cover that part also, how you can translate the label into multiple languages for the CDS view. Because translation is also must. Suppose here, we provided this particular label CDS view for sales order data. Everyone cannot understand. We need to go for translation also. Yes.
So, what is the purpose of this first first annotation? It is a translatable short text of the role. While creating the DCL role, whatever the description you are providing, it is a part of this annotation. You can change depends upon your requirement. Now, I will come on to next annotation. And next annotation is important.
What is next annotation? Next annotation is mapping role. And by default value is true. Word itself is saying mapping role. This annotation assigns the DCL role three DCL role, or we can say CDS access control role. Because with the help of this role, you are accessing the CDS. Yes. So, this annotation assigns that DCL role, or we can say CDS access control role to all the users of the system. So, whatever the users are there in the SAP system, this annotation will assign the role to all the users of the SAP system. Suppose, whenever this annotation is true, yes. So, whatever this role we are defining, yes. It will be assigned to all the users of the SAP system. Whoever is using that system. Now, it has two values, true and false. You You all know how you can check the values of the annotation. I already provided. You can simply simply click on to this column.
We have control plus space bar.
You can get the full description. So, it has two values. You can see. If I will scroll down, it has two values, true and false. So, it has two values, true and false. Now, what is the meaning of true and what is the meaning of false? True, you can all understand very well. If it is true, yes, the CDS access control role, or we can say our DCL role, will be assigned to all users of the SAP system. If the value is false, the role will not be assigned to all users of the SAP system. Now, we have one extremely important point here, and anyone can ask in the interview. Yes, you are talking about annotation. Just tell me the important annotation of this DCL role. You will tell tell mapping role. Then, they will ask the next question. Have you provided the false value to that particular annotation? It is clearly mentioned. Currently, this annotation is only only supporting that true value. This annotation is not supporting the false value. Till today, this annotation is not supporting the false value. Yes, it might support in the future. Yes, whenever SAP will simply come up or simply extend this.
Currently, it is only only supporting true value. It is not supporting false value.
It will give a syntax error if you provide the false value. Suppose if I will give the false value, but values are defined. You can see the documentation of SAP. We have true value, we have false value, but SAP is clearly mentioned it is not supporting false currently. Yes, suppose if I will simply simply go for false value.
Suppose if I will provide false it will give the syntax error. Have you seen it is giving the syntax error. So currently it is only only supporting the true value.
And this is the example which I provided. So we have this first annotation. Suppose this is the short text, translatable short text of this annotation and mapping role you all know. Yes, by default it is only only supporting true value currently. It is not supporting the false value. So what is the summary of this particular video?
In this video we covered two points.
Firstly, if you have a CDS view and you are not able to see all the data or you are not able to you are able to see restricted data. So just check at that point of time is there any DCL role defined yes on top of that. So how you can check? You can check through where used list. You can go for shortcut control plus shift plus G. Then I covered the various annotations of the DCL role. We have two annotations. First one is end user text.label. It's not a new annotation because when you created the CDS view this annotation was already there.
So this annotation is a translatable short text. Here we are talking in terms of a role. Now, second annotation is mapping with role. This annotation assign the role to all users of the SAP system. It has two values, true, false.
Currently, it is supporting true. It is not supporting false. True means role will be assigned. False means role will not be assigned, but currently it is not supporting false. It is only only supporting true. Now, in the next video, we start with our first practical part.
And in the first practical part, we will create a CDS view. We will define a DCL role. But in that DCL role, we'll firstly go for literal condition. So, that's it in this video. Thank you.
Related Videos
Agentforce NOW AMA: Build with React and Salesforce Multi-Framework
SalesforceDevs
490 views•2026-05-28
How agent o11y differs from traditional o11y — Phil Hetzel, Braintrust
aiDotEngineer
450 views•2026-05-28
Re: 🗣️📍theprophedu📍2026 GST 103 CLASS (E-EXAM REVISION)
theprophedu
636 views•2026-06-04
WEB TECHNOLOGIES UNIT-2 | Degree 4th sem BCOM Computers web technologies unit-2 full explanation💯✅
LearnwithSahera
1K views•2026-05-29
More tests are always better? How to use AI to identify tests that bring little value
Alliance4Qualification
335 views•2026-05-29
Search Algorithms Explained in 60 Seconds! 🤖💨
samarthtuliofficial
218 views•2026-06-01
People of Game of Thrones using JavaScript DOM
AltCampus
296 views•2026-05-30
Instagram accounts got PWNed
EricParker
13K views•2026-06-03











