0% found this document useful (0 votes)
64 views86 pages

OpenSAP Sac5 Week 5 All Slides

Uploaded by

Joel Franco
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views86 pages

OpenSAP Sac5 Week 5 All Slides

Uploaded by

Joel Franco
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 86

Week 5: SAP Analytics Cloud, Analytics Designer

Unit 1: Application Design Overview


Application design overview
SAP Analytics Cloud, analytics designer – What is it?

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

One Analytics Platform Agile Development Delight Your Users


Develop analytic applications Start from existing content, Guide the users and adjust
that bring together BI, planning, templates*, or user stories, and the widget’s behavior based
and predictive capabilities customize, integrate, and extend on their expectations

Customize

Integrate/Embed

Extend

Reuse*

Content Network

Mobile Ready

* Planned for future releases


© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Application design overview
Analytics designer functionality

Including most of the story features with additional


scripting access:
▪ Chart/Table/Images, etc.
▪ Input control, linked analysis, linked dimension
▪ Hyperlink etc.

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

Supports planning capabilities with scripting access


▪ Expose planning features via toolbar and quick action
menus
▪ Customize the planning workflow through analytics
designer-specific features
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4
Application design overview
Analytics designer functionality

Advanced dashboarding capabilities:


▪ Theming/CSS support for customized and attractive
user interface
▪ Advanced responsive layout
▪ Alerting and Data Change Insight capability
▪ Hyperlink support for image and shape widgets
▪ Fully flexible navigation to other artifacts and
transferring parameters
▪ Integration with mobile iOS app

Flexible embedding and extension


▪ Seamless embedding with third-party applications
▪ Extending applications via custom widget SDK

Capabilities for closed-loop scenarios


▪ OData calls to call into transactional system
▪ Programmatic access to OData
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5
Application design overview
Intuitive design-time

Designer-friendly creation environment


▪ Powerful scripting capabilities with content
assistance
▪ Script variables
▪ Script objects for modularizing and reusing code
for enterprise applications
▪ Technical objects to add functionalities
▪ Design-time UI:
− Layout outline with context menu to add and edit
scripts
− Design area
− Properties and script editor
− Where-used-list, error panel

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

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Application design overview
Generic ad-hoc
Generic Ad-hocanalysis
Analysis

▪ 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

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Application design overview
Useful links

▪ 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

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 5: SAP Analytics Cloud, Analytics Designer
Unit 2: Analytics Designer Fundamentals
Analytics designer fundamentals
Intuitive design environment

Toolbar (edit mode) Canvas Run Analytic Application

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

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Analytics designer fundamentals
Intuitive design environment

Analytics designer-specific widgets


▪ Filter Line, Dropdown, Radio Button Group,
Checkbox Group, Button, Input Field, Slider and
Range Slider, Flow Layout Panel, Tab Strip

Reusing and extending story widgets


▪ Image, Shape, R Visualizations, Text, RSS Reader,
Web Page, Data Action Trigger, Clock, Symbol,
Crosstab
▪ Charts can be extended with additional analytics
designer properties
▪ Naming, visibility at view time and scripting
capabilities

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Analytics designer fundamentals
Scripting

Rich scripting capabilities


▪ Building user interaction in a custom way,
changing data set results and dynamically
altering layouts
▪ Subset of JavaScript
▪ Executed by the Web browser JavaScript engine
▪ Content assistance (CTRL + Space) and value
help available – getDimension(), setFilter(), etc.
▪ Completeness and syntax check
▪ Glance over several scripts at once
▪ Commenting and uncommenting

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Analytics designer fundamentals
Modes

3 modes in analytics designer


▪ Edit mode
– Design-time mode for editing applications
– Create, Read, Update, and Delete (CRUD) is
required
– Opened by default if user has CRUD access
▪ Present mode
– Runtime mode
– Only read access is required
– Opened by default when running the
application from the design time. https://xxx/sap/fpa/ui/tenants/1fb7f/app.html#
/analyticapp&/aa/B6F94AF585128CC9A6B8
▪ View mode 2353F254947F/?url_api=true&mode=prese
– Runtime mode nt&view_id=appBuilding
– Only read access is required https://xxx/sap/fpa/ui/tenants/1fb7f/ap
– Opened by default if user only has read p.html#/analyticapp&/aa/B6F94AF58
5128CC9A6B82353F254947F/?url_a
access pi=true&mode=view&view_id=appBu
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC
ilding
6
Analytics designer fundamentals
Demo steps

