May 7 – 9, 2019 Learn about Microsoft’s journey with BPC 11.0 on BW/4HANA & HANA 2.0 on Azure Sundar Shanmugam, Senior Program Manager, Microsoft Elke Bregler, Principal Software Engineer, Microsoft Naren Baliga, Director, SAP Session ID # 83721
May 7 – 9, 2019
Learn about Microsoft’s journey with BPC 11.0 on BW/4HANA & HANA 2.0 on Azure
Sundar Shanmugam, Senior Program Manager, MicrosoftElke Bregler, Principal Software Engineer, Microsoft
Naren Baliga, Director, SAP
Session ID # 83721
About the Speakers
Sundar Shanmugam• Senior Program Manager,
Microsoft
• 15 Years of SAP Solution Delivery experience across wide spectrum of Industries and SAP Products
• Bucket List: Play the drums like a pro ☺
Elke Bregler• Principal Software
Engineer, Microsoft
• 23 years SAP Basis experience;16 years with Microsoft IT
• Bucket list: Travel from Alaska to Patagonia
Naren Baliga• Director, SAP
• 23 years industry experience
• Fun fact: Early engagement at SAP was Outlooksoft, predecessor of BPC!. Worked at both SAP & Microsoft full-time
• Bucket list: Meditation in the Himalayas!
Agenda
• SAP BPC @Microsoft Introduction
• Design Principles
• Solution Architecture
• Key Design Elements
• Running BPC 11.0 on BW/4HANA on Azure
SAP BPC @Microsoft IntroductionOur BPC journey began, with our
Devices group for Revenue, Opex,
CapEx and Margin Accounting
Embarking on a modern foundation
for Revenue Planning for our “Cloud
& AI” businessLots of lessons
learnt!
Utilize the native app, infra, telemetry & monitoring features of Azure
SAP BPC 10.1 Standard
Design Principles
• Scalable Planning Solution1. Keep it Simple2. Form Design3. Minimize manual Master Data maintenance 4. Workbook Performance5. Build Resilience6. Integrate Security from start7. Data Reconciliation
• Time to Value8. Standardization (Re-usable Process / Objects)9. Test Automation
• Lower TCO10. Infrastructure & Installation
ETL (BODS)
Z Table + aDSO
Source 1 Source 3Source 2
Data Sources
Staging - aDSO
A.aDSO
Composite Provider
Aggregation Level
LOB 1 LOB 2 LOB 4LOB 3 LOB 5 LOB 6
3 Years Historic Data + Rolling Forecast /Budget – 24 months
Reporting Layer Input enabled BW Queries
Analysis for Office
Query
Virtual
Persistent
Virtual
Persistent
Inbound FilesOutbound Files
Solution Architecture for Revenue Forecasting
Due to the in-memory nature of the SAP BW/4HANA database, no aggregates or roll-up processes are required on top of the aDSOs
Channel 2
P.aDSO A.aDSO P.aDSOPost Plan Calculation aDSO
F.aDSOB.aDSO
Channel 1
Composite Provider
Legend A – Actual B – BudgetF – ForecastP - Plan
CUSTOM FUNCTION MODULE TO UPDATE THE Z TABLE / aDSO Table
Data Modelling❖ Standardize Characteristics and Key Figures, especially if they
are flowing from different source systems❖ Characteristics – Keep it limited
❖ Consider standard out of the box characteristics❖ Consider versioning, Audit Trails
❖ Key Figures – Standardize data type ❖ Use Currency / Unit of Measure as appropriate❖ Standardize decimal precision for currency, quantity and %
values❖ Evaluate Account based vs separate Key Figure
❖ Hierarchies❖ Consider appropriate no of levels / Grain
❖ For Planning❖ For Storing
❖ Consider time dependent hierarchies for changing hierarchies
❖ Separate Actual vs Plan aDSOs❖ Determine appropriate no of pairs
❖ Consider data volume❖ Common Characteristics❖ Data Sources
❖ Share Composite Provider and Aggregation Levels❖ For products with similar reporting and planning needs
❖ Minimize Data Duplication❖ Consider storing of comments using new feature for document
DB
Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7
Second Dimension Hierarchy Children Per Parent 1 4 6 8 10
Single Dimension Hierarchy Children Per Parent 1 3 5 7 7 10 5
Combination Combined Record Count 1 12 360 20160 1411200 14112000 70560000
1
4
6
8
10
0 0
1
3
5
7 7
10
5
0
10000000
20000000
30000000
40000000
50000000
60000000
70000000
80000000
0
2
4
6
8
10
12
Tipping Point
• Record count growth when using hierarchy across 2 dimensions
Hierarchy OptionsOption 1 Option 2 Option 3 Option 4
1. Leverage Hierarchy • For a scalable solution• For quicker time to value
2. Choose appropriate option • Balancing Future Flexibility vs Data Volume
3. Avoid customization• Balancing Manual Master Data vs Complex coding
4. Do you need to use multiple dimensional hierarchies? • Choose appropriate levels for each dimension
Planning Functions
❖ Dynamically read the active planning node from the planning query / hierarchy (Using Variables)
❖ Dynamic switching of key figures based on business rules – Example Product
❖ Dynamic switching of calculation algorithm based on user decision
❖ Reading data from planning buffer vs tables
❖ Saving the derived value. Is it required? If yes, why?
❖ Can you automate the pre-steps?
❖ Usage of FOX vs Custom coding using ABAP / AMDP
❖ Avoid Hard-Coding
Select the Option
– Months = (Current Period / Same Period in Previous Year ) – – Months Previous Version
– Months Previous Version
YoY Growth %
Previous Year Previous Version
ProductLicense
License
Revenue
Dynamic Hierarchy Level
Revenue
User
AllocationOption 1 Option 2 Option 3 Option 4
→ Leverage standard disaggregation Options for scalable solutions and lower TCO
Ref
ere
nce
Sys
tem
bas
ed S
ecu
rity
In
tegr
ati
on
So
luti
on
Arc
hit
ect
ure
Re
fere
nce
Sys
tem
Se
curi
ty M
od
el
Use
r A
cce
ss f
rom
An
alys
is f
or
Off
ice
Clie
nt
Dyn
amic
Au
tho
riza
tio
n V
alid
atio
n
wit
hin
SA
P B
PC
11
.0R
efe
ren
ce S
yste
m U
ser
Pro
visi
on
ing
Reference SystemSecurity Db
Reference SystemUser to Dimension 2
Mapping
Reference SystemUser to Dimension 1
Mapping
Analysis Office
Excel Add-In
Data is refreshed once every 4 Hours
BICS CALL
User AuthorizedUser Not Authorized
Invoke custom code in SAP BPC
11.0 for Dynamic Authorization
validation
Please apply for Reference System Access
Approved
Business User
Business User
Security Integration
Pre
-exi
stin
g S
ecu
rity
Ap
pro
val P
roce
ss
Authorization data - dynamically updated and
integrated to the workbook and BPC model.
Data Reconciliation
• Consider using an exception report for validation
– Best practice is to reconcile at the total level and then spot check at multiple levels
– Consider automating the validation of values in the exception report so that manual intervention can be eliminated
• Determine the optimal timing for data movement
– Find the right cadence of data movement to satisfy business needs
Lessons Learned
• Scalable Planning Solution1. Keep it Simple2. Form Design3. Minimize manual Master Data maintenance 4. Workbook Performance5. Build Resilience6. Integrate Security from start7. Data Reconciliation
• Time to Value8. Standardization (Re-usable Process / Objects)9. Test Automation
• Lower TCO10. Infrastructure & Installation
Running BPC 11.0 on BW/4HANA In Azure
OS: WindowsSAP BW and BPCNetweaver stack
sync*SAP HANA SAP HANA
SAP HANAOS: SUSE LinuxSAP HANA database async*
DR
* HANA 2.0 Multi-Target-Replication
Azure Monitor:Reporting, Telemetry, Monitoring and Reporting for OS, Infrastructure and Application
Principles For Installation
• Use Standard Azure SKU’s for flexibility• Right-size to current needs (+ next 6 month)• VM design for HANA to allow growth in disks for future growth (and resizing of VM)• One HANA instance and one Tenant database per VM• SAP Application stack on Windows to use existing processes• SUSE Pacemaker for High Availability with HANA• “Snooze” systems/application servers, that are not needed• Select smallest possible SKU for DR servers; upsize when needed (DR exercise or real
DR)• Leveraging SAP LaMa for HANA administration and refresh• All Telemetry and Monitoring via Azure Monitor integration: One Single point to
analyze, report and alert from
Lessons Learned
• HANA Backup to Azure blob• Integration of HANA into Azure Monitor via custom solution for single Monitoring
solution (Azure Monitor)• SAP Sizing is a guideline only; our used case required way less resources than predicted
Stress testing on a non-prod system to verify production requirements. It is easy to resize VM sizes in Azure on demand.
• HANA Data masking limitations: only string data, needs to be implemented per column. Our ask: All data types to be masked and setting configurable as a default for the database (e.g. so that dbas do not see the data)
• Custom scripts to work-around missing HANA features (some covered in HANA 2.0 SPS04):– Automated registration of DR HANA server– Regular logging of HANA state (primary, secondary, offline)– HANA failover in cluster environment
• HANA certified for M-series SKU’s – check availability in Regions
Take the Session Survey.
We want to hear from you! Be sure to complete the session evaluation on the SAPPHIRE NOW and ASUG Annual Conference mobile app.
Access the slides from 2019 ASUG Annual Conference here:
http://info.asug.com/2019-ac-slides
Presentation Materials
Q&AFor questions after this session, contact us at [email protected],