Dayalan Punniyamoorthy Blog

Sunday, March 1, 2026

Unlocking EPM Power: Get User Variables with Oracle Planning REST APIs!

Retrieving User Variables in Oracle EPM Using REST APIs

If you’re building integrations with Oracle Enterprise Performance Management (EPM), sooner or later you’ll run into User Variables. They are everywhere—driving form personalization, security filters, default selections, and even calculation behavior.

The good news? Oracle EPM provides powerful REST APIs that let you retrieve user variable values programmatically.

In this blog, we’ll break down two commonly used REST APIs:

  • GetUserVariablesForUser
  • GetUserVariablesForUserAndMember

You’ll learn:

  • What user variables are and why they matter
  • When to use each API
  • How to call them
  • What the response looks like
  • Common real‑world use cases

All examples and explanations are provided with reference 

 

What Are User Variables in Oracle EPM?

User Variables are configurable placeholders that dynamically resolve to dimension members based on the logged‑in user. They are widely used across Planning, FreeForm, FCC, and other EPM modules to personalize the experience.

Typical use cases include:

  • Default Entity, Version, or Scenario for a user
  • Security‑driven data access
  • Dynamic filtering in forms and dashboards
  • Personalized calculations and rules

From a technical perspective, user variables help avoid hardcoding dimension members and allow applications to scale across users with different responsibilities. [docs.oracle.com]

 

Why Retrieve User Variables via REST APIs?

While user variables are usually set and managed through the UI, integrations often need them programmatically. Common scenarios include:

  • External applications that need to respect EPM personalization
  • AI agents or middleware dynamically resolving context
  • Audit and validation of user setup
  • Mass analysis of user configurations
  • Integration testing and automation

Oracle addresses these needs through the User Variable Values REST APIs available in Planning REST API v3. [docs.oracle.com]

 

API #1 - What This API Does

This API retrieves ser variable values set for all users and for all user variables defined for the application.

 

REST Endpoint

/HyperionPlanning/rest/v3/applications/EPBCS/uservariablevalues




Response



API #2 - What This API Does


To retrieve user variable values set for all users for a user variable with a specific name.

REST Endpoint  

/ /HyperionPlanning/rest/v3/applications/EPBCS/uservariablevalues/Asset - Buy



API #3 - What This API Does

//HyperionPlanning/rest/v3/applications/EPBCS/uservariablevalues?q={"userName":"dayalan.example@example.com"}


to retrieve user variable values for one or more users.






Example Use Case

  • An external planning portal needs to open with the same defaults as EPM
  • A batch job validates that users have all mandatory variables assigned
  • AI‑driven workflows resolve default dimension context before executing rules

 

 

Security and Access Considerations

  • Service Administrators can retrieve variables for any user
  • Regular users can retrieve only their own variables
  • APIs follow standard EPM REST authentication (Basic Auth or OAuth2)

Oracle also enhanced these APIs in recent releases to allow retrieving multiple users’ variables in a single request, improving performance for administrative use cases. [docs.oracle.com]

 

Real‑World Integration Patterns

Here’s how these APIs are commonly used in modern EPM architectures:

  • AI agents translating natural language into EPM actions
  • Data pipelines aligning user context across systems
  • Automated testing validating environment consistency

If you’re building an EPM Control Center, middleware, or AI‑driven workflow, user variables are often the first API call you make.

 

Final Thoughts

User variables may look simple on the surface, but they are foundational to personalization and security in Oracle EPM. Oracle’s REST APIs make it easy to retrieve them in a clean, scalable, and secure way.

 

If you’re building advanced integrations or AI‑powered solutions on Oracle EPM, mastering these APIs is a must.

 

 Happy days on the cloud!


Saturday, February 28, 2026

Dynamic Period Locking Using Smart List in Oracle EPM (using Groovy Rule)

Have you ever faced the challenge where business users need flexibility to edit data in some months, but strict control in others? This is a common scenario in Oracle EPM Planning, and managing it manually can quickly become a headache. Luckily, there’s a way to automate this process using Smart Lists combined with a Groovy rule—making your forms dynamic, business-controlled, and much more efficient.

 

Let’s dive into how this solution works and why it’s so powerful.

 

**Business Requirement**

Here’s the goal: We want a Smart List column (let’s call it Account = SL) that acts as a simple toggle for whether a month is editable. If the user selects “DoNotUpdate” for a month, then certain accounts (like A_77300 and A_77600) should become read-only for that period—while other months remain editable. This puts the control squarely in the hands of your business users, without the need for IT to lock and unlock forms each month.

Saturday, May 31, 2025