5 4 6
1▪ Create analytic applications
2▪ Add widgets into the canvas
3▪ Define widgets via Builder/Styling panel 2

4▪ Add events/scripting to the widgets


5▪ Save analytic applications
6▪ Run analytical applications
3

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Analytics designer fundamentals
Demo

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Analytics designer fundamentals
Resources

▪ Help Documentation: Analytic Applications (Analytics Designer)

▪ Developer Handbook: Analytics Designer Developer Handbook

▪ API Reference Documentation: API Reference Documentation

▪ SAP Analytics Cloud Tutorial Product: Product Tutorials

▪ Videos: Analytics Training Videos

▪ User Community: Analytic Applications

▪ User Community: Ask a Question

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 5: SAP Analytics Cloud, Analytics Designer
Unit 3: Scripting APIs, Events, Themes, and CSS
Capability
Scripting APIs, events, themes, and CSS capability
Script typing

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

Global Script Variables


▪ Reusable elements that store a value of a certain type
▪ Exist during the full execution time of the analytical application
▪ Only available for that specific application
▪ Expose as URL parameter (p_ as prefix is needed)

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

Global Script Objects


▪ Kind of code container
▪ Maintain and organize re-usable script functions
▪ No own event

▪ Reduce code duplication


▪ Make maintenance of applications easier
▪ Can be used in other scripts

Definition
▪ Configurable name
▪ Return type
▪ Any number of typed arguments
▪ Certain script logic

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Scripting APIs, events, themes, and CSS capability
Script language – APIs

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

▪ You can define/load/edit a theme at application


design-time
▪ You can store all the widget settings
(background color, style, font size, font color
etc.) in a theme
▪ The theme is stored in the file repository and
can be reused in any other analytical
applications
▪ If the theme is changed
– App developer will be asked whether these
changes should be applied to the existing
applications
– End user will see the “old theme” at
runtime if the developer has not explicitly
accepted the new theme at design time

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Scripting APIs, events, themes, and CSS capability
CSS capability

▪ Additional CSS capabilities to customize the


application look and feel Theme-Level CSS
− Theme-level CSS: stored in file repository and can be
applied to multiple applications
− Application-level CSS: stored within analytic applications
− Widget-level CSS class: CSS class defined within theme-
level CSS or application-level CSS can be assigned to
individual widgets
− Application-level CSS can be saved as theme-level CSS
− Widget CSS class can be dynamically changed at
application runtime via script API
▪ Priorities to influence the style of applications
(from low to high):
− Application theme
− Widget styling properties
− Theme CSS and application CSS
Application-Level CSS
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8
Scripting APIs, events, themes, and CSS capability
Debugging scripts in the browser

Browser’s Development Tools


▪ Chrome browser only
▪ Script transformation before it is run in the browser
▪ Script needs to be run at least once during the
current session
▪ Press F12 to open the browser’s development tools

Run in Debug Mode


▪ Add ;debug=true to the application URL
▪ Set breakpoint via script statement debugger;
▪ Comments in a script are preserved

With console.log()
▪ Write messages directly to the browser’s JavaScript
console

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Scripting APIs, events, themes, and CSS capability
Demo

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10


Scripting APIs, events, themes, and CSS capability
Resources

▪ Help Documentation: Analytic Applications (Analytics Designer)

▪ Developer Handbook: Analytics Designer Developer Handbook

▪ API Reference Documentation: API Reference Documentation

▪ SAP Analytics Cloud Tutorial Product: Product Tutorials

▪ Videos: Analytics Training Videos

▪ User Community: Analytic Applications

▪ User Community: Ask a Question

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 5: SAP Analytics Cloud, Analytics Designer
Unit 4: Advanced Responsive Layout,
Mobile Integration, and Alerting
Advanced responsive layout, mobile integration, and alerting
Flow Layout Panel for responsive layout

