OpenSAP Sac5 Week 5 All Slides
OpenSAP Sac5 Week 5 All Slides
Professional design of centrally governable analytic content, ranging from dashboards via guided
analytics to sophisticated planning and smart applications
What is an application?
▪ Applications range from simple dashboards to
complex applications
▪ Applications expose custom logic based on
scripting
What is analytics designer?
▪ Rich set of capabilities for professional designers
of analysis applications to meet sophisticated
business requirements
▪ Dedicated development environment with
advanced scripting capabilities
▪ Extend applications via custom widgets and APIs
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2
Application design overview
Analytics designer completes SAP Analytics Cloud
Customize
Integrate/Embed
Extend
Reuse*
Content Network
Mobile Ready
Fundamentals
▪ Simple widgets, data-driven widgets, container widgets etc.
▪ Powerful scripting capabilities
▪ Script variables and script objects for modularizing and
reusing code for enterprise applications
▪ Technical objects
Others
▪ Add analytical applications to recently used list on
Home page
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6
Application design overview
Sample content
Demo Samples
▪ Best Run Sales Overview
▪ Management Reporting
Dashboard
▪ Using the Layout APIs
inside applications
Feature Samples
→Refer to the
screenshot on the right
side
▪ Generic analysis is delivered as sample content to cover ad-hoc /slice and dice analysis scenarios for the SAC model
▪ Customers can use it directly or use it as an example and further configure/change/enhance it
▪ Including functionalities:
− Generic app approach: One application for analyzing all SAC models
− Data browser to select SAC model as data source
− Supported data source: all SAC models
− Dynamically sets SAC model ID via URL parameter
− Data visualization: table
− Add/remove dimensions/key figures via navigation
panel
− Filter line functionalities
− Quick menu/context menu for table can be configured
− Variable prompt dialog
− Export table as Excel/CSV, export app as PDF
− Bookmark: global and personal
− Pause, refresh
− Information panel (filter information, variable information)
− Table setting panel (scaling, unit etc.)
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8
Application design overview
Demo
▪ Documentation Link:
https://help.sap.com/viewer/product/SAP_ANALYTICS
_CLOUD/
▪ Developer Handbook:
https://d.dam.sap.com/a/3Y16uka
▪ API Reference Documentation:
https://help.sap.com/doc/958d4c11261f42e992e8d01a
4c0dde25/latest/en-US/index.html
▪ Analytics Designer Community Link:
https://community.sap.com/topics/cloud-
analytics/analytic-applications-api
▪ Product Tutorials:
https://wiki.scn.sap.com/wiki/display/BOC/SAP+Analyt
ics+Cloud+-+Official+Product+Tutorials
▪ Product Updates and Plan:
https://www.sapanalytics.cloud/product_updates/
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10
Thank you.
Contact information:
open@sap.com
Follow all of SAP
www.sap.com/contactsap
Outline
Builder/Styling
Panel
Info Panel
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2
Analytics designer fundamentals
Intuitive design environment
Outline view
▪ Can be turned on/off
▪ Including layout part and scripting part
▪ Provides the following options via context menu
– Hide/Delete/Rename widget
– Rename/Delete scripts or events
– Where-used-list
– Search bar for searching objects within the
complete tree
5 4 6
1▪ Create analytic applications
2▪ Add widgets into the canvas
3▪ Define widgets via Builder/Styling panel 2
open@sap.com
Follow all of SAP
www.sap.com/contactsap
Subset of JavaScript
▪ Strongly and statically typed
▪ Rich code completion capabilities
▪ No automatic type casting
▪ External libraries
− Math, Date, Number, Array, Functions on String
Scripting
▪ Widgets
▪ Script variables
▪ Technical objects like Bookmark Set, Export to PDF,…
▪ The Keyword this – allows you to ignore the object name
visible on the outline
Editor
▪ CTRL+Space
− Completes the code automatically
− Displays a value help
▪ Automatic script validation in background shows errors and
warnings
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2
Scripting APIs, events, themes, and CSS capability
Script language – Events
Events
▪ Scripts always run in response to something
happening in the application
▪ Events are the trigger
Widget Events
These events are executed when the user triggers them
▪ Button → onClick
▪ Table → onSelect or onResultChanged
Application Events
▪ onInitialization
− This event runs once when the application is
instantiated by a user
▪ onPostMessageRecieved
− If your application is embedded in an iFrame
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Scripting APIs, events, themes, and CSS capability
Script language – Global script variables
Types
▪ Primitive,
− e.g. string, Boolean, integer, number
▪ Non-primitive
− button, data source, chart, etc.
Usage
▪ Within scripting
▪ In calculated measure
▪ Scheduling
▪ Data change insight
▪ Bookmark
▪ As dynamic text in the text widget
▪ Simple widget property binding
− e.g. Dropdown, Checkbox Group
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4
Scripting APIs, events, themes, and CSS capability
Script language – Global script object
Definition
▪ Configurable name
▪ Return type
▪ Any number of typed arguments
▪ Certain script logic
getDataSource APIs
▪ Data-bound widgets Selections
− Table ▪ Selection will be expressed in JSON/object
− Chart expression format
− Custom widgets ▪ You can iterate over all elements of a selection
▪ No shared data source concept with a for-in loop
▪ Data sources based on models ▪ Table and chart provides a selection API
▪ Access to, for example getSelections
− Dimensions / Dimension properties − return an array of selection objects, each
− Measures representing a single selection
− Members ▪ You can retrieve specific data from data sources
or result set
−…
ResultSet
▪ Exposed on the data source of a chart or table
▪ Returns the result set according to the selected
data or context
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6
Scripting APIs, events, themes, and CSS capability
Theme
With console.log()
▪ Write messages directly to the browser’s JavaScript
console
open@sap.com
Follow all of SAP
www.sap.com/contactsap
open@sap.com
Follow all of SAP
www.sap.com/contactsap
Closed-Loop Scenarios
▪ Enable Insight to Action scenario
▪ Supported backend systems by leveraging live
connection:
– SAP HANA
– SAP BW/BPC
– SAP S/4HANA on-premise
▪ OData technical objects need to be defined in
design time
▪ Leveraging script APIs
– To call into transactional system to take an action
– Or programmatic access to OData to retrieve
information from transactional system
open@sap.com
Follow all of SAP
www.sap.com/contactsap
▪ Custom UI rendering
▪ Custom BuilderPanel
▪ Custom StylePanel
▪ Custom programmable interface
▪ Custom programmable events
Mandatory Optional
open@sap.com
Follow all of SAP
www.sap.com/contactsap
Most Important:
▪ Loading invisible widgets in the background
▪ Use the Pause Refresh API
▪ Enable planning for tables only when planning is used
▪ Use member info object with setDimensionFilter()
Important:
▪ The design of the applications
▪ Analytics designer script APIs
▪ Widgets
▪ Other considerations
open@sap.com
Follow all of SAP
www.sap.com/contactsap
© 2021 SAP SE or an
an SAP
SAP affiliate
affiliate company.
company. All
All rights reserved. ǀ INTERNAL
rights reserved. PUBLIC 2
Course summary
Resources
▪ Blogs
open@sap.com
Follow all of SAP
www.sap.com/contactsap