EPM Tech Tips · EPCM · 05
You load the ledger into Oracle Enterprise Profitability and Cost Management, run the model, and the total allocated cost no longer matches what finance closed. The difference is almost always one of six leaks: data that never loaded, a calculation that ran on the wrong slice, cost left behind in a source, destinations with no driver, cost counted twice, or adjustment rules that change the total on purpose. Each leak leaves its own footprint in PCM_Balance, so you can find it in a fixed order instead of rerunning the model.
Before you start
Write down the exact POV (Years, Period, Scenario, Version), the GL total you expect, and the total the model shows.
Pick your route. If PCM_Input already differs from the GL, the problem is the load: stay on step 1. If PCM_Input ties but the result does not, skip to step 2 and work through the calculation steps in order.
Step 1 · Does PCM_Input match the ledger?
What happens. Loaded data lands in PCM_Input, and no rule ever overwrites it. If the input does not tie, nothing downstream will. Typical causes are rejected records, failed mappings, a load to the wrong period, scenario or cube, or a replace where you meant to merge.
How to check.
Confirm the load target and your grid both use PCM_CLC, where calculations run, unless you have already moved results to PCM_REP. The wrong cube shows a false gap.
Build an ad hoc grid with PCM_Input in the columns, the top of PCM_Rule, and your accounts in the rows. Compare the total with the trial balance.
Go to Home › Application › Data Exchange. On the Data Integration tab, select Actions › Process Details and open the Process ID of your load. Check the status and the record counts for the run.
Look for rejected rows and unmapped source values, and confirm the load method (replace or merge).
Fix. Fix the mappings or add the missing members, reload, and confirm PCM_Input ties before you calculate. A replace load clears that POV's data first, so confirm the file holds the full period.
Step 2 · Did you calculate the right POV and the right rules?
What happens. A calculation runs only for the POVs you select, and only enabled rules are included. If you ran a Rule Set Range or a Single Rule, rules outside that range did not run. Clear Calculated Data clears only the rules being executed. Results written under a rule's old name are never cleared by a calculation, even with All Rules.
How to check.
Go to Home › Modeling › Calculation Control and confirm the POV status is Draft. Only Draft POVs accept calculation actions.
In Home › Modeling › Calculation Analysis, open the latest record and check its model, Processing Options and Processing Range.
In Home › Modeling › Designer › Mass Edit, filter by rule status and look for rules that are disabled.
Fix. If rules were renamed since the last run, clear the POV's allocated and adjustment values first with Calculation Control › More Actions › Clear, or with epmautomate clearDataByPointOfView. Then rerun the model for the correct POV with Clear Calculated Data and Run Calculation selected and the processing range set to All Rules. This wipes and rebuilds every result in the POV, so warn the people reviewing it, export Rule Balancing to Excel first, and run large models outside close hours.
Step 3 · Is cost stuck in a source?
What happens. An allocation rule writes PCM_Allocation In on the destinations and an offsetting PCM_Allocation Out on the source. If the rule's source selection misses some members, or only part of the balance is picked up, the rest stays in the source. PCM_Remainder tracks what each source has received and sent so the same cost is not allocated twice. Cost stranded in a source shows as PCM_NetBalance on that source after its rules have run.
How to check.
Go to Home › Modeling › Rule Balancing, select the cube and a balancing data form, set the POV and click Refresh.
Read the rules top-down. Each source's balance should drop toward zero once its rules run.
For any step that does not clear, select the rule and use View Rule Data (Ad-Hoc Grid) to see which source intersections still hold PCM_NetBalance.
To check one range of the model, use a custom Rule Balancing form whose member selections restrict the business dimensions to that range, and confirm the allocation rules bring its net balance to zero.
Fix. Widen the rule's source selection, or add a rule for the missed members. If stranded cost is intended, document where it stays.
Step 4 · Do the destinations have driver data?
What happens. Essbase skips destinations with no driver data, so they receive no allocation. If no destination has driver data, the cost stays in the source. This is common when the driver file was not loaded for the new period, or the driver sits at an intersection the rule does not read.
How to check.
Go to Home › Modeling › Calculation Analysis, select the calculation record, click More Actions and select Calculation Statistics - Diagnostics. If the report has little detail, rerun the calculation with diagnostics capture turned on in the calculation options.
In the Rule Statistics worksheet, look for rules with a Source Data Total but no Driver Data Total, or with zero or very low Cells Updated.
Open the rule and confirm the driver location matches where the driver data was loaded or computed.
Fix. Load or compute the driver for the period. If drivers are calculated, put a data prep rule before the allocation.
Step 5 · Is any cost counted twice?
What happens. When two rules pick up the same source, or a rule uses the same parent in both Source and Destination, the same cost can flow twice. With Post to Alternative, the offset is written to the alternative member you chose instead of the source. Include PCM_Allocation Offset Amount in your balancing form so you see it.
How to check.
In Home › Modeling › Designer › Mass Edit, click the actions icon and select Validate Model, then More Actions › View Validation Messages. Look for the warning that the same parent member is selected in both Source and Destination.
In Rule Balancing, compare the sum of PCM_Allocation In with the sum of PCM_Allocation Out for each rule. Allocation rules should net to zero across the model.
Compare the source selections of rules in the same rule set for overlapping members.
Fix. Tighten the source selections so each cost is picked up once, and confirm any alternative offset is intentional.
Step 6 · Are adjustments changing the total?
Custom rules write to PCM_Adjustment In and PCM_Adjustment Out. Unlike allocations, they change the net balance on purpose. Add both to your tie-out so the expected total is GL input plus approved adjustments, and confirm each adjustment rule is intended.
Quick checklist
PCM_Input in PCM_CLC ties to the GL · Ad hoc grid and Data Exchange › Process Details
Right POV, Draft status, enabled rules, All Rules · Calculation Control and Calculation Analysis
No PCM_NetBalance left in sources · Rule Balancing
Driver data present for every destination · Calculation Statistics - Diagnostics
No overlapping sources or parent in Source and Destination · Designer › Mass Edit › Validate Model
Adjustments included in the tie-out · PCM_Adjustment In / PCM_Adjustment Out
Pedro San Martín · Founder & Principal, Asher & Company

