Skip to content

Settings

EPM Workbench contributes 21 settings. All of them live in the normal VS Code Settings editor, so they follow the usual User and Workspace scopes.

Three ways to get there:

  • Click the gear icon in the EPM Workbench sidebar.
  • Run EPM Workbench: Open Settings from the Command Palette (Ctrl+Shift+P / Cmd+Shift+P).
  • Open VS Code Settings (Ctrl+, / Cmd+,) and filter for “EPM Workbench”.

The VS Code Settings editor filtered to the EPM Workbench extension

Default: true

Connects the editor to the hosted EPM Groovy language server for the active Pod, which is what gives you Groovy completion, hover, and compile diagnostics. While connected, the text of the Groovy rule you have open is sent to that server for processing in memory. On paid tiers, so is the text of the Pod’s other Rules, Templates, and Scripts (that is what makes Full Application Intelligence work across artifacts), along with the names of the Pod’s Connections and its Smart Lists, including each Smart List’s entry names and labels. Nothing is stored there. See Privacy for the full account.

If your network keeps dropping the connection (a strict proxy, for example), the extension retries quietly in the background and shows an occasional dismissible reminder. Calc-script intelligence is local and keeps working whether this is on or off.

Default: true

Once a day, looks for a newer API Reference catalog for the Docs tab and caches it locally. The request is anonymous and carries no identifying information about your install. Turn it off to stay on the catalog that shipped inside the extension.

Default: true

While your cursor is on a line you are editing, new EPM warnings for that line are held back until you move off it, because a half-typed line is expected to look wrong. Every other line updates immediately. This covers Validation Rule findings in calc-script and Groovy rules, MDX scratchpad results, and Groovy compile diagnostics.

Default: deploy

How much confirmation the extension asks for before writing to or running against your Pod. The four values form a ladder from lightest to heaviest action (Push, then Deploy, then Execute). Whichever rung you pick is the lowest one that still asks, and everything heavier asks too.

ValueWhat it confirms
alwaysPush, Deploy, and Execute
deployDeploy and Execute; Push goes straight through (default)
executeExecute only; Push and Deploy go straight through
neverNothing; all three proceed immediately

never only silences the extension’s own dialogs; the engine underneath keeps its own consent requirements for Deploy and Execute.

Default: ask

What Push, Deploy, and Execute do when the rule file you are acting on has unsaved changes. These actions always work from the last saved copy on disk, so this only decides whether your unsaved edits get written first.

ValueBehavior
askPrompt each time (default). The dialog’s “Always…” buttons rewrite this setting for you.
alwaysSave the file, then run, with no prompt.
neverLeave the file alone and use the last saved copy.

epmWorkbench.deleteSnapshotsDuringTransport

Section titled “epmWorkbench.deleteSnapshotsDuringTransport”

Default: onSuccess

Pull, Push, Deploy, and Execute move artifacts by creating a temporary Snapshot file in your Pod’s Oracle Migration inbox. These are staging files the actions create and consume on the Oracle side, not Snapshots you asked for, and the default cleans them up for you, so most people never need to change this. Cleanup is best effort and never changes the outcome of a Run.

ValueBehavior
alwaysDelete the Snapshot even when the Run fails or is canceled.
neverKeep every transport Snapshot in the inbox.
onSuccessDelete once the Snapshot has served its purpose (default). A later rule failure still deletes; only a failed transfer keeps the file.

For Execute, the Snapshot is removed as soon as the deploy lands, before the rule runs.

Both starters apply to Rules only. New Scripts and Templates always start empty.

Default: "" (empty)

Text written into every new Groovy Rule you create with Add New Artifact. Use it for the boilerplate you type anyway, such as a Run-Time Prompt declaration comment and your usual cube and application setup:

/*RTPS: {Scenario} {Version}*/

Leave it empty to start from a blank file. The field opens in a multi-line editor, so a full header block is fine.

Default: "" (empty)

The same thing for every new Calc Script Rule created with Add New Artifact. Leave it empty to start from a blank file.

Default: true

Runs the EPM Workbench Groovy formatter when you save a .groovy rule file inside a Pod Folder, whether that file is a Rule, a Script, or a Template. The groovy language ID is shared with ordinary Groovy tooling, so this is scoped strictly to Pod Folders: build.gradle, Jenkinsfiles, and any other .groovy file outside a Pod Folder are never touched.

Default: true

Runs the calc-script formatter when you save a .csc rule file inside a Pod Folder, Rules, Scripts, and Templates alike. Every save then writes the same canonical text, so spacing habits never show up as differences against the Pod. Files outside a Pod Folder are never touched.

The remaining options control what that calc-script formatter does. They also shape the completions you accept, so a snippet never fights the formatter.

Default: tab

Indent calc scripts with a tab (tab) or with spaces (spaces).

Default: 2

Spaces per indent level. When Indent Style is tab, calc-script editors also display each tab at this width.

Default: true

Rewrites member names to the exact casing they have in the application, so what you type matches what Oracle has.

"net income" → "Net Income"

Default: true

Replaces an alias with the member name it points to, when the alias resolves to exactly one member. Ambiguous aliases are left alone.

Default: true

Wraps member names and aliases in quotes when you have written them bare.

Net Income → "Net Income"

Default: upper

Casing for block keywords: upper gives FIX / ENDFIX / IF / ENDIF, proper gives Fix / EndFix / If / EndIf.

FIX( "Actual" ) ... ENDFIX // upper
Fix( "Actual" ) ... EndFix // proper

Default: true

Adds blank lines around FIX blocks that contain other blocks, and after ENDFIX and ENDIF, so nesting is easier to follow. Innermost blocks stay tight.

epmWorkbench.calcFormat.spaceAroundOperators

Section titled “epmWorkbench.calcFormat.spaceAroundOperators”

Default: true

Puts spaces around binary operators (=, ==, !=, <, >, +, -, *, /, %).

"Net Income"="Revenue"-"Expense"; → "Net Income" = "Revenue" - "Expense";

Default: true

Puts a space after each comma.

FIX( "Actual","FY26" ) → FIX( "Actual", "FY26" )

Default: true

Puts spaces just inside block and command headers, and inside an @function that takes another @function as an argument. Plain @function calls stay tight either way.

FIX( "Actual", "FY26" )
"Net Income" = @SUM( @RELATIVE("Total Entity", 0) );
ENDFIX

Turned off, the same script formats as:

FIX("Actual", "FY26")
"Net Income" = @SUM(@RELATIVE("Total Entity", 0));
ENDFIX

Default: true

Once a day, the extension contacts epmworkbench.com to keep your Seat Key current. Renewals, plan changes, and extensions apply on their own, without you re-entering the key, and a revoked or ended seat drops back to the Free tier with a notification.

The request sends only your Seat Key and this machine’s anonymous VS Code machine id. It never sends file content. Turn it off on machines with no internet access: the key stays valid until the expiry date built into it. See Seat Keys for how activation works.