Professional Documents
Culture Documents
Community
Follow
RSS Feed
Technical Articles
Sanjeev Kumar
October 24, 2019 | 2 minute read
This is the 4th blog post on the CDS detailed explanations after the Introduction
post. Refer to the Introduction and blog post indexes here:
https://blogs.sap.com/2019/10/21/part1.-sap-cds-views-demystification/
CDS view is also called a VDM i.e. Virtual Data Model as there is no data persistence
happening. All the SQL like code written in a CDS view pick the data from Base
tables directly or via other CDS view at RUNTIME . The actual data still remain in the
SAP Base tables and CDS views remains a virtual data model. Now in a scenario, we
have created a complex CDS view which has lot of business logic implemented into it
and we want to use the data coming out of this CDS view in an ABAP program, can
this be possible? Yes, it is possible via new ABAP syntax. Let’s look at it.
1. We will use the Basic CDS view we created before to be consumed via ABAP
program;
@AbapCatalog.sqlViewName: 'ZSQL_BASIC_VIEW'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'CDS View type #BASIC'
define view ZCDS_BASIC_VIEW as select from sflight {
//sflight
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 1/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
--key mandt,
key carrid,
seatsmax_b,
seatsocc_b,
seatsmax_f,
seatsocc_f
}
2. Within ABAP perspective in Eclise or HANA Studio, right click on your
user under Lcal Objects within an ABAP project to create an AABAP
program
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 2/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
1. Consume the CDS Basic view we created via this ABAP program. Note the new
ABAP syntax used for this purpose.
*&-------------------------------------------------------------------
*& Report zconsume_cds
*&-------------------------------------------------------------------
*&
*&-------------------------------------------------------------------
REPORT zconsume_cds.
cl_demo_output=>display_data( lt_itab ).
In summary, there are lot of scenarios in projects where we write complex CDS views
and we need to consume them into an ABAP program for different business needs.
In this blog post, we looked at the new ABAP syntax to consume a CDS view.
Part# 5. CDS View Extension: Learn the concept of re-usability within CDS views.
Keep learning..
SK
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 4/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
Alert Moderator
Assigned Tags
ABAP Development
OData
#ABAP
#CDSVIEWS
#s4hanaanalytics
Related Questions
How does security work for S/4 HANA reporting?
By AJAYKUMAR SUGUMARAN Oct 05, 2019
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 5/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
13 Comments
Sebastian Dingermann
October 24, 2019 at 8:55 am
Hi Kumar,
For just displaying the content of a CDS, you can also use Integrated Data Access (IDA).
cl_salv_gui_table_ida=>create_for_cds_view('ZCDS_BASIC_VIEW')->fullscree( )->display( ).
Like 10 | Share
Hi Sebastian,
Regards
Sanjeev.
Like 1 | Share
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 6/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
Jelena Perfiljeva
October 25, 2019 at 9:35 pm
FYI - better use "Reply" button when replying to someone's comment. If you do that then the other
person will be notified of your reply. When we use "add comment" then only the blog author (i.e.
yourself in this case) gets notified.
Like 3 | Share
Vishal Agarwal
October 23, 2020 at 7:09 pm
Sir,
Very good document. Really appreciate all the effort you put. I was able to follow the whole thing.
Thank you so much.
Regards,
Vishal Agrawal
Like 0 | Share
Ramin Shafai
March 30, 2021 at 9:55 pm
Selecting from CDS view is the same as selecting from a DDIC object, nothing new here. The tricky part would
be how to navigate through an association from Abap.
Like 0 | Share
Pradeep Alex
February 22, 2022 at 10:42 am
Is that possible !!. to drill down from ALV reports, making use of associations.
Like 0 | Share
Ramin Shafai
February 22, 2022 at 1:10 pm
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 7/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
Like 0 | Share
Namasivayam Naveen G
May 24, 2022 at 12:00 pm
select
Select
Like 1 | Share
Ramin Shafai
May 26, 2022 at 11:45 am
select
Order_Type,
\_txt-spras as lang
from zrsh_test_cds
into table @data(lt_data).
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 8/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
Like 0 | Share
Dipak Patel
April 12, 2021 at 11:05 am
Like 0 | Share
Patrick Rohner
January 11, 2022 at 3:58 pm
Hi,
Is it possible to extract the data from the CDS view by adding a where clause?
Let's assume we have cds view A_COSTCENTER, but I only want to extract certain cost centers. Is that
possible?
Regards,
Patrick
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 9/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
Like 0 | Share
Ramin Shafai
February 22, 2022 at 1:15 pm
Of course, why not. It's just like any other SQL statement:
What I don't know is how to go down an association path. That seems not possible.
Like 1 | Share
Hallo Kumar,
https://answers.sap.com/questions/13733584/cds-countingsum-value-from-column.html
Regards
Hassin
Like 0 | Share
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 10/11
4/15/23, 11:20 AM Part#4. Consume CDS View in an ABAP Program | SAP Blogs
Find us on
Newsletter Support
https://blogs.sap.com/2019/10/24/part4.-consume-cds-view-in-an-abap-program/ 11/11