Building Custom Fiori Applications with Native · PDF file Building Custom Fiori Applications...

Post on 26-Mar-2018

246 views 7 download

Transcript of Building Custom Fiori Applications with Native · PDF file Building Custom Fiori Applications...

www.saphana.com/startupfocus

Building Custom Fiori Applications with

Native HANA

Aron MacDonald

SAP HANA Distinguished Engineer Architect / Solution Designer

August, 2016

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 2

Agenda

Application Overview and Technical Landscape

Utilizing real-time ECC Data

Managing inbound and outbound interfaces with BODS

Building the Application Data storage layer

Using calculation views for complex application logic

Finalizing the Application UX utilizing HANA XS, OData and Fiori

Application Overview and Technical Landscape

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 4

Application Overview: Old vs New

Old Process (mix of MS Excel and Access)

New Custom Fiori Applications

Legacy Issues

Manual Effort

Data Timeliness

Data Security

Performance

SLT

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 5

Fiori Launch Pad and User Preferences

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 6

Smart Filters & Smart Tables

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 7

Detail Screen Enabling Updates

Updates

Save

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 8

Technical Landscape

SLT

SPS08 -> SPS10: Scale out 24Tb (16 x 1.5 Tb)

ECC Replication

Custom Application

/ Custom Data

Staging

HANA XS

OD

ATA

BW Extractors

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 9

Application Stats

ECC Tables Used (read only) 50

Largest ECC Table used in Joins KONV

5.5 Billion rows / 325 Gb

Custom Application Tables 60

Largest Application Table Staging of Enhanced ECC Movements

105 Million rows / 16 Gb

Calculation Views 200

Procedures 40

Fiori Apps (SAPUI5) 11

Lines of Code (SQL & Javascipt) < 12,000

Number of Users 100 (application)

to 500 (reporting)

Payback after covering Project Costs 3 Months after Go-Live

Utilizing real-time ECC Data&Managing inbound and outbound interfaces with BODS

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 11

Example: Enhanced Material Movement Views

Real-time OR Staged (controlled via reporting variable)

Staging

Real-time

Core ECC TablesMovements

MSEG

MSEGO2 (UoM)

Sales

VBAK/VBAP

Purchases

EKKO/EKPO

Sales Contracts

VBFA/VBAK / VBAP/KONV

Purchase Contracts

EKKO / EKPO

Challenge:

1-2 min Runtimes

Solution:

Custom Staging

<1 Sec response

Custom Table:

Enhanced ECC Movements

U

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 12

BODS

BODS Jobs call procedures to log events

Custom Application

/ Custom Data

Staging

Tips:

Minimize BODS

Logic

Encapsulate as

much logic in Hana

Procedures

Event Logs useful

for tracking status

in Fiori Launch Pad

Event

Logs

P

P

P

P

OD

ATA

*

*

P*

Building the Application Data storage layer&Using calculation views for complex application logic

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 14

Building the Application Data storage layer

Created a Custom Schema with 60 Custom Tables

- Master Data (sourced from Non-SAP systems)

- Master Data unique to Application

- Mapping Tables

- Data Staging tables (for longer running views)

- Transaction tables

- Event/Action Log Tables

Used ‘.hdbtable’ artifact to create [in future projects will move to CDS]

No major issues - though Primary Key & Column Sequence changes need careful attention

Tips:

Minimize Data

Staging

Don’t be afraid to

have complex

business logic

determined on the

fly in Calculation

views

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 15

Virtual Data Filtering, Mapping & Aggregation

Enhanced ECC Movements

Business Scenario

Data FiltersJ

Challenge:

1 - 15 min

Runtimes

Solution:

Custom Staging

<30 Sec response

JBusiness Mappings

J

J

J

J

….

U

Mapped Aggregation

P

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 16

Virtual Allocations

Duration (Start / End Date), Year and Monthly Values (from Sources without Dates) needed to be Allocated to Valid Dates within a Validity period by business rules, such as Daily, Weekly, Monthly or other custom logic

E.g. A monthly value of 300, might be split into 30 days of value 10

Tip:

Using Calculation

Views for

Allocations makes

unit testing much

easier than SQL

embedded within a

procedure

Date level distributions

External Sources ECC Tables

P

U

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 17

Virtual UoM Conversion, Complex Calculated Measures & Delta Processing

Tip:

Use the power of

Hana to virtualise

complex logic in

Calculation Views

Keep Procedure

logic as small as

possible

Transaction TableRow format with a base UoM

(Weight and Volume)

Sent Data

xsjs

U

Column Format

(Target UOM)

P

Delta

Difference

Calculated

UoM

Conv

Calc

BAV

Finalizing the Application UX utilizing HANA XS, OData and Fiori

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 19

High level UX

• Utilised SAP UX Team

• Used whiteboard / post-it notes & interactivity PPT

• Next project may use SAP Splash

Check out

https://www.exper

iencesplash.com

https://experience

.sap.com/fiori-

design/

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 20

Typical ODATA usage

Read: Utilised Calculation Views for Display (Binding)

Write: Tables & Exit Procedures

Tip:

Use

Calculation

Views to add

Descriptions

and Virtual

Calculations

Transaction Table

OD

ATA

P

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 21

Main SAPUI5 Issue

• On Premise Native Hana SPS10 SAPUI5 Library Version 1.28

• Smart Filter & Smart Table has some bugs resolved >= 1.36.10

Solution: FLP uses On Prem SAPUI5 ‘Smart’ Apps use Public HCP SAPUI5

1.28 1.36.10

Next Steps:

• PoC of HCP for Front End build (should unify SAPUI5 versions, improving experience)

Tip:

Create your own

template(s) and

use as basis for

building Apps

© 2013 SAP AG or an SAP affiliate company. All rights reserved. 22

Questions?

Thank you.

Aron MacDonaldhttp://scn.sap.com/people/s0000716522/contenthttps://www.linkedin.com/pub/aron-macdonald/14/796/10