Welcome to "SAP CDS Views- A Comprehensive Guide," your go-to resource for everything you need to know about SAP CDS views. If you're a developer, a business analyst, or an IT professional working with SAP systems, then you know the importance of data modelling and the role it plays in ensuring that data is structured in a way that supports business processes. That's where SAP CDS views come in.
In this
blog, we'll take you on a journey through the world of SAP CDS views, starting
with the basics and working our way up to advanced topics. We'll cover
everything from SAP CDS views and how they work to how to create them, their
key features, benefits, and much more. We'll also compare SAP CDS views to HANA
views, so you can determine which one is right for your organization.
Our team
at A business Tech has years of experience working with SAP systems, and we
understand the challenges that developers and IT professionals face when
working with data modelling. That's why we created this comprehensive guide to
SAP CDS views, to help you get up to speed quickly and easily.
Understanding
SAP CDS Views
Understanding
SAP CDS Views is the first step towards effectively utilizing this powerful
data modelling tool. SAP CDS views provide a simplified way to define and
consume data models in SAP systems, enabling developers and IT professionals to
quickly and easily create views that support business processes.
In this
section of our blog, we'll take a closer look at what SAP CDS views are, their
key features, and the benefits of using them.
What are
SAP CDS Views?
Direct
access to the underlying tables of the SAP HANA database is made possible
through Core Data Service (CDS) Views, which are virtual data models. With the
advent of SAP's new programming model, SAP CDS Views were created. SAP CDS
Views seek to move computation from the application server by pushing logic to
the client side and database. SAP refers to this as "Code-to-Data" or
"Code Pushdown." The "Code-to-Data" or "Code Pushdown
"operation is carried out by an SAP CDS View.
Key
Features of SAP CDS Views
Key
features of SAP CDS Views include the ability to define views that access data
from multiple tables, the use of annotations to provide additional information
about the data model, and the ability to define associations between entities.
Some of the key features of SAP CDS Views are:
- Multi-table views: SAP CDS Views allow developers to define views that access
data from multiple tables. This makes it easier to create complex data
models that incorporate data from different sources.
- Annotations: Annotations are a powerful feature of SAP CDS
Views that allow developers to add metadata to the data
model. Annotations provide additional information about the data, such as
data types, field labels, and descriptions.
- Associations: Associations allow developers to define relationships
between entities in the data model. This makes it easier to navigate and
query the data in the system.
- Performance: SAP CDS Views provide excellent performance, as
they can directly access SAP data without needing additional server-side
code or services. This reduces latency and makes it easier to optimize
database performance.
- Flexibility: SAP CDS Views are highly customizable, allowing
developers to define views that are tailored to their specific business
needs. Developers with expertise in SQL can
easily create CDS Views using SQL-like syntax.
Overall,
SAP CDS Views are a powerful tool for businesses looking to optimize their
database performance and streamline their development process. With their
ability to define custom data models, provide high performance, and support
multiple platforms, SAP CDS Views are valuable to any business's database and
development toolkit.
Benefits
of Using SAP CDS Views
The
benefits of using SAP CDS Views are the following:
- Like open SQL, CDS views can be used with any database that is
supported by SAP and are database independent.
- While CDS view allows for calculated fields, such as the addition of
two fields at runtime, SE11 view does not.
- Inner, outer, right outer, full, and cross joins are supported by
CDS views.
- Views for CDS offer automatic client management.
- Open SQL is supported by CDS views, and we may call them from the
application layer in the same manner we call any SE11 view.
- The CDS viewpoints support the WHERE, GROUP BY, HAVING, and UNION
clauses.
- CDS views allow both numeric and aggregation functions.
- Through CDS views, we may immediately obtain OData service.
The
primary benefit of CDS views is that they offer an integrated data model for a
variety of applications. They can serve as data sources for a variety of SAP
applications, including SAP Fiori, S/4 HANA Embedded Analytics, BW/4 HANA, and
others, as well as for other software, such Power BI.
How to
Create SAP CDS Views
Creating
SAP CDS (Core Data Services) views involves defining the data model, which
includes defining entities, fields, associations, and annotations.
Steps to
create SAP CDS Views
1.
Open your Eclipse where you have linked your SAP system.
2.
Select New from the context menu of your
package, then select Other ABAP Repository Object.
Other ABAP
Repository Object
3.
Search for Data Definition under Core Data
Services and click on Next.
Create Data
Definition
4.
Enter the Name and the Definition of the Data definition
and click on Next.
Name and description
of Data Definition
5.
Select the default Transport number and click on Next.
Select Transport
Request
6.
Select the Define View Entity and Click
on Finish. The CDS View has been created.
Define View Entity
Defining
Entities and Views
In SAP
CDS (Core Data Services) Views, defining entities and views are two key
concepts used for defining data models.
Defining
entities are the building blocks of CDS views, which define the structure and
data elements of a table or view. They represent a logical data structure that
can be used as a data source for further modeling.
Views,
on the other hand, are used to define a subset of data from one or more
defining entities. Views are created by defining a SELECT statement on one or
more entities, which is used to filter, group, and aggregate data.
To
define the entities and views follow the below-mentioned steps:
1.
Enter the SQL Name as Z_HDR_XXX. This is the header table
view which contains the some information from the vbak table.
2.
Add the Data Source as table VBAK. Enter a few characters,
then use code completion (keyboard shortcut CTRL+SPACE), to get suggestions for
the data source.
3.
Click the SELECT list to activate code
completion, then double-click the entry labelled "Insert all elements -
template" to complete the action. The SELECT list contains all the
components (fields and relationships) of the underlying data source.
4.
The name given to the view that will be created in the
database in SQL is its internal/technical name. The CDS view with expanded ABAP
view-building capabilities is known as zentity. In all of your ABAP
applications, you must utilise the CDS view name.
5.
Duplicate the current CDS View and create another view.
This view will contain all the items which we will select from the abap table
(vbap). In this we have the SQL View name as Z_IMS.
Adding
Annotations and Associations
In SAP
CDS (Core Data Services) Views, annotations and associations are used to
provide additional information about the data model and the relationships
between entities.
Annotations
are metadata that provide additional information about the elements of a CDS
view, such as fields, entities, or views. Annotations can be used to describe
the semantics of the data elements, define constraints, specify default values,
or provide documentation.
Associations,
on the other hand, define the relationships between two or more entities in a
CDS view. Associations can be used to define the cardinality (one-to-one,
one-to-many, or many-to-many) and navigation properties between entities. They
can also be used to define foreign key relationships between entities, which
can improve performance and data consistency.
To add
the annotation and association in the CDS view follow the below -mentioned
steps:
1.
In the CDS View, the defined SQL View or the
"Endusertext.label" are defined because of the annotations. Each view
is started with some annotation. For example, @AbapCatalog.sqlViewName:’Z_IMS’,
or @EndUserText.label ‘Item Details’. These all are annotations.
Annotations
2.
In SAP CDS Views, Associations outline the connections
between various entities. A source entity is given an element with an
association type that points to a target entity, together with optional
metadata describing cardinality and the keys to utilise, to specify
associations. Both controlled and unmanaged associations are supported by CDS.
3.
Right click on cds package and create a new view. Follow
the same steps as we have created for the first view, Just in templates select
the Define View with Association and click on Finish.
Define view with
Association
4.
Define the SQL View name and join the two cds views which
we have created earlier. The common point of joining between the two cds views
are the vbeln field which is common in the header as well as the items views.
Zentity Association
View
5.
Activate your all three views and see the data preview.
After activating the Association view, right click on the screen and select
the Open with > Data Preview. You will see the
data in the table form.
Data Preview
6.
If you will right click on the screen and select the follow
association, you will see the list of associations, select the association and
you will see the data preview on the basis of association.
Data Preview -
Association
SAP CDS
Views vs. HANA Views
SAP CDS
Views and HANA Views are two different approaches to defining database views in
the SAP system. SAP CDS Views are defined using Core Data Services (CDS), a
data modelling tool introduced by SAP. Whereas HANA Views are defined using SAP
HANA Studio, which is a development environment for creating applications on
the SAP HANA platform.
SAP CDS
(Core Data Services) Views and HANA Views are used to model data in SAP HANA.
However, there are some differences between the two.
Differences
between SAP CDS Views and HANA Views
The
difference between SAP CDS Views and HANA Views are mentioned below:
Pros and
Cons of SAP CDS Views
The Pros
of SAP CDS Views are:
- Annotations: CDS Views supports annotations that provide
additional information about the data model, such as semantics,
authorizations, and UI properties. This allows for better integration with
other SAP services and applications.
- Performance: CDS Views are optimized for performance, with
the ability to handle large datasets efficiently. CDS Views allow for
better real-time data analysis and business reporting response times,
making it a popular choice among SAP users.
- Easy to Define: Defining a view using CDS is a straightforward
process requiring minimal expertise in the underlying database. The syntax
is similar to SQL, making it easy for developers to learn and adapt to.
- Integration with ABAP Projects: CDS Views can be integrated
into an ABAP project, making it easier for developers to manage their code
and data models in a single system. It also provides a familiar
development environment for ABAP developers.
- Flexibility: CDS Views can be used to define views over
tables, other CDS entities, or SQL views, allowing for greater flexibility
in data modelling.
The Cons
of SAP CDS Views are:
- Expertise: While CDS Views are easy to define and use, some expertise in the
underlying database and data modelling is required for optimal results.
Developers need to have a good understanding of SQL and SAP data models to
take full advantage of the feature.
- Complexity: CDS Views can become complex, especially when dealing with large
data sets and complex data models. This requires careful planning and
design to ensure optimal performance.
- Dependencies: CDS Views may depend on other objects, such as
tables or CDS entities. This can lead to issues with version control and
maintenance.
- DDL Source Code: Unlike SQL Views, CDS Views require DDL source
code, making them more challenging to manage and maintain.
- Eclipse Tool: CDS Views are created and managed using Eclipse,
which may not be familiar to all developers. This can result in a learning
curve and may require additional training.
Pros and
Cons of HANA Views
The Pros
of HANA Views are:
- Performance: HANA Views are optimized for performance, with
the ability to handle large datasets efficiently. HANA Views allow for
better response times in real-time data analysis and business reporting,
making it a popular choice among SAP users.
- Flexibility: HANA Views can be used to define views over
tables, other HANA views, or external data sources, allowing for greater
flexibility in data modelling.
- Complex Calculations: HANA Views enable complex
calculations and business logic to be implemented, making creating
meaningful insights and reports easier.
- Integration with SAP Services: HANA Views can be easily
integrated with other SAP services, such as SAP Business Objects or SAP
Lumira, making it easier to generate reports and dashboards.
- Graphical Modelling: HANA Views offer a graphical
modelling tool, which allows developers to define views and relationships
between data sources in a visual way.
Cons of
HANA Views are:
- Expertise: While HANA Views offer improved performance and scalability, they
require a high level of expertise in SAP HANA database and data modeling.
Developers need to understand SQL and HANA data models to take full
advantage of the feature.
- Complexity: HANA Views can become complex, especially when dealing with large
data sets and complex data models. This requires careful planning and
design to ensure optimal performance.
- DDL Source Code: HANA Views require DDL source code, making them
more challenging to manage and maintain than traditional SQL Views.
- Dependencies: HANA Views may depend on other objects, such as
tables or other HANA views. This can lead to issues with version control
and maintenance.
- Limited Compatibility: HANA Views are only compatible
with SAP HANA database, which can limit their usefulness for businesses
that use other databases.
What are
the benefits of using SAP CDS Views over HANA Views?
Using
SAP CDS views has several benefits over using HANA views, including:
- Compatibility: SAP CDS views are compatible with various databases,
not just SAP HANA, making them more flexible and easier to implement in
different environments.
- Reusability: SAP CDS views can be reused across different
applications, making them more efficient and cost-effective than HANA
views.
- Performance: SAP CDS views perform better than HANA views as they
are optimized for data processing in the ABAP layer.
- ABAP Integration: SAP CDS views can be easily integrated with ABAP
development tools, making them more user-friendly and accessible for ABAP
developers.
- Annotation-based: SAP CDS views are annotation-based, meaning that
developers can define properties and relationships using annotations,
which makes them easier to understand and maintain.
- Easy to Learn: Learning SAP CDS views is easier and requires less
expertise than HANA views, as it leverages existing ABAP development
skills.
What are
the key features of SAP CDS Views?
SAP CDS
Views is a powerful tool that offers several key features, including:
- Annotation-based definition: SAP CDS Views uses annotations to
define properties, associations, and relationships, making it easy to read
and understand.
- Data modeling: It supports data modeling concepts such as entities,
associations, and inheritance, allowing developers to build complex data
models with ease.
- Performance optimization: SAP CDS Views is optimized for
performance, providing fast and efficient data processing, especially when
used with SAP HANA.
- ABAP integration: It can be easily integrated with ABAP development
tools, making it easy to use for ABAP developers.
- SQL view support: SAP CDS Views support SQL view, allowing
developers to use SQL to query data from the view.
- Reusability: Developers can reuse SAP CDS Views across different
applications and systems, reducing development time and cost.
What is
the performance of SAP CDS Views compared to HANA Views?
SAP CDS
views are optimized for data processing in the ABAP layer, making them faster
and more efficient than HANA views. This is because CDS views are processed
within the ABAP stack, while HANA views are processed within the database
layer. Additionally, SAP CDS views leverage the power of SAP's core data
services and annotations to provide efficient data modeling, resulting in
faster query execution times. Overall, SAP CDS views offer better performance
compared to HANA views, making them a preferred choice for developers who want
to optimize data processing in SAP applications.
Data Source: Collected
No comments:
Post a Comment