What is an Override?
Why would you want
What are the design
What is a straight forward
method for creation?
Is there anything else to
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
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
You may need to load historical data to HFM
that was not translated “consistently” at the
All of the other kids have one!
Are currency translations part of this
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
Will you need to have Overrides into multiple
Design Considerations Continued
If there are going to be overrides, will they be
an adjustment to the existing data or a
How is this data going to get into HFM?
Will you need to Override “all” accounts for
A Simple Solution
Identify the Override accounts
Create a custom structure
Attach the custom structure to the accounts
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.
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
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
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
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
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
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 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.
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
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
Other considerations – CTA Code
In the Translate routine loop through the override
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
Your History is Where?
How are you going to handle translations on
What if a different translation methodology was
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”
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
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.