Flow Layout Panel as container widget for


building responsive layout without any code
▪ Widgets within flow panel can be flowed to
proper position
▪ Supports mixed usage of flow panel and existing
canvas layout panel
▪ Coding free via new breakpoint concept
▪ Auto-hiding widgets supported by breakpoint rule
▪ Design-time preview

Breakpoint definition Flow panel combined with fixed area

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Advanced responsive layout, mobile integration, and alerting
Integration with SAC mobile iOS app

The user can use the SAC mobile application to


list, view, and interact with the analytic applications
created by the analytics designer
▪ Seamless authentication and session lifecycle
management
▪ Import & live connections
▪ Application refresh, sharing, annotation, and
bookmarks
▪ iPad support (landscape mode), iPhone support
(portrait mode)
▪ Supports push notification to open the analytics
applications
▪ Hyperlink for navigation between applications and
stories
▪ Deep link
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Advanced responsive layout, mobile integration, and alerting
Running analytic applications in Safari browser and mobile settings in design time

The user can run analytic applications


in the Safari browser
▪ On iPad
▪ For embedding use cases
▪ Supporting mobile-specific gestures/events:
− Shake event
− LongPress event for button, shape, and image
widgets
− onOrientationChange event

Mobile setting in design time


▪ Set application property to “Mobile Enabled”
▪ Application will the be visible on mobile devices
▪ Application designer/developer must ensure the
application is suitable for mobile consumption
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4
Advanced responsive layout, mobile integration, and alerting
Data change insights

▪ Intelligent auto-discovery of significant changes to


data in a dashboard application within a particular
period
▪ Application consumer can subscribe to notification
or email regarding these data changes based on the
SAC scheduling infrastructure
– Set priority
– Set threshold
▪ Notification can be sent to desktop or mobile
devices via SAC iOS app
▪ Supported data connections:
– Both import and live connections
▪ Snapshots:
– Supports saving snapshots in remote repository
schema
▪ Data change insight is delivered as the technical
component with the corresponding script APIs
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5
Advanced responsive layout, mobile integration, and alerting
Central access to data change insights on SAC home screen

▪ The end user now can conveniently


filter and search important data change
insights across different analytic
applications through centralized access
to data change insights as a tile on the
SAP Analytics Cloud home screen.
▪ Add data change insights as a tile on
the SAP Analytics Cloud home screen
to include:
– Subscribed data changes across
applications
– Ability to search a certain data
change
– Ability to filter data changes with
different criteria (top N, time range,
importance, and the like)

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Advanced responsive layout, mobile integration, and alerting
Sending notification

▪ The application consumer can receive the


notification via email or the SAP Analytics Cloud
notification panel on desktop or mobile devices via
the SAP Analytics Cloud iOS app
▪ The application developer can now use the script
APIs to configure and send notifications
– Application.sendNotification()
▪ Email server:
– Email server within SAC: Maximum of 3
notifications can be sent per scheduling job to
avoid server overload
– Email server owned by customer: notifications
can be sent at application runtime without
scheduling infrastructure

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Advanced responsive layout, mobile integration, and alerting
Demo

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 5: SAP Analytics Cloud, Analytics Designer
Unit 5: Application Integration
Application integration
Seamless embedding with business applications

▪ Scenario 1: Analytic applications embedded into


other business applications
▪ Scenario 2: Analytic applications host and
communicate with other Web pages
▪ Bi-directional communications between business
applications and analytic applications
▪ Communication via posting message API

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Application integration
Embedding analytic applications in a host HTML page

▪ Embedding via iFrame


▪ Prerequisite: host HTML page is added as a trust
origin
▪ Posting message from an analytic application to a
host HTML page via post message event
▪ Multiple levels of host HTML pages are supported
– Sample code: postMessage (receiver:
PostMessageReceiver, message: string,
targetOrigin: string): void
▪ Receiving message from host parent or top HTML
page to analytic application
– Always check origin to ensure security
– Sample code:
onPostMessageReceived(message: string,
origin: string)
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Application integration
Embedding Web applications in analytic applications

▪ Embedding via Web page widget


