Skip to content

Run-Time Prompts

A Run-Time Prompt is a value a Rule asks for when it runs: the entity to allocate, the year to seed, the version to write to. EPM Workbench reads the prompts a Rule declares, lets you edit their definitions without opening Calculation Manager, and collects the values at Execute.

In a Calc Script, a prompt is a name in braces, used wherever the value belongs, such as FIX ({RTP_ENTITY}, {RTP_YEAR}). In Groovy, you declare the prompts in the RTPS header comment at the top of the Body and read them through the rtps binding:

/* RTPS: {RTP_ENTITY}, {RTP_YEAR} */
String entity = rtps.RTP_ENTITY.toString()

Either way, the name has to resolve to a prompt definition. Oracle builds its prompt dialog from what the Rule declares, so an undeclared prompt is never presented and arrives empty, which is why a Groovy read of one is flagged by groovy/rtp-declared.

Open a Rule. The EPM Details panel lists what it asks for under a Run-Time Prompts heading, in the order the prompts will be asked. Each one shows:

  • Its name, and its type in parentheses, such as RTP_ENTITY (member).
  • Its prompt text, the sentence the person running the Rule reads.
  • A Validation Value field. For member-like types this is a picker fed by the Pod’s dimensions; for everything else it is a text field. The value you put here is remembered for this Rule, and pre-fills the prompt at Execute.
  • A meta line reading scope, status, and Default Value:.
  • More Info, which expands Value / Default, Group, and the Hidden, Use as override value, and Allow #Missing checkboxes. The button turns into Less. Edits save as you make them.

A prompt with no definition behind it reads Run-Time Prompt not found, with the status Missing definition, and its action button is Create instead of More Info. Create opens a small form inline: the Name is fixed to the name your Body uses, and you fill in Scope (Global, Plan Type, or Rule), Type, Prompt Text, and, for member-like types, Dimension.

Click the Manage Run-Time Prompts icon in the RULES header to open every prompt definition the Pod knows about in one tab. (EPM Workbench: Manage Run-Time Prompts in the Command Palette, Ctrl+Shift+P / Cmd+Shift+P, does the same thing.) The icon appears when a Pod is selected; a Library Folder has no prompt definitions.

The table has five columns: Name, Scope, Type, Prompt Text, and Used By, which counts the Rules that resolve to that definition. Scope reads Global, Application, Plan Type: FINPLAN, or Rule: Monthly Allocation, so a narrow definition that shadows a broad one is visible at a glance. Above the table sit a Search prompts field, a scope filter (All scopes, Global, Plan Type, Rule), and New, which starts a blank definition.

Selecting a row loads it into the EPM Details panel for editing: Name, Type, Scope, Prompt Text, Description, and Dimension. Plan Type scope adds a Plan Type field, and Rule scope adds Rule Name as well. Save writes the change; Delete is available only while nothing uses the definition. Below the form, Used By lists each Rule or Template that resolves to it, with its plan type and its saved Validation Value. When more than one Rule uses the definition, the panel says so before you edit, for example This shared definition is used by 4 Rules., since a change to the prompt text or the type reaches all of them. Don’t ask again turns that warning off for good.

When you Execute a Rule that declares prompts, a card appears in the EPM Details panel titled Execute followed by the rule name, with one field per prompt:

Prompt typeWhat you get
TextA plain field.
NumericA field with a range hint, such as Between 0 and 100, checked on submit.
DateA field hinting YYYY-MM-DD.
Member, dimensionA picker fed by the Pod’s dimensions, or by the fixed list the definition allows.
MembersOne field taking a comma-separated list.
Member rangeFrom and To.
Cell referenceOne field per dimension in the reference.

Fields pre-fill from the Validation Value saved for that Rule, and from the prompt’s declared default when there is none. Save as validation values writes what you entered back as this Rule’s Validation Values, so the next Execute starts there. Hidden prompts are filled from their defaults without asking, unless a hidden prompt has no value to use and does not allow #Missing, in which case the card asks for it rather than failing on the Pod. A missing required value or an out-of-range number is reported above the buttons, and the Run is not submitted.

This card is the last step before the Rule runs, after every other confirmation, so Cancel here costs you nothing. See EPM Sync and Runs for the rest of the round trip.