SAP S/4 HANA Embedded Analytics architecture comprises of 4 layers ,namely
In this blog I will be emphasizing more on persistency and modeling layer.
This section explains the building blocks that are part of the business reporting architecture and technical architecture. Building blocks such as persistency layer, modeling layer , access layer, and visualization layer are part of the business reporting architecture and building blocks : SAP S/4HANA backend system ,SAP S/4HANA frontend HTML5,and SAP Fiori frontend server.
Business Reporting Architecture
Let’s have a look at the business reporting architecture with the SAP S/4HANA
Embedded analytics and SAP FIORI UI. There are main 4 layers in SAP S/4HANA:
Before moving to VDM view types and Data Category we need to know about Annotations . which is very much important in embedded analytics.
Annotation : which defines the technical and semantic attributes of a CDS object. It provides metadata for a filed/view which is understandable by different run time frameworks eg. Analytic Framework. Annotation can be further categorized into
Some of the important annotations :
@Abapcatalog.sqlViewName:’XXX’ :Auto creates SQL view corresponding to CDS view with the given name ‘XXXX’
@Abapcatalog.preserveKey:true :preserve key true ignores defaults keys from the database table/view and preserves keys defined explicitly in the view. possible values –true /false
@Accesscontrol.authorizationCheck:#check: Tells whether an authorization check should be performed or not.
@EndUserText.label:’xxxx’:It’s a free text which provides info to the end user.Maximum length would be 40 characters.
@AbapCatalog.compiler.compareFilter:true: Defines the evaluation of filter conditions in path expressions of the CDS view.
Furthermore few annotations will be discussed under VDM view types and Data category.
VDM view types and Data Category :
@VDM.viewType: #BASIC
@VDM.viewType: #COMPOSITE
@VDM.viewType: #CONSUMPTION
Data Category : which is going to define the data based on the business requirement. Data Category has 3 types
@analytics.dataCategory:#DIMENSION
Should not be joined with master data views.
@analytics.dataCategory:#FACT
@analytics.dataCategory:#CUBE
Associations and joins are the two main topics to be known in embedded analytics.
Associations:
Associations are having similar functionality of joins to fetch data from multiple tables based on join condition ,but they are ‘joins on-demand’ which means they will only be triggered when user would access the required data which needs the association of required tables.
Associations are defined with ‘cardinality’.syntax:association[<cardinality>]
n should be an integer(non-zero),this basically establishes the relationship between the source and target table.
Here the source table is vbak and the target table is vbap which are associated together with cardinality 1..* which means ,for every one record in vbak with vbeln (on condition filed)there can be a minimum of 1 record and a maximum of n(*) records in vbap with vbeln (on condition filed).
If we are confused about what kind of association, we should configure in the cds view then we can apply a rule of thumb: ‘always use: association [1]. This will always trigger an outer join and will work in all cases.
Joins:
It is used to join multiple table together to convert data into a meaningful information and represent to business.
Unlike the association ,if we have used 4 tables with join condition in cds view ,all the joins will get executed when we trigger cds view even though business is looking for fields from any two tables.
Supported join types:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
13 | |
9 | |
9 | |
7 | |
7 | |
6 | |
6 | |
6 | |
6 | |
5 |