Mastering EpmScript in Oracle Cloud EPM Groovy Rules!

 If you're building Groovy business rules in Oracle Cloud EPM, you've likely encountered EpmScript. It's not a class you import or instantiate—it's just there, quietly offering its powerful methods to control almost every part of your Planning application.

In this blog, we’ll demystify EpmScript, explore its capabilities, and walk through practical examples of how it unlocks dynamic planning automation.

Groovy Scripting in Oracle Cloud EPM: A Deep Dive!

 Groovy scripting in Oracle Cloud EPM Planning is not just a scripting tool—it's a superpower. With the ability to manipulate forms, validate data, execute calculations, and orchestrate workflows dynamically, Groovy turns your Planning environment into a living, breathing application.

Whether you’re validating input, enforcing business rules, or orchestrating complex data flows, Groovy scripting provides flexibility and control that traditional Planning business rules can only dream of.

Tuesday, May 20, 2025

Groovy most commonly used functions and codes!

 In the world of Cloud EPM Planning, where forms, calculations, and allocations rule the day—and multiple times, you need Groovy scripting to do what regular calc scripts simply can’t. This blog gives you the easy to use functions and codes that you can reuse work across projects.


Monday, May 12, 2025

Automating Emails in Oracle Cloud EPM with Groovy Email Template!

 Sometimes you just need to let someone know what’s going on in your EPM application—maybe a process finished, a check failed, or you just want to send a heads-up. This Groovy business rule makes it easy by sending emails right from EPM, using just a few runtime prompts.


Thursday, April 24, 2025

Run Data Management rule on Autopilot: Streamlining DM Data Jobs with Groovy

Have you ever wanted to run a series of Data Management integrations in Oracle Cloud EPM automatically for specific forecast periods — all while staying user-friendly with runtime prompts and full-on status tracking?

Well, this Groovy business rule does exactly that. Let’s break it down

 

This Groovy rule is designed to automate and control the execution of Data Management (DM) integration jobs for forecast data. It dynamically interprets user input, validates required conditions, and executes the appropriate integration job for each forecast period in sequence.

The rule orchestrates the execution of multiple forecast data movement jobs in Oracle Cloud EPM. The jobs transfer forecast data from one scenario/version to another (like from mid-forecast to working version) using a Data Management (DM) integration job. The timing and execution logic is governed by runtime prompt inputs and substitution variables.

Monday, April 14, 2025

Data Copy using DataGridBuilder in Groovy!

 



 

In this blog, we will see how to perform an intercompany data translation with ease,  

 

This rule ensures intercompany data is clean, aligned, and instantly processed when users save a form. It applies standard naming and business logic automatically—no manual cleanup needed. Data flows straight into the target  cube or POV, reducing cycle time and reconciliation effort. It improves auditability and consistency across entities, accounts, and products. The result? Faster closes, fewer errors, and more trust in your numbers

Tuesday, April 8, 2025

Triggering Pipeline from Groovy Rule

For example, consider running a forecast pipeline in Oracle EPM, we often deal with multiple forecast periods that need to be processed sequentially.


However, ensuring that each period runs correctly, waiting for previous jobs to complete, and handling errors gracefully can be tricky.

 



In this the script ensures that each forecast period is processed properly, one at a time, and prevents overlapping or conflicting jobs.

 

Thursday, March 27, 2025

EPCM - Copy Data by Point of View operation via Groovy

If you’ve been working with Oracle EPM Cloud, particularly Profitability and Cost Management (PCM), you might need to copy data between different POVs (Point of View) in your application.

In Oracle's Enterprise Profitability and Cost Management (EPCM), efficiently managing data across different Points of View (POVs) is crucial for accurate financial analysis and reporting. A POV typically represents a specific combination of dimensions such as year, period, scenario, and version. Copying data from one POV to another allows organizations to replicate datasets across different scenarios or time periods, facilitating comparative analysis and forecasting. Oracle provides a REST API endpoint specifically designed for this purpose: the "Copy Data by Point of View" operation.


Monday, March 24, 2025

Fetching Pipeline Execution Details in Oracle EPM Using Groovy!

In Oracle EPM, pipelines are essential for automating data workflows, integrating data sources, and performing transformations. To ensure smooth execution, it's crucial to monitor pipeline runs and detect job failures in real-time.

 

When running automated data processing or calculations in Oracle EPM Cloud, monitoring the execution status of pipelines is critical. You don’t want to just trigger a pipeline and hope for the best—you need real-time insights into whether jobs succeed or fail.



 

Wednesday, March 5, 2025

Automate version creation and renaming in Oracle EPM with Groovy scripting!

 

Groovy scripting, which enables automation, dynamic validation, and metadata updates.

In this blog, we’ll walk through two Groovy business rules that manage version members in the Version dimension:

  1. Creating a new version dynamically
  2. Renaming an existing version member


