calc/require-aggmissg-on
Severity warning by default. It runs on calc-script bodies (.csc) in Rules
only. A Script or a Template is a fragment that Deploy inlines into the Rule that
invokes it, so the setting belongs to the Rule as a whole rather than to any one
fragment, and this rule never fires on either one.
What it checks
Section titled “What it checks”The Rule body must contain SET AGGMISSG ON; somewhere. Matching is
case-insensitive and whitespace-tolerant, so set aggmissg on ; counts. A
commented-out command does not count, and SET AGGMISSG OFF; does not satisfy
the rule. When the command is missing, the warning is reported once at the top
of the file.
Why it matters
Section titled “Why it matters”AGGMISSG is off by default, which means Essbase does not aggregate #Missing
values from children up to their parents. It skips them instead, and the parent
keeps whatever number it already had. That is the behavior you want in a few
narrow cases, and the wrong behavior in most planning ones. The classic symptom
is a cleared child: a planner wipes out a cost center or a product line, the
child is now #Missing, the Rule aggregates, and the parent still shows last
week’s total because nothing was written over it. The number looks plausible, it
foots against nothing, and it survives until someone drills in. With
SET AGGMISSG ON; the #Missing children are treated as part of the roll-up,
so the parent falls to the honest total.
Example
Section titled “Example”This Rule body triggers the warning:
FIX("Budget", "Working", "FY26") AGG("Entity");ENDFIXThe message reads:
Add `SET AGGMISSG ON;`. It is OFF by default, so #Missing children are not aggregated to their parents and a parent can keep a stale value after its children are cleared.Add the command to the header:
SET UPDATECALC OFF;SET AGGMISSG ON;
FIX("Budget", "Working", "FY26") AGG("Entity");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.
This rule is a natural Exception candidate. Some cubes genuinely need #Missing
left alone, a rates or driver cube where a missing rate must not roll into its
parent being the usual case. Instead of turning the rule off across the
workspace, keep it on and add an Exception for the few Rules that touch that
cube.