calc/fix-trailing-comma
Severity error by default. It runs on calc-script bodies (.csc) in Rules,
Templates, and Scripts, and needs nothing but the file you have open.
What it checks
Section titled “What it checks”The member list of every FIX(, FIXPARALLEL(, and EXCLUDE( header is
scanned for a comma sitting immediately before the header’s own closing
parenthesis, across line breaks and through any comment in between. Commas and
parentheses inside quoted member names are inert, so a member such as
"T(FIN)" does not confuse the scan. A trailing empty argument inside a nested
@function is left alone, because skipped optional arguments are legal Essbase
syntax in functions like @CURRMBRRANGE.
Why it matters
Section titled “Why it matters”The comma survives editing in Calculation Manager, and Deploy then fails with a generic parse error that names no line and no character. Nothing in the message points at the comma, so finding it means bisecting the member list by hand. Catching it in the editor removes the round trip entirely.
Example
Section titled “Example”FIX( "Plan", "Working", "FY Total", ) "Net Income" = "Revenue" - "Total Expenses";ENDFIXThe comma itself is underlined, and the message reads:
Trailing comma inside `FIX( … )` — Calc Manager rejects it with a generic error. Remove the comma before `)`.The message names whichever keyword opened the list, so the same finding on a
parallel block reads FIXPARALLEL( … ), and on an exclusion EXCLUDE( … ).
Corrected:
FIX( "Plan", "Working", "FY Total" ) "Net Income" = "Revenue" - "Total Expenses";ENDFIXAdjusting it
Section titled “Adjusting it”Change its severity or turn it off in the Validation Rules panel, or exempt one artifact with an Exception. There is rarely a good reason to do either: Oracle rejects the script in every case this rule reports.