▪ Posting message from host analytic applications to
embedded Web application
– Sample code: postMessage(message: string,
targetOrigin: string): void
▪ Receiving message from embedded Web application
– Sample code: onPostMessageReceived(message:
string, origin: string

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Application integration
Integration with OData

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

Price has been updated in SAP S/4HANA


© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5
Application integration
Creating a connection to SAP S/4HANA

▪ Choose Connection Type


– Direct
▪ Host URL and Client
▪ Authentication
– SAML Single Sign On
– Username and Password

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Application integration
Adding an OData service to a scripting object

▪ OData connections are found in the Scripting


Objects section of the outline
– Click the plus sign to add a new one
▪ Select the connection
▪ End-Point URL
– Taken from the SAP S/4HANA system
▪ Once you have selected the system and added
the end point, click refresh to see the available
entity sets and actions

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Application integration
Demo

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 5: SAP Analytics Cloud, Analytics Designer
Unit 6: Custom Widgets
Custom widgets
Quick preview

▪ Custom UI rendering
▪ Custom BuilderPanel
▪ Custom StylePanel
▪ Custom programmable interface
▪ Custom programmable events

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Custom widgets
Widget structure and components
Mandatory Optional

Index.json Main.js Responsible for


Widget
implementing widget
Declaration
Main business logic business logic
Declare component (e.g. UI rendering
address
charts)

Declare name, icon, Implement lifecycle


etc. callbacks (e.g. resize)

Declare programmable Implement


interfaces programmable interface

Declare programmable Declare programmable


events events

Optional, responsible for rendering


style-panel.js
StylePanel

Optional, responsible for rendering


builder-panel.js
BuilderPanel
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Custom widgets
Deployment

Mandatory Optional

▪ Developers should be responsible for


deploying custom widgets implementation SAC server Deployment server
(main.js, etc.)
index.json main.js
▪ SAC server stores only widget declaration files
(index.json)
▪ SAC server does not store or read widgets style-panel.js
implementation (main.js, etc.)
▪ The browser is in charge of loading the widget builder-panel.js
implementation (main.js, etc.)

Browser (Google Chrome)


user
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4
Custom widgets
Deployment

▪ Two locations needed for hosting the custom


widget:
− An SAP Analytics Cloud instance, on which
you upload the custom widget JSON file.
− An HTTP Web server with HTTPS enabled,
on which you upload the resource files
(Web components files)

Note that you need the appropriate permission


to create and upload custom widgets in SAP
Analytics Cloud

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Custom widgets
Data Binding

▪ Link models via Builder panel


▪ Set dimension/measures

Note that the View Time Optimization


should be enabled in order to use the
Data Binding Capability

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Custom widgets
JSON file

▪ Web components definitions


▪ Properties definitions
▪ Defining the dataBindings
▪ Specifying the feeds

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Custom widgets
Web component JavaScript file

▪ Define the template


▪ Custom element definition
▪ Functions definition

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Custom widgets
Demo

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Custom widgets
Resources

▪ Help Documentation: Analytic Applications (Analytics Designer)

▪ Developer Handbook: Analytics Designer Developer Handbook

▪ API Reference Documentation: API Reference Documentation

▪ SAP Analytics Cloud Tutorial Product: Product Tutorials

▪ Videos: Analytics Training Videos

▪ User Community: Analytic Applications

▪ User Community: Ask a Question

© 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

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 5: SAP Analytics Cloud, Analytics Designer
Unit 7: Performance Best Practices
Performance best practices
Best practices overview

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

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Performance best practices
Additional resources
▪ Analytics designer performance best practices are
published
− As a blog:
https://blogs.sap.com/2021/03/10/performance-best-
practices-for-sap-analytics-cloud-analytics-designer/
− Or as a developer handbook:
https://d.dam.sap.com/a/3Y16uka → download developer
handbook → Chapter 13
▪ Story performance best practices are valid for analytic
applications as well for those widgets that are shared
between these 2 artifacts (table, chart, geo map etc.)
− For details please refer to the best practices for story:
https://blogs.sap.com/2021/10/04/best-practices-for-
performance/
▪ SAP Note 2946271 – Performance hints for SAP Analytics
Cloud Analytics Designer applications
▪ 2511489 - Troubleshooting performance issues in SAP
Analytics Cloud
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Performance best practices
Loading invisible widgets in the background

▪ Significantly speed up the application initialization


time if
− application is divided into different pages/tab strips
− fewer widgets are available on the first page or tab
strip
▪ All the invisible artifacts are loaded in the background
automatically
− Scripts related to initial invisible widgets
− Widgets or containers defined within the invisible
containers
− Invisible tab strips
▪ You can set the application to be loaded in the
background via
− Analytic application setting dialog
− Application URL parameter:
loadInvisibleWidgets=inBackground
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4
Performance best practices
Pause refresh of widgets

▪ Typical use cases


− Pause the initial refresh of widgets until they are
modified during application onInit event to
optimize application startup performance
− Pause the refresh of invisible widgets until they
become visible
− Pause the refresh of chart and table after each
user action. The user can take a couple of actions
and then refresh the table/chart all at once
▪ Pause refresh of chart or table can be configured in
the Builder panel
▪ Set pause refresh on or off via script API
− Chart.getDatasource().setRefreshPaused
− Application.setRefreshPaused

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Performance best practices
Using MemberInfo object for setDimensionFilter

▪ A setDimensionFilter call using an ID only


will trigger a backend roundtrip to fetch the
member description
▪ Using a MemberInfo object instead of a
member ID string will avoid the roundtrip
▪ MemberInfo object should always be used
if the member description is available
▪ Also, if the filter definition never becomes
visible to the end user, simply use a
dummy description

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Performance best practices
Summary / most important to remember

▪ To reach the best application startup performance and save system


resources, combine the following options
− Background loading for invisible widgets
− Access the least number of invisible widgets possible in OnInit event
− Always initialize the widgets you really need on startup in OnInit event
− Pause-refresh the invisible widgets and the widgets that are used in OnInit
event
▪ Switch off the planning capability of planning tables if they are not needed or
not needed on initialization of the application
▪ Apply pause-refresh as much as possible to
− invisible widgets and
− widgets used in OnInit event
− planning use case
− Enable end user to do some UI actions and then refresh chart/table at once
▪ Use MemberInfo Object with setDimensionFilter() instead of member ID

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Performance best practices
Performance analysis

Performance Analysis Tool


▪ Available in folder System →SAC Content
▪ Gain performance insights for stories and
applications:
– Backed statistics
– Network statistics
– Frontend statistics
– Drilldown to widget level
– Drilldown to page level
– Analytic application script execution time

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Performance best practices
Script performance measurement popup

Script Performance Measurement Popup


▪ Graphical visualization of script execution
performance information for analytic applications
▪ Trigger popup by
– Adding the
?APP_PERFORMANCE_LOGGING=true URL
parameter to the application URL
– Press keyboard combination Strg + Shift+A
▪ Users can quickly identify long-running scripts and
get indication for optimization

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Performance best practices
Demo

© 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

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 5: SAP Analytics Cloud, Analytics Designer
Unit 8: Course summary
Course summary
Wrap-up

SAP Analytics Cloud delivers business intelligence, enterprise


planning, and augmented analytics to all types of users.

Prepare your data, build stories augmented with predictive


technology, or build advanced predictive scenarios.

Develop advanced analytic applications to address special


and unique analytic use cases.

© 2021 SAP SE or an
an SAP
SAP affiliate
affiliate company.
company. All
All rights reserved. ǀ INTERNAL
rights reserved. PUBLIC 2
Course summary
Resources

▪ Help Portal Other SAP Analytics Cloud openSAP


courses:
▪ Roadmap Explorer
• Planning with SAP Analytics Cloud
▪ User Community
• Advanced Planning with SAP
▪ SAP Analytics Training Videos
Analytics Cloud
▪ Learning Journey
• Authentication and Data
▪ Release Notes Connectivity

▪ Blogs

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Course summary
Thank you!

Thank you for learning with us!

Good luck on your weekly assignment and


final exam.

Engage with us in the forum and give us


feedback!

© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2021 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy