Thursday, April 16, 2026
Oracle Smart View - When and How to Update
Monday, April 13, 2026
Oracle FCC: Which Metadata Editor is Best for Catching Errors?
Wednesday, April 8, 2026
Oracle EPM Reporting - Trick for Period Reporting
A fellow consultant reached out for help on solving a problem with building a report with a specific requirement regarding periods in the columns. Like many things here on the blog, I'm adding the solution here for everyone (including me) to reference and find in the future.
The problem involves reporting a range of periods. The customer wanted to select a period in the point of view and then show the remaining periods in the quarter (not the year, which would be a simple RANGE function). So (assuming a calendar year setup) if the user selects January then show February and March and if the user selects February then only show March. With Essbase calculation scripting there are functions called LSIBLINGS and RSIBLINGS that can do this (show siblings before and after the current member). But in reporting, either within Narrative Reporting or within Reporting within the applications, there are no such functions.
My initial thought was to specify all the periods in the columns and then apply a bunch of conditional suppresses. It would work but I knew there was a better way, so I reached out to super star Opal Alapat for help.
So, here's what to do: use the INTERSECT function. The function returns all members that meet all of a list of specified criteria. The issue is figuring out which criteria to use where the combination yields the desired result.
For this particular problem, there are two criteria to specify. First, use the SIBLINGS function to return all of the siblings of the current point of view period (which will be user specified). If a user selects January, this function will return February and March (which coincidentally meets the requirement). But if the user selects February, the function returns January and March (which doesn't work).
The second criteria filters out the prior periods. Use the RANGE function to show periods from the current point of view to December (or the last period if a non-calendar application). So if the user point of view is February, then this function will return all months February to December.
This is where the magic of the INTERSECT function comes in. The function looks at the two criteria and returns only the members that are in all the criteria sets. Here's what it looks like in the member selector and after returning to the grid.
The solution works well: both easy to set up and understand. And avoids the hassle of creating a bunch of conditional suppresses.
Bonus: If there is a need to report months before the current point of view in the quarter, then change the RANGE to go from January (or the first period) to the current point of view.
Saturday, January 31, 2026
Change to EPM Software Release Cycle
Oracle recently made an important announcement for all EPM environments that all administrators need to know.
First, some history, then what's happening, and then the consequences.
In the fall of 2025 the Essbase version in some products was upgraded to 21c. There were some product issues in the October 2025 and there was some communication from a group within Oracle advising customers to skip the updates. Probably more for the confusion as much as product issues, Oracle skipped the November and December 2025 releases and the January 2026 release (which usually doesn't have much anyway as it happens during year end close for the majority of customers).
Now, after further review and I'm guessing out of an abundance of caution, Oracle is skipping the February and March 2026 updates as well. The next scheduled release will be the April 2026 release. If following the normal cadence, the test environments will be updated on April 3 and the production environments on April 17.
So, consequences. The EPM Automate skipupdate command doesn't need to be used to skip these periods like was required for the October 2025 release. But, once April comes the environments will not have been updated in more than three months, so the skipupdate command won't work then either. To skip the April update (quarter end close for a majority of customers) an SR is required and Oracle will have to do it.
Customers will need to make a choice regarding the test environments. Currently, the test environment is most likely either the same version as production or one version ahead, meaning that an artifact snapshot (application backup) can be moved back and forth. If both production and test are not updated in April, then that will continue but the new version won't be available for testing. If the normal update cadence described above is followed, then the test environment won't be able to import the production snapshot during the two week testing window (more than one version different).
Recommendations. If you want to test the new version in the test environment, do a fresh clone from production to test right before the update gets applied to test (like on April 2). Also consider creating an extra environment so the current test environment can skip the update (if needed to support production and/or migration policies) and the new test environment can get updated (best of both worlds).