SlideShare a Scribd company logo
1 of 40
Download to read offline
#Kscope
Create Unlimited Custom
Spreads for Driver Based
Planning
Kyle Goodfriend
Rolta Solutions, Sr. Mgt. Consultant
In2Hyperion, Principle Author
#Kscope
Welcome
l Speaker Introduction
● Education
● Career
● Finance
● Education
● Management
● Technical
● Rolta Solutions
● In2Hyperion
BBA / Finance
Technical Training
Management Training
#Kscope
Welcome
l Speaker Introduction
● Education
● Career
● Finance
● Education
● Management
● Technical
● Rolta Solutions
● In2Hyperion
Auditor
Accountant
Financial Reporting
University Adjunct Faculty
Financial Systems / IT
#Kscope
Welcome
l Speaker Introduction
● Education
● Career
● Finance
● Education
● Management
● Technical
● Rolta Solutions
● In2Hyperion
TheLimited
Bank One / JPMorgan Chase
Franklin University
Rolta Solutions
#Kscope
Welcome
l Speaker Introduction
● Education
● Career
● Finance
● Education
● Management
● Technical
● Rolta Solutions
● In2Hyperion
Free Tools
Creative Ideas
Community of over 1,000
Connect to peers through
social media
#Kscope
Rules For Today
l Be interactive, interrupt me! (Really!)
l Tweet and share your thoughts #In2Hyperion
l It is OK to text your notes
l Stretch – stand up if you get tired!
l Be nice: none of us know everything there is to
know
#Kscope
Something For Everybody
l Business focus
l Different angle on common functions
l Show possibilities
l Technology focus
l What needs to be implemented
l Steps to implement
#Kscope
Topic Overview
l Overview of spreads and driver based planning
l Develop spread functionality
● JavaScript
● Smart Lists
● Business Rules
● Web Forms
#Kscope
What Is Driver Based Planning
& Driver Based Spreads
#Kscope
Make It Personal
l Build plan based on history or other drivers
8,333 * 1.035
1,250 *
(50 / Total Year)
#Kscope
Business/System Requirements
● Driver-based planning
● Spread pattern defined at low levels of the business
● Example will be at account / department
● Easily repeatable
● Easily updatable
● Driven by users
● Shouldn’t add burden to administrators
● Results must be reliable
● Results must be meaningful
#Kscope
Implement Spreads
What it takes to make
#Kscope
Implementation 101
l Implementation Steps
1. Design custom period dimension
2. Define spread methods
3. Create SmartList
4. Set evaluation order
5. Build web forms
6. Customize JavaScript (validateData.js)
7. Build spread business rules
8. Build admin functions
#Kscope
Web Form Overview
Drop down list of
spread methods
Value to be applied
Hidden column
1 / #Missing
#Kscope
Step 1: The Custom Period
l Why Period
l Most flexibility
l Can be
version/scenario/year
specific
l Limit block creation
challenges
#Kscope
Step 2: Define Spread Methods
l Spread method = business driver
l Select spreads that users implement the most
l Select spreads that will impact the decision
making the highest
l Examples
l Trend like LY Sales or units(Corp or Dept)
l Trend like CY Sales or units(Corp or Dept)
l Trend like LY Trend
l Evenly / 4-5-4 / Fill
l Growth
l 3/6 month trend
#Kscope
Step 3: Smart Lists
l Drop down list
l Meaningful name
l Mapping table
l Saves to
Essbase as value
#Kscope
Step 4
Evaluation Order
#Kscope
What Is Evaluation Order?
l Defines which smart list wins when multiple
smart lists are relevant
l The dimension which is first in the order takes
the precedence over the next
What is displayed?
#Kscope
Changing Evaluation Order
l Classic: Administration / Dimensions
l EPMA: Administration / Dimension Library
#Kscope
Step 5
Create Web Forms
#Kscope
Web Form Overview
Drop down list of
spread methods
Value applied to the
spread method
Hidden column
containing
1 or #Missing
#Kscope
Step 6
Edit ValidateData.js
#Kscope
Step 6: JavaScript
l Don’t FREAK OUT - JavaScript is NOT Java
l What is ValidateData.js
l Customization options
l Validation
l Pre-form setup
l How to edit ValidateData.js
l Why this requirement utilizes ValidateData.js
#Kscope
ValidateData.js
function customCellEnterPost(row, col, cell) {
// Insert custom code here
return;
}
function customCellValidatePre(row, col, cell) {
// Insert custom code here
return true;
}
function customCellValidatePost(row, col, cell) {
// Insert custom code here
return;
}
function customSpread_Pre(row,col) {
// Insert custom code here
return true;
}
function customSpread_Post(row,col) {
// Insert custom code here
return;
}
function customCellEnterPost(row, col, cell) {
// Insert custom code here
return;
}
function customCellValidatePre(row, col, cell) {
// Insert custom code here
return true;
}
function customCellValidatePost(row, col, cell) {
// Insert custom code here
return;
}
function customSpread_Pre(row,col) {
// Insert custom code here
return true;
}
function customSpread_Post(row,col) {
// Insert custom code here
return;
}
#Kscope
Customize validateForm
function validateForm()
{
// Insert custom code here
if(equalsIgnoreCase(applicationName,"ANFPlan")) {
// loop through each row. if the spread (start column + 1) is selected, make beg bal = to 1
// Save the members of the first column, which will be used to evaluate whether this form
// should run the spread logic on it - looking for Spread_Method
var cellMemberList1 = getMembersOfCell(currentDataGrid.startRow, currentDataGrid.startCol);
// Save the members of the last column, which will be used to evaluate whether this form
// should run the spread logic on it - looking for BegBalance
var cellMemberList2 = getMembersOfCell(currentDataGrid.startRow, currentDataGrid.numberGridCols-1);
// only run the code when the first column is the spread and the last column is beg bal
// The spread business rule only runs where BegBalance = 1
// To ensure that spreads are only executed on accounts on the form saved, not all accounts on the block
Store column
header of column 1
Store column
header of the last
column
#Kscope
Customize validateForm (continued)
if(listContainsName(cellMemberList2, "BegBalance") && listContainsName(cellMemberList1, "Spread_Method")){
for (r = currentDataGrid.startRow; r < currentDataGrid.numberGridRows; r++){
if(currentDataGrid.fullPrecision[r][currentDataGrid.startCol] >= 1){
// Set the BegBalance to 1
// The spread business rule will look to run the spread ONLY on accounts where BegBalance = 1
currentDataGrid.fullPrecision[r][currentDataGrid.numberGridCols-1] = 1;
redisplayCell(r,currentDataGrid.numberGridCols-1);
}
else
{
// Set BegBalance to #Missing
currentDataGrid.fullPrecision[r][currentDataGrid.numberGridCols-1] = "";
redisplayCell(r,currentDataGrid.numberGridCols-1);
// Set Spread_Amount to #Missing
currentDataGrid.fullPrecision[r][currentDataGrid.startCol + 1] = "";
redisplayCell(r,currentDataGrid.startCol);
}
}
}
}
return true;
}
Loop through all
rows in the grid
Set BegBal to 1 if a
spread is selected
Set BegBalance to #Mi and
Spread $ to #Mi if NO
spread is selected
If Col 1 is Spread Method & the
last column is BegBalance
#Kscope
Step 7
Business Rules
#Kscope
Business Rule Overview
SET …
FIX(…)
[Scenario](
/* Spread Method for Annual Budget */
IF("BegBalance" == 1)
/* LY's Dept Sales */
IF("Spread_Method"==1)
calculation
/* LY's Corp Sales */
ELSEIF("Spread_Method"==2)
calculation
ELSEIF …
END IF
ENDIF)
IF("BegBalance" == 1)
set BegBalance to #Missing
ENDIF)
ENDFIX
Execute if BegBalance is set to 1
Execute for Spread Method of 1
Execute for Spread Method of 2
Set BegBalance to #Missing
#Kscope
Business Example
/* LY's Dept Sales */
IF("Spread_Method"==1)
[PLAN_Version] = "Spread_Amount"
*
@PRIOR (&AnnualBud_LY_ProjVer->"Store Sales"->"Projection"->"Vendor"->
"Local_Currency",1,@RELATIVE("Years",0))
/
@SUMRANGE(@MEMBER(@PREVSIBLING(
@CURRMBR("Years")))->&AnnualBud_LY_ProjVer->"Store Sales"->
"Local_Currency"->"Projection"->"Vendor",&AnnualBudPer);
/* LY's Total Sales */
ELSEIF("Spread_Method"==2)
[PLAN_Version] = "Spread_Amount"
*
@PRIOR (&AnnualBud_LY_ProjVer->"Store Sales"->"Projection"->"Vendor"->
"Local_Currency"->“Total_Department"->“Total_Company",1,@RELATIVE("Years",0))
/
@SUMRANGE(@MEMBER(@PREVSIBLING(
@CURRMBR("Years")))->&AnnualBud_LY_ProjVer->"Store Sales"->
"Local_Currency"->"Projection"->"Vendor"->“Total_Department"->
“Total_Company",&AnnualBudPer);
#Kscope
Referencing SmartList Values
Smart List values can also be referenced as
[SmartList Name].[Smart List Value]
Example:
[Spread_Method.LY_Dept_Sales]
/* LY's Dept Sales */
IF("Spread_Method"==1)
…
#Kscope
Step 8: Administrative Functions
l Aggregations
l Global spread (catch anything loaded through
Smartview)
#Kscope
Other Possibilities
l Spreads based on growth rates
l Increase from last year
l Metric Based
l Benefits (% of Salary)?
l Cost (% of Sales)
l 6 month trending history
l Load defaults
l Update spread amount to reflect actuals in
forecast scenario
#Kscope
Benefits
Everybody wins
#Kscope
Benefits for Users
l Enables users to enter an annual value
l Produces defensible/explainable results
l Reduces effort to produce detailed budget
l Forecast can be updated monthly with minimal
effort
l Better data, better decisions, stronger business
l Spread decisions are not hard coded and can
be changed by the user
#Kscope
Benefits For Administrators
l What do administrators have to do to support?
1. Maintain period dimension?
2. Update spread methods?
3. Update smart lists?
4. Update evaluation order?
5. Update web forms to use functionality?
6. Update the JavaScript?
7. Update business rules?
l No to all, only if enhancements are required!
l More time for development
#Kscope
Why this method works
● Provides flexibility
● Enables users to enter an annual value
● Produces defensible/explainable results
● Reduces maintenance
● Updated automatically
l Business prospective presented at Collaborate
2011
l Contacted by OAUG to write article for Insight
Summer Edition
l “Best budget ever, better knowledge than we
have ever seen before”
#Kscope
Stay In Touch
l Email
● In2Hyperion@gmail.com
● Kyle.Goodfriend@RoltaSolutions.com
l In2Hyperion
● Sign up for email updates at www.In2Hyperion.com
● Follow us via Twitter (@In2Hyperion)
● Like us on Facebook
● Join the In2Hyperion LinkedIn group
● More than 1,000 people follow In2Hyperion through
social media
● More than 3,000 people visit In2hyperion daily
#Kscope
Other Collateral
l Collaborate 2011 – Business Presentation
● Download Presentation
l OAUG Insight - Summer 2012 issue
● Coming in July/August
● Article will be available at In2Hyperion.com
#Kscope
Questions?

More Related Content

Similar to Create Unlimited Custom Spreads for Driver Based Planning

GIP - Backwards planning & strategy planning Tier 2
GIP - Backwards planning & strategy planning Tier 2GIP - Backwards planning & strategy planning Tier 2
GIP - Backwards planning & strategy planning Tier 2AIESEC
 
GIP - Backwards planning & strategy planning Tier 3
GIP - Backwards planning & strategy planning Tier 3GIP - Backwards planning & strategy planning Tier 3
GIP - Backwards planning & strategy planning Tier 3AIESEC
 
GIP - Backwards planning & strategy planning tier 2
GIP - Backwards planning & strategy planning tier 2GIP - Backwards planning & strategy planning tier 2
GIP - Backwards planning & strategy planning tier 2AIESEC
 
GIP - Backwards planning & strategy planning tier 3
GIP - Backwards planning & strategy planning tier 3GIP - Backwards planning & strategy planning tier 3
GIP - Backwards planning & strategy planning tier 3AIESEC
 
Backwards planning & strategy planning gcdp all tiers
Backwards planning & strategy planning gcdp all tiersBackwards planning & strategy planning gcdp all tiers
Backwards planning & strategy planning gcdp all tiersAIESEC
 
Fundamentals of Programming Lecture #1.pptx
Fundamentals of Programming Lecture #1.pptxFundamentals of Programming Lecture #1.pptx
Fundamentals of Programming Lecture #1.pptxEyasu46
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-labAmit Sharma
 
Mar 12 2010 Sap
Mar 12 2010 SapMar 12 2010 Sap
Mar 12 2010 Sapphilip
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-labAmit Sharma
 
Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...
Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...
Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...Cprime
 
3 Excel Tools That Help You Perform a What-If Analysis
3 Excel Tools That Help You Perform a What-If Analysis3 Excel Tools That Help You Perform a What-If Analysis
3 Excel Tools That Help You Perform a What-If AnalysisHanapin Marketing
 
My Favorite Calc Code
My Favorite Calc CodeMy Favorite Calc Code
My Favorite Calc CodeAlithya
 
Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...
Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...
Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...AGILEMinds
 
How to design quant trading strategies using “R”?
How to design quant trading strategies using “R”?How to design quant trading strategies using “R”?
How to design quant trading strategies using “R”?QuantInsti
 
Empowering Innovation Portfolio Decision-Making through Simulation
Empowering Innovation Portfolio Decision-Making through SimulationEmpowering Innovation Portfolio Decision-Making through Simulation
Empowering Innovation Portfolio Decision-Making through SimulationSopheon
 
Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...
Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...
Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...Scrum Bangalore
 

Similar to Create Unlimited Custom Spreads for Driver Based Planning (20)

GIP - Backwards planning & strategy planning Tier 2
GIP - Backwards planning & strategy planning Tier 2GIP - Backwards planning & strategy planning Tier 2
GIP - Backwards planning & strategy planning Tier 2
 
GIP - Backwards planning & strategy planning Tier 3
GIP - Backwards planning & strategy planning Tier 3GIP - Backwards planning & strategy planning Tier 3
GIP - Backwards planning & strategy planning Tier 3
 
GIP - Backwards planning & strategy planning tier 2
GIP - Backwards planning & strategy planning tier 2GIP - Backwards planning & strategy planning tier 2
GIP - Backwards planning & strategy planning tier 2
 
GIP - Backwards planning & strategy planning tier 3
GIP - Backwards planning & strategy planning tier 3GIP - Backwards planning & strategy planning tier 3
GIP - Backwards planning & strategy planning tier 3
 
Backwards planning & strategy planning gcdp all tiers
Backwards planning & strategy planning gcdp all tiersBackwards planning & strategy planning gcdp all tiers
Backwards planning & strategy planning gcdp all tiers
 
Fundamentals of Programming Lecture #1.pptx
Fundamentals of Programming Lecture #1.pptxFundamentals of Programming Lecture #1.pptx
Fundamentals of Programming Lecture #1.pptx
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-lab
 
Mar 12 2010 Sap
Mar 12 2010 SapMar 12 2010 Sap
Mar 12 2010 Sap
 
Mar 12 2010 Sap
Mar 12 2010 SapMar 12 2010 Sap
Mar 12 2010 Sap
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-lab
 
Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...
Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...
Lean Portfolio Strategy Part 1: Visualizing your Strategy Flow for Transparen...
 
3 Excel Tools That Help You Perform a What-If Analysis
3 Excel Tools That Help You Perform a What-If Analysis3 Excel Tools That Help You Perform a What-If Analysis
3 Excel Tools That Help You Perform a What-If Analysis
 
My Favorite Calc Code
My Favorite Calc CodeMy Favorite Calc Code
My Favorite Calc Code
 
Mic Powerpoint 3
Mic Powerpoint 3Mic Powerpoint 3
Mic Powerpoint 3
 
Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...
Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...
Scaling Amdocs PBG from team scrum to a multi-program portfolio using lean an...
 
Visual Basic
Visual BasicVisual Basic
Visual Basic
 
Visual Basic
Visual BasicVisual Basic
Visual Basic
 
How to design quant trading strategies using “R”?
How to design quant trading strategies using “R”?How to design quant trading strategies using “R”?
How to design quant trading strategies using “R”?
 
Empowering Innovation Portfolio Decision-Making through Simulation
Empowering Innovation Portfolio Decision-Making through SimulationEmpowering Innovation Portfolio Decision-Making through Simulation
Empowering Innovation Portfolio Decision-Making through Simulation
 
Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...
Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...
Don't drive your Race car on a dirt track!! - Athresh Krishnappa, Scrum Banga...
 

More from Kyle Goodfriend

Improve The Planner Experience With Groovy
Improve The Planner Experience With GroovyImprove The Planner Experience With Groovy
Improve The Planner Experience With GroovyKyle Goodfriend
 
Using REST with EPM Cloud Planning
Using REST with EPM Cloud PlanningUsing REST with EPM Cloud Planning
Using REST with EPM Cloud PlanningKyle Goodfriend
 
Things you didn't know you could do with groovy
Things you didn't know you could do with groovyThings you didn't know you could do with groovy
Things you didn't know you could do with groovyKyle Goodfriend
 
Take groovy to places you never thought were possible
Take groovy to places you never thought were possibleTake groovy to places you never thought were possible
Take groovy to places you never thought were possibleKyle Goodfriend
 
GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARS
  GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARS  GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARS
GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARSKyle Goodfriend
 
HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUT
  HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUT  HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUT
HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUTKyle Goodfriend
 
Getting Started with Groovy for the Non-Technical Superstars
Getting Started with Groovy for the Non-Technical SuperstarsGetting Started with Groovy for the Non-Technical Superstars
Getting Started with Groovy for the Non-Technical SuperstarsKyle Goodfriend
 
Accelerators at Accelytics
Accelerators at AccelyticsAccelerators at Accelytics
Accelerators at AccelyticsKyle Goodfriend
 
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCSOctober 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCSKyle Goodfriend
 
ODTUG Getting Groovy with ePBCS
ODTUG Getting Groovy with ePBCSODTUG Getting Groovy with ePBCS
ODTUG Getting Groovy with ePBCSKyle Goodfriend
 
ePBCS Gridbuilder Deep Dive - Last Minute KScope Souvenirs
ePBCS Gridbuilder Deep Dive - Last Minute KScope SouvenirsePBCS Gridbuilder Deep Dive - Last Minute KScope Souvenirs
ePBCS Gridbuilder Deep Dive - Last Minute KScope SouvenirsKyle Goodfriend
 
Why Groovy is Game Changing
Why Groovy is Game ChangingWhy Groovy is Game Changing
Why Groovy is Game ChangingKyle Goodfriend
 
Top-Down and BottomS-Up Planning at Breakthru Beverage Group
Top-Down and BottomS-Up Planning at Breakthru Beverage GroupTop-Down and BottomS-Up Planning at Breakthru Beverage Group
Top-Down and BottomS-Up Planning at Breakthru Beverage GroupKyle Goodfriend
 
CHCC 2017 Q1 Event Overview
CHCC 2017 Q1 Event OverviewCHCC 2017 Q1 Event Overview
CHCC 2017 Q1 Event OverviewKyle Goodfriend
 
Top Down and Bottom Up Planning at Breakthru Beverage Group Follow Up
Top Down and Bottom Up Planning at Breakthru Beverage Group Follow UpTop Down and Bottom Up Planning at Breakthru Beverage Group Follow Up
Top Down and Bottom Up Planning at Breakthru Beverage Group Follow UpKyle Goodfriend
 
Top Down and Bottom Up Planning at Breakthru Beverage Group
Top Down and Bottom Up Planning at Breakthru Beverage GroupTop Down and Bottom Up Planning at Breakthru Beverage Group
Top Down and Bottom Up Planning at Breakthru Beverage GroupKyle Goodfriend
 
Ohio Valley Oracle Application User Group
Ohio Valley Oracle Application User GroupOhio Valley Oracle Application User Group
Ohio Valley Oracle Application User GroupKyle Goodfriend
 
Groovy and PBCS is Game Changing
Groovy and PBCS is Game ChangingGroovy and PBCS is Game Changing
Groovy and PBCS is Game ChangingKyle Goodfriend
 
Automating Hyperion Planning Tasks
Automating Hyperion Planning TasksAutomating Hyperion Planning Tasks
Automating Hyperion Planning TasksKyle Goodfriend
 

More from Kyle Goodfriend (20)

Improve The Planner Experience With Groovy
Improve The Planner Experience With GroovyImprove The Planner Experience With Groovy
Improve The Planner Experience With Groovy
 
Using REST with EPM Cloud Planning
Using REST with EPM Cloud PlanningUsing REST with EPM Cloud Planning
Using REST with EPM Cloud Planning
 
Things you didn't know you could do with groovy
Things you didn't know you could do with groovyThings you didn't know you could do with groovy
Things you didn't know you could do with groovy
 
Take groovy to places you never thought were possible
Take groovy to places you never thought were possibleTake groovy to places you never thought were possible
Take groovy to places you never thought were possible
 
GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARS
  GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARS  GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARS
GETTING STARTED WITH GROOVY FOR THE NON-TECHNICAL SUPERSTARS
 
HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUT
  HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUT  HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUT
HIDDEN GEMS IN PBCS—THE BENEFITS THEY DON’T TELL YOU ABOUT
 
Getting Started with Groovy for the Non-Technical Superstars
Getting Started with Groovy for the Non-Technical SuperstarsGetting Started with Groovy for the Non-Technical Superstars
Getting Started with Groovy for the Non-Technical Superstars
 
Accelerators at Accelytics
Accelerators at AccelyticsAccelerators at Accelytics
Accelerators at Accelytics
 
18.11 texas user group
18.11 texas user group18.11 texas user group
18.11 texas user group
 
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCSOctober 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS
October 2018 ODTUG Webinar - Getting Started with Groovy in EPBCS
 
ODTUG Getting Groovy with ePBCS
ODTUG Getting Groovy with ePBCSODTUG Getting Groovy with ePBCS
ODTUG Getting Groovy with ePBCS
 
ePBCS Gridbuilder Deep Dive - Last Minute KScope Souvenirs
ePBCS Gridbuilder Deep Dive - Last Minute KScope SouvenirsePBCS Gridbuilder Deep Dive - Last Minute KScope Souvenirs
ePBCS Gridbuilder Deep Dive - Last Minute KScope Souvenirs
 
Why Groovy is Game Changing
Why Groovy is Game ChangingWhy Groovy is Game Changing
Why Groovy is Game Changing
 
Top-Down and BottomS-Up Planning at Breakthru Beverage Group
Top-Down and BottomS-Up Planning at Breakthru Beverage GroupTop-Down and BottomS-Up Planning at Breakthru Beverage Group
Top-Down and BottomS-Up Planning at Breakthru Beverage Group
 
CHCC 2017 Q1 Event Overview
CHCC 2017 Q1 Event OverviewCHCC 2017 Q1 Event Overview
CHCC 2017 Q1 Event Overview
 
Top Down and Bottom Up Planning at Breakthru Beverage Group Follow Up
Top Down and Bottom Up Planning at Breakthru Beverage Group Follow UpTop Down and Bottom Up Planning at Breakthru Beverage Group Follow Up
Top Down and Bottom Up Planning at Breakthru Beverage Group Follow Up
 
Top Down and Bottom Up Planning at Breakthru Beverage Group
Top Down and Bottom Up Planning at Breakthru Beverage GroupTop Down and Bottom Up Planning at Breakthru Beverage Group
Top Down and Bottom Up Planning at Breakthru Beverage Group
 
Ohio Valley Oracle Application User Group
Ohio Valley Oracle Application User GroupOhio Valley Oracle Application User Group
Ohio Valley Oracle Application User Group
 
Groovy and PBCS is Game Changing
Groovy and PBCS is Game ChangingGroovy and PBCS is Game Changing
Groovy and PBCS is Game Changing
 
Automating Hyperion Planning Tasks
Automating Hyperion Planning TasksAutomating Hyperion Planning Tasks
Automating Hyperion Planning Tasks
 

Recently uploaded

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 

Recently uploaded (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 

Create Unlimited Custom Spreads for Driver Based Planning

  • 1. #Kscope Create Unlimited Custom Spreads for Driver Based Planning Kyle Goodfriend Rolta Solutions, Sr. Mgt. Consultant In2Hyperion, Principle Author
  • 2. #Kscope Welcome l Speaker Introduction ● Education ● Career ● Finance ● Education ● Management ● Technical ● Rolta Solutions ● In2Hyperion BBA / Finance Technical Training Management Training
  • 3. #Kscope Welcome l Speaker Introduction ● Education ● Career ● Finance ● Education ● Management ● Technical ● Rolta Solutions ● In2Hyperion Auditor Accountant Financial Reporting University Adjunct Faculty Financial Systems / IT
  • 4. #Kscope Welcome l Speaker Introduction ● Education ● Career ● Finance ● Education ● Management ● Technical ● Rolta Solutions ● In2Hyperion TheLimited Bank One / JPMorgan Chase Franklin University Rolta Solutions
  • 5. #Kscope Welcome l Speaker Introduction ● Education ● Career ● Finance ● Education ● Management ● Technical ● Rolta Solutions ● In2Hyperion Free Tools Creative Ideas Community of over 1,000 Connect to peers through social media
  • 6. #Kscope Rules For Today l Be interactive, interrupt me! (Really!) l Tweet and share your thoughts #In2Hyperion l It is OK to text your notes l Stretch – stand up if you get tired! l Be nice: none of us know everything there is to know
  • 7. #Kscope Something For Everybody l Business focus l Different angle on common functions l Show possibilities l Technology focus l What needs to be implemented l Steps to implement
  • 8. #Kscope Topic Overview l Overview of spreads and driver based planning l Develop spread functionality ● JavaScript ● Smart Lists ● Business Rules ● Web Forms
  • 9. #Kscope What Is Driver Based Planning & Driver Based Spreads
  • 10. #Kscope Make It Personal l Build plan based on history or other drivers 8,333 * 1.035 1,250 * (50 / Total Year)
  • 11. #Kscope Business/System Requirements ● Driver-based planning ● Spread pattern defined at low levels of the business ● Example will be at account / department ● Easily repeatable ● Easily updatable ● Driven by users ● Shouldn’t add burden to administrators ● Results must be reliable ● Results must be meaningful
  • 13. #Kscope Implementation 101 l Implementation Steps 1. Design custom period dimension 2. Define spread methods 3. Create SmartList 4. Set evaluation order 5. Build web forms 6. Customize JavaScript (validateData.js) 7. Build spread business rules 8. Build admin functions
  • 14. #Kscope Web Form Overview Drop down list of spread methods Value to be applied Hidden column 1 / #Missing
  • 15. #Kscope Step 1: The Custom Period l Why Period l Most flexibility l Can be version/scenario/year specific l Limit block creation challenges
  • 16. #Kscope Step 2: Define Spread Methods l Spread method = business driver l Select spreads that users implement the most l Select spreads that will impact the decision making the highest l Examples l Trend like LY Sales or units(Corp or Dept) l Trend like CY Sales or units(Corp or Dept) l Trend like LY Trend l Evenly / 4-5-4 / Fill l Growth l 3/6 month trend
  • 17. #Kscope Step 3: Smart Lists l Drop down list l Meaningful name l Mapping table l Saves to Essbase as value
  • 19. #Kscope What Is Evaluation Order? l Defines which smart list wins when multiple smart lists are relevant l The dimension which is first in the order takes the precedence over the next What is displayed?
  • 20. #Kscope Changing Evaluation Order l Classic: Administration / Dimensions l EPMA: Administration / Dimension Library
  • 22. #Kscope Web Form Overview Drop down list of spread methods Value applied to the spread method Hidden column containing 1 or #Missing
  • 24. #Kscope Step 6: JavaScript l Don’t FREAK OUT - JavaScript is NOT Java l What is ValidateData.js l Customization options l Validation l Pre-form setup l How to edit ValidateData.js l Why this requirement utilizes ValidateData.js
  • 25. #Kscope ValidateData.js function customCellEnterPost(row, col, cell) { // Insert custom code here return; } function customCellValidatePre(row, col, cell) { // Insert custom code here return true; } function customCellValidatePost(row, col, cell) { // Insert custom code here return; } function customSpread_Pre(row,col) { // Insert custom code here return true; } function customSpread_Post(row,col) { // Insert custom code here return; } function customCellEnterPost(row, col, cell) { // Insert custom code here return; } function customCellValidatePre(row, col, cell) { // Insert custom code here return true; } function customCellValidatePost(row, col, cell) { // Insert custom code here return; } function customSpread_Pre(row,col) { // Insert custom code here return true; } function customSpread_Post(row,col) { // Insert custom code here return; }
  • 26. #Kscope Customize validateForm function validateForm() { // Insert custom code here if(equalsIgnoreCase(applicationName,"ANFPlan")) { // loop through each row. if the spread (start column + 1) is selected, make beg bal = to 1 // Save the members of the first column, which will be used to evaluate whether this form // should run the spread logic on it - looking for Spread_Method var cellMemberList1 = getMembersOfCell(currentDataGrid.startRow, currentDataGrid.startCol); // Save the members of the last column, which will be used to evaluate whether this form // should run the spread logic on it - looking for BegBalance var cellMemberList2 = getMembersOfCell(currentDataGrid.startRow, currentDataGrid.numberGridCols-1); // only run the code when the first column is the spread and the last column is beg bal // The spread business rule only runs where BegBalance = 1 // To ensure that spreads are only executed on accounts on the form saved, not all accounts on the block Store column header of column 1 Store column header of the last column
  • 27. #Kscope Customize validateForm (continued) if(listContainsName(cellMemberList2, "BegBalance") && listContainsName(cellMemberList1, "Spread_Method")){ for (r = currentDataGrid.startRow; r < currentDataGrid.numberGridRows; r++){ if(currentDataGrid.fullPrecision[r][currentDataGrid.startCol] >= 1){ // Set the BegBalance to 1 // The spread business rule will look to run the spread ONLY on accounts where BegBalance = 1 currentDataGrid.fullPrecision[r][currentDataGrid.numberGridCols-1] = 1; redisplayCell(r,currentDataGrid.numberGridCols-1); } else { // Set BegBalance to #Missing currentDataGrid.fullPrecision[r][currentDataGrid.numberGridCols-1] = ""; redisplayCell(r,currentDataGrid.numberGridCols-1); // Set Spread_Amount to #Missing currentDataGrid.fullPrecision[r][currentDataGrid.startCol + 1] = ""; redisplayCell(r,currentDataGrid.startCol); } } } } return true; } Loop through all rows in the grid Set BegBal to 1 if a spread is selected Set BegBalance to #Mi and Spread $ to #Mi if NO spread is selected If Col 1 is Spread Method & the last column is BegBalance
  • 29. #Kscope Business Rule Overview SET … FIX(…) [Scenario]( /* Spread Method for Annual Budget */ IF("BegBalance" == 1) /* LY's Dept Sales */ IF("Spread_Method"==1) calculation /* LY's Corp Sales */ ELSEIF("Spread_Method"==2) calculation ELSEIF … END IF ENDIF) IF("BegBalance" == 1) set BegBalance to #Missing ENDIF) ENDFIX Execute if BegBalance is set to 1 Execute for Spread Method of 1 Execute for Spread Method of 2 Set BegBalance to #Missing
  • 30. #Kscope Business Example /* LY's Dept Sales */ IF("Spread_Method"==1) [PLAN_Version] = "Spread_Amount" * @PRIOR (&AnnualBud_LY_ProjVer->"Store Sales"->"Projection"->"Vendor"-> "Local_Currency",1,@RELATIVE("Years",0)) / @SUMRANGE(@MEMBER(@PREVSIBLING( @CURRMBR("Years")))->&AnnualBud_LY_ProjVer->"Store Sales"-> "Local_Currency"->"Projection"->"Vendor",&AnnualBudPer); /* LY's Total Sales */ ELSEIF("Spread_Method"==2) [PLAN_Version] = "Spread_Amount" * @PRIOR (&AnnualBud_LY_ProjVer->"Store Sales"->"Projection"->"Vendor"-> "Local_Currency"->“Total_Department"->“Total_Company",1,@RELATIVE("Years",0)) / @SUMRANGE(@MEMBER(@PREVSIBLING( @CURRMBR("Years")))->&AnnualBud_LY_ProjVer->"Store Sales"-> "Local_Currency"->"Projection"->"Vendor"->“Total_Department"-> “Total_Company",&AnnualBudPer);
  • 31. #Kscope Referencing SmartList Values Smart List values can also be referenced as [SmartList Name].[Smart List Value] Example: [Spread_Method.LY_Dept_Sales] /* LY's Dept Sales */ IF("Spread_Method"==1) …
  • 32. #Kscope Step 8: Administrative Functions l Aggregations l Global spread (catch anything loaded through Smartview)
  • 33. #Kscope Other Possibilities l Spreads based on growth rates l Increase from last year l Metric Based l Benefits (% of Salary)? l Cost (% of Sales) l 6 month trending history l Load defaults l Update spread amount to reflect actuals in forecast scenario
  • 35. #Kscope Benefits for Users l Enables users to enter an annual value l Produces defensible/explainable results l Reduces effort to produce detailed budget l Forecast can be updated monthly with minimal effort l Better data, better decisions, stronger business l Spread decisions are not hard coded and can be changed by the user
  • 36. #Kscope Benefits For Administrators l What do administrators have to do to support? 1. Maintain period dimension? 2. Update spread methods? 3. Update smart lists? 4. Update evaluation order? 5. Update web forms to use functionality? 6. Update the JavaScript? 7. Update business rules? l No to all, only if enhancements are required! l More time for development
  • 37. #Kscope Why this method works ● Provides flexibility ● Enables users to enter an annual value ● Produces defensible/explainable results ● Reduces maintenance ● Updated automatically l Business prospective presented at Collaborate 2011 l Contacted by OAUG to write article for Insight Summer Edition l “Best budget ever, better knowledge than we have ever seen before”
  • 38. #Kscope Stay In Touch l Email ● In2Hyperion@gmail.com ● Kyle.Goodfriend@RoltaSolutions.com l In2Hyperion ● Sign up for email updates at www.In2Hyperion.com ● Follow us via Twitter (@In2Hyperion) ● Like us on Facebook ● Join the In2Hyperion LinkedIn group ● More than 1,000 people follow In2Hyperion through social media ● More than 3,000 people visit In2hyperion daily
  • 39. #Kscope Other Collateral l Collaborate 2011 – Business Presentation ● Download Presentation l OAUG Insight - Summer 2012 issue ● Coming in July/August ● Article will be available at In2Hyperion.com