kscope14 zombies, pie charts and overrides…oh my!
Post on 13-Sep-2014
146 views
DESCRIPTION
Zombies, Pie Charts and Overrides… Oh My! An Override is just a way to change the post translated data in an account.TRANSCRIPT
Zombies, Pie Charts and Overrides… Oh My!
Jim Heflin
Edgewater Ranzal
Focus
Services
People
Methodology
Customers
Partnership
15 Years
700+ clients
1000+ projects
About Edgewater Ranzal
We offer a full spectrum of EPM/BI Services Dashboards & Scorecards, Financial
Analytics & Reporting, Operational Analytics,
What-if Analysis, Query & Reporting, Visual
Exploration
Financial performance, Legal,
Segment & Mgmt Reporting, Financial
Close
HFM Optimization, Performance Lab
SOX Compliance Support
Strategic Finance, Planning,
Budgeting, Forecasting, Workforce
Planning, Capital Planning, Project
Financial Planning
Data Integration, Financial Data
Management, Data Warehousing,
Master Data Management &DRM,
ETL Services, Automation
Project/Program Mgmt, EPM
Road Maps, Application
Reviews, Business
Requirements, Process
Change, Documentation
Installation, Upgrades,
Migration, System
Monitoring, Backup and
Recovery, Disaster
Recovery, Load Testing,
Hardware Sizing, Exalytics
Benchmarking
Consolidation
Business
Intelligence
Enterprise
Planning
Infrastructure
Training &
Support Services
Project
Management
Data
Services
Costing &
Profitability
Mgmt
Support Services – Infrastructure &
Application Support Contracts
Key Teach Course Delivery: Planning, Essbase,
Financial Reporting, Smart View, HPCM, HFM,
FDM, DRM, OBIEE
Custom Training Delivery: Process & Reporting
HPCM Standard & Detailed
Models, Waterfall Allocations,
Activity Based Costing,
Customer, Product & LOB
Profitability
Our Theme for the Day
Agenda
What is an Override?
Why would you want
one?
What are the design
considerations?
What is a straight forward
method for creation?
Is there anything else to
consider?
What is a Override?
An Override is just a way to change the post
translated data in an account.
This can take the form or replacing the existing
data with a new amount or by adjusting the
existing data.
Sometimes people will speak in terms of
“Historical Rate” accounts. This is another
method of getting to the same result but is not
recommended as we shall see.
Why do I want one?
While the vast majority of data in the system
will translate using a standard P&L or Balance
Sheet method, accounting rules dictate that
some accounts / transactions behave
differently.
You may need to load historical data to HFM
that was not translated “consistently” at the
time.
All of the other kids have one!
For those who don’t like Overrides
Design Considerations
Are currency translations part of this
application?
Do any of the translating entities actually have
populated accounts that will need Overrides?
Establish what the current process is doing.
What are the accounts that need to be
Overridden?
Will you need to have Overrides into multiple
currencies?
Design Considerations Continued
If there are going to be overrides, will they be
an adjustment to the existing data or a
replacement?
How is this data going to get into HFM?
Will you need to Override “all” accounts for
History?
A Simple Solution
Identify the Override accounts
Create a custom structure
Attach the custom structure to the accounts
A Simple Solution - Code
Example for Simple Override
There are rates in the system
Thrilling!
A Simple Solution – but Multi-Currency
Overrides are needed for USD and EUR
Modify our custom structure
Entity Structure
The base entity is in Yen
The first level parent is in EUR
The second level parent is in USD
We wish to have overrides in EUR and USD
Multi Currency Override Code Part 1
Multi Currency Override Code Part 2
Multi Currency Override Code Part 3
• This is the code in the Translate routine. As you
can see it is simple.
• Note this code is just to keep the override change
from translating. You can pull the override
change data from either pre or post translated as
it is the same amount.
Still with me ?
Example Multi Currency 1
This shows 100 Yen translating into 13,333 Euro
which translates into 10,000 USD.
The second part overrides Capital Stock with
12,000 Euro which then translates to 9,000USD
Example Multi Currency 2
This shows a USD override of 15,000
There is no change in Paid in Capital or the Euro
amounts.
This is all happening in January
Example Multi Currency 3
This shows the Total Override for EUR in January
moving into February with the red arrow.
The green arrow shows the override taking place
in February.
Example Multi Currency 4
This shows that as the override of 15,000 USD
starts in JPY then translates to EUR and then to
USD the amount never changes.
The green arrow shows the override taking place
in February.
A different Example
Lots of Intersections?
If there are overrides to ICP accounts or the
accounts to override utilize other customs the
number of possible intersections can be huge.
At some point most clients will decided that there
are too many intersections for them to type in all of
the overrides.
This can be accomplished by the rules.
The trade off is that some standard rate will need
to be used.
Adjustments can still be allowed
Modify the structure again
Code to capture the Change
There are only two differences in the code
Code to Translate the Change
If we are translating into USD then translate the USD part
at the USD rate.
Or we are translating into EUR then populate that portion
of the override.
This is simplification – a two step override is more complex
Example of Calculated Change
The red box contains the ledger amounts
The blue box contains the calculated change
The green box is the post translated change
The Sizzle
The Overriding part of Overrides
The code we just looked at accomplishes three
basic types of overrides
1. One currency with loaded changes
2. Multi currency with loaded changes
3. Calculated changes
I Bet I Can Break It!
You can add conditions and complicating factors
forever. Here are a couple to be aware of:
Overrides using Historical rates
Overrides at multiple spot rates
Hey I want to only type in one override to
represent these three entities in only this structure.
Complications
Yes Virginia you can override P&L accounts.
The accounting reasons for BS overrides on Equity and
Investments are solid. For P&L it tends to be preference to
see data a certain way.
If not forced stay away from this. You will need a pile of
code longer than everything we have seen in this
presentation to make this work.
P1 does not pull from the prior year for the P&L.
Default translation rates / methods are different
The ability to write simple non-account based rule is
gone…Etc etc etc
When I say this I kind of mean that…
Other considerations - CTA
Is there anything else to consider? Now I will talk
too much about CTA.
When you override the translated amount you are
creating “real” CTA on the Balance Sheet.
The easy way to handle this is to simply take the
difference between what would have translated
and the post translated overridden amount and
add that to the CTA account.
The following example flips back to overrides on
identified accounts.
Other considerations – CTA Code
In the Translate routine loop through the override
accounts.
Translate the accounts at the EOM Rate and place
into the calculated CTA Account
Other considerations – CTA Code 2
Loop through the same accounts post translated and
back those amounts out of the CTA account.
No account CTA
You can figure out the CTA without
specifically addressing the accounts.
The code just utilized all the data in the
specific Custom 4 for total overrides vs.
what would translate at the [None]
Or you can find the accounts by saying the
ones with a Custom 4 top member of
Overrides.
Another consideration
Your History is Where?
How are you going to handle translations on
Historical data?
What if a different translation methodology was
used?
Were journals made post translated?
What if different rates are used on different entities
with the same foreign currency?
Don’t forget any existing overrides.
Is actual local currency data needed?
Overrides for Everyone!
When dealing with historical data the main
objective not to lose sight of is that you are try to
make data tie.
You don’t need to run the regular “go forward”
rules.
Load the normal local currency data and load the
post translated data you wish to see.
Add salt and adjust to your heart’s content.
It goes where???
Total Data Source Custom 4
● Ledger Data
● Historical Data
● HE_LC_Historical
● HE_USD_Historical
The Custom 4 dimension looks like this.
Data is extracted from Hyperion Enterprise both pre
and post translated and loaded here.
The aggregation weight on the USD member is zero.
Questions ???