We’ll explain the logic behind each rule, 

Friday, February 7, 2025

A Groovy Script for Dynamic Substitution Variables - Automating Rolling Forecast Periods in Oracle EPM

This blog explores a powerful business rule that dynamically updates forecast substitution variables based on the current fiscal period. Learn how to map months to quarters, process rolling forecasts, and seamlessly update variables for accurate planning. 🏆 Say goodbye to manual adjustments and let Groovy handle the quarterly forecasting logic with ease!



Why Automate Forecast Substitution Variables?

Substitution variables act as dynamic placeholders in Oracle EPM, allowing calculations, rules, and integrations to reference time-sensitive values (e.g., current month, current year, forecast period).

 

Thursday, January 30, 2025

Extracting Notes and Attachments from Cells in Oracle Cloud EPM Using Groovy!

Lets explore on how to extract cell notes and attachments from Oracle Cloud EPM using Groovy scripting. 



This blog walks through retrieving Entity and Cost Center descendants, querying financial data, and identifying cells with notes or file attachments.

The script dynamically iterates through each combination, loads a data grid, and logs key findings after finding the cell Notes and Attachment if any. 

Suppression rules ensure efficient execution, while error handling prevents failures. Ideal for auditing financial data and ensuring compliance. 

Tuesday, December 31, 2024

A Deep Dive into FlexibleDataGridDefinitionBuilder and DataGridDefinitionBuilder!

In the world of Oracle EPM Cloud, data grids serve as the backbone for interacting with multidimensional datasets. Whether you're querying data or preparing it for analysis, the choice of grid definition builder can significantly impact your productivity and script efficiency. Oracle EPM Cloud provides two main tools for constructing these grids: DataGridDefinitionBuilder and FlexibleDataGridDefinitionBuilder.

In this blog, we’ll explore these two builders, dissect their features, and help you decide which one suits your needs. Along the way, we’ll cover best practices, showcase example scripts, and highlight why the flexibility of the FlexibleDataGridDefinitionBuilder often makes it the preferred choice for modern Oracle EPM applications.

Tuesday, December 17, 2024

Automating Multiple Data Push in Oracle Cloud EPM Using Groovy Business Rules!

In Oracle Cloud EPM, Groovy scripting has become a powerful tool for automating business processes, ensuring real-time validations, and enhancing interactivity. This blog explores a practical use case where a Groovy business rule dynamically sets substitution variables and validates Data Maps before executing Smart Push operations.

The rule also demonstrates on using runtime prompts (RTPs) to set values for Substitution Variables, validate Data Map existence, execute Smart Pushes for specific members, and log user execution details.



Friday, May 31, 2024

User Audit Report (v2) Detailed Overview

 User Audit Report (v2) Detailed Overview



Purpose:

The User Audit Report (v2) REST API generates a detailed audit report of user activities within a specified environment and timeframe. This report is crucial for monitoring user access and activities, ensuring security, and maintaining compliance.

Functionality:

Oracle Cloud Application Update Readiness!



In this blog lets explore the Oracle Cloud Application Update Readiness. It provides comprehensive information on the latest updates for Oracle Cloud Applications. Here are the key components explained in detail:


1. Feature Listing Report

Oracle publishes a Feature Listing Report that is updated monthly. This report includes:

  • New Features: Details about the latest features available in Oracle Cloud Applications.
  • Implementation Dates: Information on when these new features will be available or become mandatory.
  • Optional Features: A timeline of when optional features will be automatically enabled if not already activated by the user.

All about During daily maintenance!!!

All about During daily maintenance!!!



During daily maintenance in Oracle EPM Cloud, the system creates a maintenance snapshot, applies patches, adjusts configurations, and analyzes activities to generate an Activity Report. The environment is then rebooted, with initial access limited to Service Administrators. Certain operations are restricted during this period, especially for processes like Planning and Financial Consolidation. Maintenance usually starts between 10:00 p.m. and 1:00 a.m. local time and a 15-minute notice is given before maintenance begins. The process typically takes less than an hour.


Thursday, May 30, 2024

Find and Download Files from an Oracle EPM Cloud Environment!

 

Find and Download Files from an Oracle EPM Cloud Environment




In this Blog lets see the example script to automate the process of downloading files from an Oracle Enterprise Performance Management Cloud environment using a text string as a wildcard.

This script matches the string specified in the FILENAME parameter with file names displayed using the listfiles command, then automatically downloads the matching files.

Ensure you set the appropriate search string to the FILENAME parameter. For example, FILENAME="Scheduler Output/epm" will match file names containing "Scheduler Output/epm" in the listfiles command output, identifying the files to download.