What is the SAP Analytics designer?
- Advanced Analytics, Data Science, Reporting
- analytics, analytics designer, data
- 7 April 2022
- 5 min reading time

Janine Wenk
Analytic Applications can be used especially when very special requirements for the layout of dashboards or also for interactions within a dashboard have to be realized. Or, for example, when other services are to be called directly from the dashboard, analytic applications can be used.
Table of contents
1. The SAP Analytics Designer as a tool for Analytics Applications
Analytics Applications can be used to complement SAC stories. They offer you, as an application developer, many more options than the standard story design options and allow you to create a highly customised and interactive experience for the end user. This wide range of customisation options - from very static to very interactive - is possible with the SAP Analytics Cloud Analytics Designer.
2. Why Analytics Applications?
Analytics Applications can be used in consulting, especially if the client has very specific requirements for both the layout of the dashboards and interactions within a dashboard. Analytics Applications can also be used if other services are to be called up directly from the dashboard.
3. Main functionalities of the Analytics Designer
Through the scripting functionality of Analytics Designer, individual dashboards can be created according to the customer's requirements. There are also additional widgets for filtering, pop-ups, and interactions, for example, to implement custom filtering capabilities. The Script APIs of Analytics Designer enable the use of many existing story functionalities and the extension of these.
The following figure shows an example dashboard. In the dashboard itself, a distinction can be made between byMonth and byAgent. Filters can be applied with a click on the filter symbol in the top right-hand corner. It is also possible to change between a display of monthly values and cumulative values with a switch.

4. our top 5 programming hacks for Analytics Designer
There are various scripts and guides that can be helpful when programming Analytics Applications:
1. Analytics Designer API Reference Guide
Here you will find the guide which is provided free of charge by SAP. It contains:
- Definition of the API
- Example for "getMembers":
2. Analytics Designer Handbook
- Find help on a specific topic (e.g. bookmarks)
- SAP has a great free Analytics Designer Handbook, you can find it here.
3. Sample SAP apps in the SAC
- Demonstration of various functions
4. CTRL + Space
- With this shortcut you can complete scripting you have started and see which APIs are possible.
5. Activating the error help
- If there is an error, the error message and error help are displayed after clicking "i".
5. Debugging in the app
To debug directly in the app, the following steps must be followed:
- In the debugger script, add a statement and set the breakpoint there.
- Open story in debugger mode and add "&debug=true" to the link of the executed app.
- Open Developer Tools.
- Search for the corresponding script under Sources (only executed scripts are visible).
- Add the watch variables that you want to observe.
- Navigate to the next step.

6. Messages in the Analytics Designer: The BusyIndicator & the Message
There are two forms of notifications in the app:
6.1 BusyIndicator
If delays occur, the BusyIndicator can be used to tell the user that the app is loading.
Alternatively, the loading indicator can be activated under certain conditions: This is displayed as soon as the time is exceeded and disappears when the content has been loaded.
6.2 Message
There are four different types of messages: Info (grey), Warning (yellow), Error (red) and Success (green).
The following is a code example for displaying a message:
//Errorbox
Application.showMessage(ApplicationMessageType.Error, "Ein Fehler ist aufgetreten. Bitte überprüfe die Selection");
6.3 Notification
A notification can be sent via e-mail or mobile app. The content must be in HTML format.
7. Planning
Various functions, such as getPublicVersion("Budget") or getPrivateVersion ("Budet JWE private") can be used to retrieve private or public versions.
7.1 Version management
Compared to the stories, the version management can be designed individually. Versions can be copied, deleted, published or reverted.
7.2 Data Actions
Data Actions can be used to copy data and specify parameters or pass them via script:
//set parameters for data action
da_copy_ca.setParameterValue("SourceVersion", sourceVersion);
da_copy_ca.setParameterValue("TargetVersion", targetVersion)
The following example shows the execution of a data action that can end in an error or success message:
//execute data action
var copy_ca_response = da_copy.ca.execute();
if (copy_ca_response.status === DataActionExecutionResponseStatus.Success) {
Application.refreshData([table_central_assumptions.getDataSource()]);
Application.showMessage(ApplicationMessageType.Success,
"Central Assumptions were successfully populated!");
}
else {
Application.showMessage(ApplicationMessageType.Error,
"An error has occurred.");
};
7.3 Result Set
On the DataSource of a chart or table, a lot of information about each displayed data point can be obtained using the getResultSet() API. Only dimensions and members that are also in the drilldown and only posted values are displayed. For example, in planning or reporting, depending on scripting, the display can be in a pop-up (e.g. Your value is negative).
8. Data change insight with the Analytics Designer
By comparing two snapshots, insights about data changes are generated, which can be received as an email (on the homescreen or as a mobile app notification). The generation of this email can be done automatically on a recurring basis.
9. Other functions
ScriptVariables vs. ScriptOptions
ScriptVariables are reusable variables. They can also be used in Calculated Measure.
Script Objects
Script objects in Analytics Designer are containers for the reusability of scripts in multiple events. This makes the code not only clearer, but also reusable. In addition, when changes are made, the adjustments only have to be made in one place instead of x places.
Filter
Working with filters can be done via input controls (these work like in stories) and filterlines without scripting. The filterline can also be used to directly change the table filters. The filterline reflects changes made in the script. Additional scripting allows the use of dropdowns, checkboxes, radio buttons, etc., which brings great flexibility.
Linked Dimensions
Since Q1 2022, Linked Dimensions are also possible in apps on which the input controls can be created.
Performance Measurement Pop-up
The Performance Measurement pop-up shows how long the execution of a script takes (in ms). This allows two different scripting variants to be compared in terms of performance. Some avoidable negative impacts are also highlighted in red.
Timer
The timer component can be used to execute functions at regular intervals. Examples are the regular refresh, animations such as automatic scrolling (Featured Application: Feature Use timer features inside Application) or the dynamic switching of tabs.
Data Refresh
Since Q4 2021, it is possible to not automatically refresh widgets that are not visible. The script API to change the refresh mode is setRefreshPaused.
Flow Panel
With the help of the Flow Panel, it is possible to distribute the charts differently for different screen sizes.
Want to know more about Analytics Designer?
Would you like to delve deeper into this topic? Or are you looking for a consultancy with SAP Analytics Designer expertise?
Then we would be happy to talk to you in person.

Published by:

Janine Wenk
Professional SAP Analytics consultant

Janine Wenk
How did you like the article?
How helpful was this post?
Click on a star to rate!
Average rating 5 / 5.
Number of ratings: 4
No votes so far! Be the first person to rate this post!