Analytics in S/4HANA – real shape of embedded analytics and beyond embedded analytics
9 Nov 2021:
add the link to the blog on the videos of analytical apps.
8 Oct 2021:
Add the SAP Note 2922493 – Extensibility with Hierarchies
Update about Machine Learning.
Purpose of this blog
S/4HANA embedded analytics means direct and real-time analysis in S/4HANA using Fiori applications (So, I personally want to call it “Fiori Analytics” to be honest). It is said to be Fiori analytical app’s based on CDS Views, however the real state is more complex. Furthermore, the topics relating to analytics in S/4HANA might go beyond embedded analytics. There are some other important topics relating to analytics, e.g. the positioning of BW and embedded analytics, BPC for S/4HANA, BusinessObjects and SAP Analytics Cloud(SAC) BI etc.. The purpose of this blog is 1) to share the real shape of embedded analytics, and 2) to cover main topics about analytics related to S/4HANA to provide “the shape of the forest, not (only) the detail of the trees”, and clarify what needs to be discussed for a total analytical architecture and what kind of skill sets are needed for the analytical solution.
As S/4HANA is running on HANA, High Performance Database, Analytics is one of the most typical and tangible value of S/4HANA. However, I have heard many customers feel difficulties to enjoy embedded analytics in S/4HANA because it is a bit too complex for them as too many technologies and topics are included and many experts have to be involved, in reality, but the total picture is not provided.
I am writting this blog to tackle the situation by providing the real shape of embedded analytics and the total picture and relationship among solutions in Analytics.
(Note that some analytical solutions like Data Hub are not included as it is not directly related to S/4HANA.)
The section of “S/4HANA embedded analytics in detail” covers the total Fiori application architecture, including read/write (transactional) apps, not limited only to embedded analytics. I hope it provides a greater understanding of the total picture of Fiori application architecture, as most of the Fiori documents cover only some parts of total Fiori architecture as in the case in embedded analytics.
Table of Content
- Important messages
- embedded analytics and other analytical solutions
- S/4HANA embedded analytics in detail
- embedded analytics is a part of Fiori
- embedded analytics technologies
- Standard Fiori app for analytics
- Tools for Embedded Analytics
- embedded analytics, instead of traditional reporting tools
- Relation to Machine Learning in S/4HANA
- embedded analytics, BPC optimized for S/4HANA,SAP Analytics Cloud and BusinessObjects
- Relation between embedded analytics and BW
- Other topics related to embedded analytics
S/4HANA embedded analytics is more complex and S/4HANA analytics includes many technologies and topics beyond embedded analytics.
- S/4HANA embedded analytics means S/4HANA Fiori analytical apps, whose Application Type are “Analytical”. embedded analytics is a part of Fiori, so that Fiori Skill is needed for embedded analytics, e.g. Fiori Launchpad and Launchpad Designer.
- There are 2 ways to enjoy embedded analytics as in the case Fiori: 1) Use Standard Fiori apps for analytics, 2) Create custom Fiori app for analytics. The former approach should be led by Functional experts and Fiori Expert, not analytic experts.
- One of the easiest way to start embedded analytics is to use Standard Fiori apps. You do not have pay development effort.
- Creating Custom Fiori app does not mean Java Script coding. SAP provides the tools to create Fiori apps and CDS View.
- The architecture of embedded analytics is more complex than in the general guide: Fiori analytical app + CDS View.
- Transaction Code SEGW based OData Service is used as Data Source in many standard Fiori analytical apps. So, knowledge of SEGW OData might be needed.
- OData is the main connection in Fiori, however, the InA connection is used for Design Studio, SAC Online connection and BusinessObjects. BW experts should have knowledge of the InA connection.
- BW Query is used as a source for Fiori apps for BPC Optimized for S/4HANA.
- Some Fiori Elements apps are called analytical, others are called transactional, but technically they are almost the same.
- Fiori Key User Tools like Custom Analytical Queries and Smart Business Cockpit are included in the general guideline of embedded analytics. But they are only parts of all tools needed for analytics. In reality, many other tools are used for analytical purpose,g. ABAP Development Tools (ADT) for creating ABAP CDS View, Custom Fields and Logic for adding fields and Web IDE in SAP Cloud Platform for Fiori Elements or Free style apps.
- Understanding CDS Views is key for S/4HANA Analytics, and the Virtual Data Model (VDM) built with CDS Views should be used as reusable objects for custom CDS Views.
- Reusable CDS View for master data and transaction data have to be prepared and Consumption View is created from them like BW Query is created from InfoCube including InfoObject.
- In S/4HANA, it is expected to use embedded analytics instead of traditional reporting tools like Report Painter, ALV. Furthermore, it is also expected to consider providing much richer analytical experience to much more users.
- S/4HANA embedded Machine Learning using Intelligent Scenaros Lifecycle Management (ISLM) is a kind of Fiori analytical app or embedded analytics.
- embedded analytics is only one part of the Analytics in S/4HANA story, other solutions may also be used in delivering a more complete S/4HANA analytics story.
- SAC BI (Story) and Application Design, and BusinessObjects can be the frontend of the data source in S/4HANA.
- BPC Optimized for S/4HANA provides reporting functions as well, which is one of the most important reports in S/4HANA (Management Accounting). It is based on embedded BW function. Hence BW skill is needed here.
- Standalone BW (BW/4HANA etc) and/or Embedded BW can or should be used for analyzing data in S/4HANA. It is important to consider which report should be sourced from S/4HANA, which should be sourced from standanloe BW.
- Data Volume management needs to be considered covering S/4HANA and BW, g. data older than 2 years is deleted from S/4HANA and analyzed in BW.
- HANA Calculation View can be the data source in S/4HANA Analytics. But it is not SAP strategic direction. No standard Fiori apps use HANA Calculation View in S/4HANA.
- Don’t forget to size for embedded analytics to avoid the system being unstable. The quick sizer includes parameters for embedded analytics sizing considerations.
embedded analytics and other analytical solutions
S/4HANA embedded analytics is the function for real-time operational analytics in S/4HANA. It consists of ABAP CDS Views ( or OData service not from CDS View) as data source and Fiori Analytical application the as frontend. Other than embedded analytics, Standalone BW or Embedded BW can be the data source for analyzing data in S/4HANA. Embedded BW is the BW function in S/4HANA system. As the frontend, other than S/4HANA embedded analytics, SAP Analytics Cloud BI and Application Design, and BusinessObjets are available. Standalone/Embedded BW or/and SAP Analytics Cloud/BusinessObjects are used together with embedded analytics in S/4HANA analytics.
S/4HANA embedded analytics in detail
embedded analytics is a part of Fiori
S/4HANA embedded analytics is a part of Fiori. “Fiori” has many meanings; it includes predefined standard Fiori apps, framework to create Fiori app, and Fiori launchpad. Standard Fiori apps for analytics and framework to create Fiori analytical app are included in embedded analytics. Needless to say, Fiori analytical apps are launched from Fiori Launchpad, and SAC BI reports and BusinessObjects apps can as well.
In my understanding, many customers start using Fiori from Analytical apps. So, I want to say embedded analytics is the MAIN part of Fiori!
There are 2 approaches to enjoy embedded analytics:
1) Use Standard Fiori apps for analytics
2) Create custom Fiori app for analytics
The former approach should be led by Functional experts and Fiori Expert, not analytic experts.
Some Fiori Analytical apps, mainly FIori Elements apps, tend to be covered by Fiori Experts, not Analytics Experts.
embedded analytics technologies
In basic scenarios, the data source of embedded analytics is ABAP CDS Views, which are consumed by the Fiori analytical application.
This section of the blog also explains brief overview of S/4HANA Analytics.
ABAP CDS View and Virtual Data Model (VDM)
ABAP CDS View is a view and which is the object in the ABAP application server. It is used instead of HANA Calculation View in standard Fiori apps as of S/4HANA Enterprise Management (1511~). ABAP CDS View includes SELECT statement of SQL and it is expected to realize calculations within SELECT Statement. By doing that, pushdown to optimize application server runtime can be realized. It can also include application specific settings with Annotations. CDS View is SAP specific technology.
There are many types in CDS View. See the blog for further detail.
Virtual Data Model (VDM) is the predefined View for the entities in S/4HANA created with ABAP CDS View. By using VDM instead of creating custom CDS View, development effort could be saved.
In the VDM “G/L Account Balance Cube”, balance value is calculated from ACDOCA dynamically and multidimensional analytics is possible. By using it, it is not necessary to design the model to calculate balance value from delta value stored in ACDOCA by the customer themselves. See the blog for further detail. You can find VDMs in many ways.
New development approach – prepare reusable CDS View beforehand: Different from former ECC reporting functions, reusable CDS Views should be prepared beforehand for business entities in S/4HANA system, e.g. General Ledger, Profit Center, and CDS View for reporting (Consumption View) should be created based on those reusable views. it is like BW InfoObjects and InfoProviders are created as the prerequisite to create BW Query. VDM can be used as the reusable view. See the blog for further detail. (same as the blog above),
The fields can be added in standard VDMs with some ways. See the section of the blog for further detail.
Sophisticated Calculations are possible like BW Query which would be needed to realize the requirements for reports. See the section of the blog for further detail.
Release status of VDM has to be considered. In S/4HANA 1809, more than 33,000 VDMs are provided, but the number of VDMs available to be reused (Category=CUBE/DIMENSION) is about 2,700, and the number of “Released” VDMs in them is about 1,500. Released means SAP guarantees the view should not have critical design change in the newer versions. Unreleased VDMs are NOT supported officially and customers would have to use them at their own risk. By creating a Customer Incident, unreleased VDMs might be released by SAP. See the blog for further detail.
In CDS View, data authorization is controlled with Authorization Object, and Data Control Language (DCL) is used to connect fields of CDS View to Authorization Object.
It should be designed to optimize the performance (avoid longer runtime). In Quick Sizer of embedded analytics, the maximum runtime is expected to be 10 seconds. If access time to a CDS View is 60 seconds, the impact is not only on the runtime of the report, but much more hardware resource would be needed and 6 times more hardware resource would be needed than heavy query (runtime is supposed to be 10 sec).
Tips and Further Details about CDS View and VDM from the following links:
- Example: Custom CDS View using predefined Virtual Data Model and Extend View in S/4HANA
- Predefined Virtual Data Model as example for understanding difference of CDS View type
- How to find a predefined Virtual Data Model in S/4HANA
- How to deal with “Not released” predefined VDM in S/4HANA
- Safeguard Performance of ABAP CDS Views – Part 1 CDS View Complexity (and subsequent blogs of this series).
- Standard DEMO Examples of ABAP CDS views
- ABAP News for Release 7.51 – Meta Data Extensions in ABAP CDS
- How to analyze query performance for ABAP CDS Views
- CDS View Entity
FYI:BW Query can be created on top of CDS View
FYI: 2922493 – Extensibility with Hierarchies in which Guides are attached about
- Adding Hierarchy and Node for DesignStudio Report by Using Custom Analytical Query
- Adding KeyDate for DesignStudio Report by Using Custom Analytical Query
- Consuming Custom Set In DesignStudio Report For SAP S/4HANA
- Extend Global Hierarchies With Custom Hierarchy
- Use standard field as custom hierarchy leaf
- Use extended field as custom hierarchy leaf
Application Templates and analytical apps
There are several predefined application templates in S/4HANA application, Application templatse for analytical app are
- Web Dynpro Grid (Fiori Design Studio)
- Analytical List Page
- Overview Page
- KPI Generic Drilldwon app
- Analysis Path Framework
- List Report
- Object Page
Some other apps do not use the template, which are called Free style app.
Many of the standard applications are created based on the application template, e.g. application template of “Invoice Price Variance (F0682)” is “KPI Tile Generic Drilldown app” and UI technology is “SAP Fiori: SAP Smart Business generic drill down app”.
The applications whose application types are set as “Analytical” plus Web Dynpro Grid are categorized as Analytical app (i.e. embedded analytics). Normally, apps based on the template Web Dynpro Grid, Analytical List Page, Overview Page, KPI Generic Drilldown App, Analysis Path Framework are regarded as Analytical app, and some List Report app and Free style app are also categorized as Analytical.
To find which standard app uses which applicatoin template, see the section of the blog.
In my opinion, which application template, SAP says, are in embedded analytics or which are not is not so important. We can simply say the apps used for analytical purpose are analytical apps.
|Application template||Application type||UI technology||Comm||Example|
|Web Dynpro Grid||Web Dynpro||Web Dynpro||InA||Trial Balance (F0996)|
|List Report||Transactional||SAP Fiori Elements||OData||Manage Source Lists (F1859)|
|Analytical List Page||Analytical||SAP Fiori Elements||OData||Material Price Variance (F3294)|
|Overview Page||Analytical||SAP Fiori Elements: Overview Page||OData||Procurement Overview Page(F1990)|
|KPI TIle Generic Drilldown app||Analytical||SAP Fiori: SAP Smart Business generic drill down app||OData||Overdue Purchase Order Items(F0343)|
|Analysis Path Framework (APF)||Analytical||SAP Fiori: Analysis Path Framework (APF)||OData||Days Payable Outstanding – Detailed Analysis (F2688)|
|Object Page||Transactional||SAP Fiori Elements||OData||Invoice List|
|Worklist||Transactional||SAP Fiori Elements||OData||–|
|Free style app||Transactional /Analytical||SAP Fiori (SAPUI5)||OData|
- In Fiori Apps Library, not all apps are categorized as above, e.g. Application type of “Product Allocation Overview(F3474)” is not “Analytical” but “Transactional”, but it is an Overview Page.
- For Multidimensional Reporting, as of S/4HANA2020, Web Dynpro Grid is used instead of Fiori Design Studio. See more in SAP Note 3081996 and the blog.
In my experience, Fiori experts tend not to focus on WEB Dynpro Grid / Design Studio including data preview of Query Browser/View Browser, as different technology or communication is used, e.g. Fiori Design Guideline doesn’t include it. Analytics experts are interested mainly as it is quite similar to BW Query, and don’t know so much about OData. But it is important to understand both technologies. OData is main connection way for Fiori but InA (BW Query connection) is used in WEB Dynpro Grid or Design Studio specifically. Additional Initial setting is needed for Web Dynpro Grid / Design Studio. See SAP Note 2289865 in detail.
Further Details relating to each application template:
This blog have the videos which explain how each application template based app is working. Hope using it also for user training.
Video Library for Finance is here which include demos of analytical apps.
embedded analytics architecture in reality
In the blog, I said Fiori analytical app consists of CDS View as a data source and Fiori frontend app. However, reality is not so simple. There are different type of applications and architectures for them are different. Reality of S/4HANA UI/application is the mixture of technologies.
The diagram below shows the overview of the frontend architecture for read-only apps.
- OData for each data source is not the only communication, but InA (BW Query connection) communication is used . It is used in Web Dynpro Grid and Fiori Design Studio, SAC Online connection, and main scenarios of BusinessObjects. The source has to be Analytic/BW Query in which sophisticated calculations are possible (See the blog).
- For creating Analytical Query, there are 2 possible objects; Analytic Query of CDS View or BW Query. BW Query could be created on top of CDS View as well.
- For WEB Dynpro Grid, Design Studio, normally Analytic Query is used, but BW Query is the source for the apps of BPC for S/4HANA.
- Analytic/BW Query is consumed directly via InA or as OData Service. Data is accessed to Interface View, not Consumption View, so DCL source has to be set in the Interface View. See the blog more about it.
- For creating read-only OData service, there are 3 ways: OData generated from CDS View, OData generated from BW Query, and OData Created with Transaction SEGW, OData generated from CDS View could be set to analytic query enabled. There are many ways to create OData with Transaction SEGW, e.g. to use Function Module as a source.
- In standard Fiori apps, the source of KPI tile is an OData Service published from CDS View in many cases, however, in Fiori Elements apps, an OData Service created with Transaction SEGW is used in general (but in this OData Service, CDS View is used for data source reference in many analytical apps).
- See the blog about the OData types for further detail.
- Type of Consumption View of CDS view is different for each application, e.g. Analytic Query for WEB Dynpro Grid, Design Studio. See the blog in detail.
- There are many content types in Fiori application; Fiori Elements, Smart Business (KPI/Report), Analysis Path Framework (APF), and Multidimensional Reporting. It is explained in “Fiori Content types and analytical apps” in this blog.
- Different tools are needed to create / edit different objects, e.g. Fiori Elements template in Web IDE for Fiori Elements app.
- 2020/10 Update: KPI app and Report can be created with “Manage KPIs and Reports“, SAC story embedded in S/4HANA Fiori can be created with it as well as of S/4HANA 2020 for anypremise customers.
Architecture for transactional Fiori app (not analytics)
- For creating OData service for read/write process, there are 2 options. OData Service created with Tcd SEGW and OData generated from CDS View including BOPF Object.
- For free style app, SEGW OData Service is used, and for transactional Fiori Elements app, OData Service from CDS View with BOPF are is used in many cases. You can check the Business Object with the transaction BOBX.
- List Report is the Fiori Elements app for transaction.
Standard Fiori app for analytics
Examples of Standard Fiori apps for analytics are, e.g. Invoice Price Variance (F0682), Overview Inventory Management (F2769). They can be available only after activation. They can be searched in Fiori Apps Library. This blog explains how to search in Fiori Apps Library.
Application type is set to be “Analytical” for analytical app in Fiori Apps Library.
My favorite way is to export the list view after selecting all columns in Column Setting Displays from Fiori Apps Library and filter application type with “Analytical” to find standard Fiori analytical apps. I think the column “LeadingTransactionCodes”, which is the Transaction Codes in SAPGUI related to the app (although the relationship is not always 1:1), would be helpful to find the candidates of the Fiori app to be evaluated.
Invoice Price Variance (F0682)
The easiest way to try embedded analytics or Fiori might be to evaluate predefined standard Fiori apps. It is possible to add fields by using Key User Extensibility tools “Custom Fields and Logic”, or manually.
Extending Standard Fiori app:
For adding fields to Standard Fiori apps, firstly whether the Key User tool “Custom Fields and Logic could” and “UI Adaption” be used, with which fields are added in each layer of the app including table, CDS View, and UI. If not possible, manual adjustment should be needed. Regarding the backend service, when the source is CDS View, add fields with Extend View. UI/Consumption/Text annotations in the Consumption View could be overwritten with Meta Data Extension if it is allowed to use Meta Data Extension in the Consumption View(@Metadata.allowExtensions: true ). When the source is OData created with Tcd SEGW, it has to be added with this transaction. Regarding frontend layer, Use Extension Project or Adaption Project (for Fiori Elements app). For KPI app, it is possible to overwrite the default currency with KPI Design Modeler. But for more advanced change, it would be needed to copy and recreate new one, e.g. to remove some jump targets.
Tools for embedded analytics
There are tools to create objects for Fiori application as below. Key User Extensibility Tools are the toolset to enhance Fiori and S/4HANA apps. All of Key User Extensibility Tools are listed here. (it intends to be used by “Key User”, as named so, but in my experience, in most cases, those tools are used only by development teams for efficient implementation. The objects have to be created in DEV system and has to be transported to QAS and PRD, but it is not normal for business users to access DEV. In the case, they are a kind of development tools). But they are not all tools in Fiori, but there are some other tools like Smart Business Cockpit, Date Function and APF Config Modeler. Web IDE and some other tools in SAP Cloud Platform could be used. ADT and/or BW-MT (BW Modelling Tools), which are for On Premise only, might have to be required.
Only some of the Key User tools and Some other Fiori tools are included in general guidance of embedded analytics, but some other tools are also used normally in S/4HANA Analytics.
|Fiori Key User Tools||Custom Analytical Queries||Analytic Query||Analytic Query can be created from Released VDM.|
|Fiori Key User Tools||Custom Business Object||CDS View with BOPF, Table||(Not for analytical app)
CDS View with BOPF object and table for it can be created, which can be the source for Fiori Elements app in which data can be written.
|Fiori Key User Tools||Custom CDS View||Custom CDS View||Custom CDS View can be created by associating released VDM, but complex modeling is not possible.|
|Fiori Key User Tools||Custom Fields and Logic||OData / Table etc..||Add fields to Objects used in the Standard Fiori apps|
|Fiori Key User Tools||UI Adaption||Fiori app||Add Fields to Fiori app. The function is in Fiori Launchpad.|
|Fiori Key User Tools||View Browser||CDS View (Search)||Search VDMs in S/4HANA|
|Eclipse||ABAP Development Tools||CDS View||ABAP Development tools is to create ABAP program and with which CDS View can be created. More complex CDS View can be created in ADT than the objects created with Custom Analytical Queries, Custom Business Object or Custom CDS View.|
|Eclipse||BW Modeling Tools||BW Query and other objects||BW Modeling Tools is for creating BW object.|
|BTP tools||Business Application Studio||Fiori Elements Apps /Free style Apps||Business Application Studio (BAS) is the tools on BTP Cloud Foundry.|
|BTP tools||Web IDE||Fiori Elements Apps /Free style Apps||Web IDE is the tools on BTP Neo.|
|Fiori based tools||Manage KPIs and Reports||KPI app/Tile
|KPI app, Analytical List Report and SAC story embedded in S/4HANA can be created as of S/4HANA 2020 for anypremise.|
|Fiori based tools||APF Config Modeler||Analysis Path||APF is used as the drilldown in the tile created with KPI Design.|
|Fiori based tools||Launchpad Designer||Tile / Target Mapping / Catalog / Group,
Design Studio app *1
|Tile and Target Mapping is created and Semantic Object is set in it. Intent Based Navigation is also set.
Custom WEB Dynpro Grid or Design Studio app can be created with this tool.
|Fiori based tools||Date Function||Date Function||Date Function is to make it possible to filter date dynamically when running the report, e.g. from start of this month to today.|
|Fiori based tools||Global Accounting Hierarchies||Hierarchy||With Global Accounting, Global Accounting Hierarchies, Hierarchies for, e.g. Profit Center, G/L Account can be created manually including file upload.|
|Fiori based tools||Replicate Runtime Hierarchy||Hierarchy||With this app, data of set-based hierarchy is replicated to HRRP* tables which are used in CDS View for hierarchy.|
*1 See the blog to create WEB Dynpro Grid, Design Studio app using Launchpad designer.
embedded analytics, instead of traditional reporting tools
In S/4HANA, it is recommended to use and build CDS View based analytical apps (embedded analytics) instead of traditional Reporting tools/apps like Report Writer, Report Painter, Drill Down Report, ALV etc.. although they are still supported.
Fiori / CDS View based reports are expected to be used instead of classical reporting tools as they are in the Compatibility Pack. The support of the functions in Compatibility Pack after 2025 is not confirmed. ( SAP Note 2269324).
See the section of the blog for analytics based on Universal Journal.
FI (Note 2579584)
CO (Note 2349297)
PS (Note 2267286)
LIS SD (Note 2267348)
LIS PP (Note 2268063)
LIS QM (Note 2270193)
LIS EAM (Note 2267463)
LIS Vendor evaluation based (Note 2267414)
In my knowledge, many customers start using WEB Dynpro Grid or Fiori Design Studio instead of Report Painter report, and List Report instead of ALV. However, when using S/4HANA, customers can enjoy much richer content types, e.g. Overview Page, KPI tile, than in ECC, so customers and partners are expected to understand new content types and apply them for their report/analytics in S/4HANA. For doing that, the approach to evaluate standard Fiori apps would help.
Furthermore, I believe “the white space” should be targeted to create value. That is, as analytics function is much more enhanced in S/4HANA, it is possible and expected to consider providing MUCH RICHER analytics to MUCH MORE users. It should be effective way to create values from S/4HANA.
Relation to Machine Learning in S/4HANA
There are some Machine Learning Scenarios in S/4HANA, and one of the scenario is Fiori analytical application in which some figures are calculated with predictive algorism in the data source. I call it “S/4HANA embedded Machine Learning” in this blog. In other word,“embedded predictive analytics” app is a kind of embedded analytics, or Fiori Analytics. Some are KPI tile and some others are Fiori Elements ALP app (examples are in the blog and the demo), and only the difference from normal analytical app is predictive algorism is included in the data source to calculate some predictive figures, e.g. sales forcast. Predictive Model can be created with Intelligent Scenarios Lifecycle Management.
There are some other Machine Learning solutions in S/4HANA, e.g. Cash Application, Copilot and Conversational AI. embedded predictive analytics is one of them, but technically each solution is technically different.
embedded analytics, BPC optimized for S/4HANA,SAP Analytics Cloud and BusinessObjects
embedded analytics is not the only Analytics solution in S/4HANA, but BPC optimized for S/4HANA provides analytical functions and apps. It is also possible to create analytical app based on the data source in S/4HANA using Web IDE (Fiori Elements etc.), SAP Analytics Cloud in SAP Cloud Platform and BusinessObjects. Below is the overview of Analytics within S/4HANA.
BPC Optimized for S/4HANA
BPC Optimized for S/4HANA architecture
BPC Optimized for S/4HANA, a.k.k IBP for Finance, is a planning solution in S/4HANA On Premise, which is the contents of BPC embedded for planning in S/4HANA. BPC embedded is based on BW functions, e.g. Realtime Infocube. In other words, BPC Optimized for S/4HANA uses embedded BW function in S/4HANA. For actual data, HANA Calculation Views are created for tables in S/4HANA, e.g. ACDOCA, and they are accessed directly via BW Virtual Infocube and Virtual InfoObject. Planning data is stored in BW Realtime Infocube or ACDOCP. (From technical point of view, data model for planning can be created using CDS View using Analytics/AnalyticsDetails annotations but it is not used in BPC Optimized for S/4HANA.)
Analysis for Office is used as the frontend to input data, and can also be used for analytics.
Realtime Consolidation, being replaced into Group Reporting as of S/4HANA1809, is also embedded BW based solution (tech name starts with “/ERP/RTC”) in S/4HANA. So are the cases for Cash & Liquidity Management (tech name: /ERP/FCLM) and Overhead Cost Controlling (/ERP/COOM).
There are many Planning solutions where the name of some are similar ( which can be confusing!) This blog provides further insights into the planning solution.
Analytical Apps for BPC Optimized for S/4HANA
As planning data is input via BPC Optimized for S/4HANA function, Plan/Actual Report for Management Accounting, ( some of the most important reports in ERP system) are provided from BPC Optimized for S/4HANA. That is, the most important reports are based on exceptional technology! BPC Optimized for S/4HANA has Fiori apps, e.g. P&L – Plan/Actual, P&L – Actuals (not only Plan/Actual reports). App type of all analytical apps for BPC Optimized for S/4HANA is WEB Dynpro Grid, Design Studio.
CDS View based, not BW Query based, Fiori apps are released for S/4HANA Cloud, but not for S/4HANA On Premise 1709 and 1809. In those S/4HANA On premise version, it is possible to create CDS View based custom WEB Dynpro Grid or Fiori Design Studio apps instead of using BW Query based standard apps. See the Note 2535903 for further detail.
In general, BusinessObjects Analysis for Office is used as a frontend to input data, and it can also be used for analyzing data in Excel.
For authorization of BPC Optimized for S/4HANA analytical apps, BW Analysis Authorization is used, not DCL of the CDS View. So, it might be the case to create BW Analysis Authorization object for filtering the data based on (for example) Profit Center, in addition to the DCL on Profit Center for CDS View.
See the section of the blog to find the list of Fiori app and alternative CDS Views.
SAC BI and Application Design, and BusinessObjects
Data in S/4HANA can be utilized effectively, e.g. to create sophisticated analytical app, with SAC BI and Application Design, and/or BusinessObjects. BW InA connection, or Analytic Query of CDS View in S/4HANA, is the main connection in those scenarios.
SAP Analytics Cloud (SAC)
SAC is cloud based analytics solutions, which consists of BI (Story) and Application Design (for analytics and reporting), Planning and Augmented Analytics (or Machine Learning). SAC BI is like BusinessObjects Lumira Discovery (Self-service) and SAC Application Design cover the functions of Lumira Designer (to create sophisticated analytical app). I think SAC Planning is similar to BPC standard and SAC Augmented Analytics is in the same position as SAP Predictive Analytics. SAC also includes SAP Analytics Hub, Digital Boardroom and Roambi.
Analytic applications using data in S/4HANA can be created with SAC BI and Application Design. SAC BI and Application Design has 2 connection scenarios, 1) Live connection, 2) Import data connection.
For Live Connection, BW InA is used, so the Analytic Query of CDS View can be the source in S/4HANA.
But unlike BW, sophisticated backend data modeling and data transformation is not possible in SAC, e.g. data integration between data in S/4HANA and that in Ariba including data transformation, is not possible. SAC BI and Application Design is almost the frontend solution.
BusinessObjects is BI tools set consisting of Web Intelligence, Crystal Report, Live Office, Analysis Office and Lumira (Discovery/Designer). Explorer, Dashboard (f.k.a. Xcelsius) are also included.
Customers who have BusinessObjects license can use it to create analytical applications/reports in S/4HANA. As Analytic Query of CDS View in S/4HANA can be used just the same way as BW Query, customers who have used BusinessObjects for BW Query can use it just the same way for S/4HANA Analytics. Analytic Query is main connection in BusinessObjects scenario.
For using Analytic Query in BusinessObjects apps, e.g. WebI, AO, it has to be released as of S/4HANA 1809. See the SAP Note 2798285 or further detail.
There are many tools in BusinessObjects and SAC and positioning of some tools are similar, so SAP have converging the tools as below. Lumira Discovery, Explorer will be replaced to SAC Story, and Analytics Designer of SAC can be used instead of Lumira Designer. Detail of the future direction of BusinesObjects is in the blog.
It is normal scenario to use SAC and BusinessObjects together. Analysis Office is one of the main focus, and Web Intelligence and Crystal Report are the main solutions for Reporting. Key results of the survey of analytics and BI decision maker shows
- 82% percent of companies agree that hybrid analytics/BI and data processing is a critical next step in the evolution of their analytics/BI
- The majority of companies (60%) see some sort of hybrid configuration as the next iteration of their analytics/BI
SAP will continue to invest BusinessObjects solution. BI4.3 is planned.
Relation between embedded analytics and BW
Positioning embedded analytics, Standalone BW and Embedded BW
For S/4HANA Analytics, Standalone BW or Embedded BW can be the data source for analyzing data in S/4HANA as well as embedded analytics (CDS View based analytics). Embedded BW is the BW function in S/4HANA system. Standalone BW includes BW/4HANA, BW on HANA, and SAP Data Warehouse Cloud, and some customers might love to use HANA SQL Data warehouse, IQ or 3rd party Data Warehouse instead of standalone BW.
There are many discussions about the positioning of BW and embedded analytics like below.
I would like to share my opinion as a referential info.
Generally speaking, some or many “Operational Reports” currently in BW/Data warehouse could be replaced with S/4HANA CDS View based analytics. However, the answer is NOT “Black or White” but depends on each customer’s situation and opinion.
The points in the following table are the examples of reasons why “BW” is needed (embedded analytics might not be enough), and Functional requirements of them could be filled by embedded BW.
|Functional Requirements embedded BW could cover||Non-Functional Requirements Standalone BW is needed|
|ERP Data Model: The data model normalized too much and performance would be bad if the tables are used directly. Then it might be necessary to de-normalize table for analytics Thanks to S/4HANA data model simplification, in more cases, it is not necessary to create different flat tables.||Impact of System Load to OLTP operational processes: it might be concerned that system load for OLAP function has bad impact to OLTP processes.|
|Necessary to transform data: Some data has to be transformed from document data for analysis.||Old Data: It is necessary to analyze older data for OLAP application, but want to avoid having older data for OLTP system.|
|Integration with external data: For analytics external data has to be analyzed together with data in S/4HANA.||Frequent SP update in OLAP system: A customer might want to upgrade SP level only of OLAP function, but want to avoid frequent update in OLTP system.|
|BW/DWH is positioned as global integration layer: BW/DWH system is positioned as global data integration data and data from each sub-systems are gathered into this integration system.||More tolerant system management policy for OLAP: A customer might want to manage OLAP application more tolerantly than OLTP system, e.g. creating prototype objects in Production system.|
This document explains detail about embedded BW. The amount of data persisted in the Embedded BW should not exceed 20% of the overall data volume of the system. BPC Optimized for S/4HANA can be said to be a kind of embedded BW. But embedded BW is BW on HANA, not BW/4HANA, and SAP has no plan to replace it with BW/4HANA.
Example of the change of BW positioning after moving to S/4HANA
Below is an example of the change of BW positioning after moving to S/4HANA. Before S/4HANA, BW was used for operational reporting for ERP, but after moving to S/4HANA, operational reporting functions are recreated with CDS View or embedded BW. After moving to S/4HANA, positioning of BW is changed and expanded and external data and big data are stored in new BW system.
(Document as it is)
|BW Provider||CDS View in S/4HANA||Recreate|
|BW Provider||Embedded BW in S/4HANA||Transport or recreate|
|External1||BW Provider||BW Provider||No change|
|External2||None||BW Provider||Newly created|
|BIG Data||None||BW Provider (Virtual)||Newly created|
Data Volume Management between S/4HANA and BW
Now operational reporting can be realized in S/4HANA. But it is normal requirement to analyze older data. There should be mainly 2 options.
- Stored older data in S/4HANA, e.g. data of 5 years ago.
- Archive older data in S/4HANA and store and analyze it in BW.
For optimizing cost to manage large data volume, Data Aging could help in S/4HANA. Aged data is stored mainly in disk only but stored in memory only when accessed. But it cannot be used for analytics and it could reduce memory size only but cannot reduce disk size. I think it is half way solution, so don’t like to use. Detail about Data Aging is in SAP Note 2416490.
In BW, more sophisticated large data volume management is possible, with e.g. Near Line Storage (NLS) to store the older data to external storage but available in reports, and with Scale-Out (generally available in BW, different from S/4HANA) in wchi hardware resource is consumed more efficiently. (However, a bit more CPU resource would be needed in HANA for BW compared to S/4HANA, according to the result of Quick Sizer.)
Extractors for BW in S/4HANA
Change of the data model in S/4HANA impacts on the Extractors for BW in S/4HANA. Some Extractors are no longer supported in S/4HANA. It can be checked with Readiness Check and detail is in SAP Note 2500202 and the list attached in the Note.
Other topics related to embedded analytics
HANA Calculation View and HANA Live in S/4HANA
HANA Calculation View is still available in S/4HANA, although S/4HANA embedded analytics is based on ABAP CDS View. HANA Calculation View was the foundation of analytic application in Suite on HANA and S/4HANA Finance, but a strategic decision was taken to switch the technology from Calculation Views to CDS Views with SAP S/4HANA. See SAP Note 2270382 in detail. This blog argues the difference between HANA Live and embedded analytics in S/4HANA Enterprise Management and I added some comments. In S/4HANA Enterprise Management, it is recommended to build analytical apps based on CDS View.
HANA Live is the predefined HANA Calculation Views for business entities in Suite on HANA and S/4HANA Finance. However, HANA Live for S/4HANA Enterprise Management is not shipped although the data model is drastically changed in S/4HANA Enterprise Management (especially in Logistic area). For the customers who have used HANA Live and HANA Calculation View would have to pay effort to adjust data model manually when moving to S/4HANA Enterprise Management(1511~). However, In some SAP solution like CAR, HANA Calculation View is still the main data source for analytical apps.
In the InfoProviders/InfoObjects for actual data in BPC Optimized for S/4HANA, HANA Calculation View is used as the sources of Virtual InfoCube or InfoObject.
CDS View vs HANA Calculation View
CDS View has sophisticated functions which can be added using Annotation, but it is a bit SAP specific and SQL in CDS might be less flexible than HANA Calculation View, which is based on HANA Native SQL, more industry standard. Native SQL can be used in CDS View by using Table Function.
|ABAP CDS View||HANA Calculation View|
|(Quite similar to) ABAP SQL||HANA native SQL / SQL Script / CE Functions|
|Sub-selects currently not supported within the same CDS Views||Sub-selects supported within the same calc model|
|BICS/OData/ina (MDX is not tested)||SQL(ODBC,JDBC)/MDX/OData (via XS Engine)|
|OData service is generated automatically||Exposed as OData Service via XS engine|
|BICS can be used for BusinessObjects / SAC online scenario||SQL/MDX is used for BusinessObject|
|Annotations is supported.||Annotations are not supported.|
|SELECT in ABAP program is possible||SELECT in ABAP Program is possible via External View, AMDP.|
|Associations and path expression||No associations|
|Data element and value help in ABAP dictionary can be utilized, predefined Data elements are reusable.||Data element and value help in ABAP dictionary are not supported|
|BW specific calculations and functions are available. Variable, exceptional aggregation, currency conversion, hierarchy.||Exceptional agregation is not supported. Hierarchy is supported but complex to use.|
|ABAP transport management system||Transport management is necessary for HANA Layer Object as well as objects in ABAP stack.|
|User in ABAP stack is used||HANA user required, must be identical to ABAP user|
|ABAP in Eclipse Editor (script-based) / Fiori Custom CDS Views/Analytical Queries||HANA Studio (graphical modeler is available)|
Sizing for embedded analytics in S/4HANA and large data volume management.
As more accesses are happening in S/4HANA for analytics, more resource would be needed in S/4HANA. Sizing for embedded analytics can be calculated in Quick Sizer. Additional memory size should not be so large in general, but impact of SAPS (CPU resource) would be bigger.
Average runtime of each query is
– 2 seconds for light queries,
– 5 seconds for medium queries, and
– 10 seconds for heavy queries.
Note: in the Quick Sizer for Embedded Analytics, it is not possible to size the data volume in the case in which the largest table has more than 500 million records. In the case, the Quick Sizer proposes to create Incident to ask advice.
The longer the runt-ime is, including the larger the processed record number is, the more accesses fore analytics are happening, the more hardware resource, especially SAPS (CPU resource in HANA server) would be needed. But there would be the limit for enhancing CPU resource in HANA in general.
This implies, CDS View must be optimized for performance to avoid longer runtime not only from performance point of view, but from hardware resource issue, e.g. if it takes 60 seconds for a query, it would consume 6 times more resource than heavy query (supposed average runtime is 10 secs).
Too many query accesses should be avoided as much as possible. The figures in the KPI tile or dynamic tile cause the access only when launching Fiori Launchpad, so too many dynamic tile or KPI tile could cause so many access, so it should be avoided or cache should be used as much as possible. Dynamic Result Cache would also help.
For sizing resource for BPC Optimized for S/4HANA, see the blog for further detail. Sizing for embedded BW would have to be considered if used.
Sometimes, DB hint would help performance optimization, It can be added to the CDS View with the annotation “@Consumption.dbHints:true”. To standard VDM, Meta Data Extension can be used to add the DB hint. But In the target view, Metadata Extension must be allowed: @Metadata.allowExtensions:true
Cross system Data Volume Management would have great impact on sizing both for S/4HANA and Standalone BW.
Static Cache and Dynamic Cache View could help optimizing performance and resource consumption by using cache instead of direct data access to the tables. Partitioning large table would also help performance optimization.
Access to data in Native storage Extension (NSE), in which data is stored normally in disk and maximum dynamic memory size can be limited, would also help. But customers have to confirm if it would be effective at their own responsibility. (SAP Note 2816823, 2973243)
For avoiding system getting unstable and impacting on OLTP processes, it might be the option to move analytical functions to BW from S/4HANA. Active-Active Read Enable would mitigate system overload by too many accesses to S/4HANA primary instance. It is the solution to use secondary HANA DB instance, which generally prepared for High Availability, for read-only applications even in normal situation.
In addition, Workload Management in HANA would help by, e.g. lmiting the memory size for one SQL statement, max concurrency.
Thanks for reading.
Enjoy Analytics in S/4HANA!