Calculation type

NotToExceedAmountAdjustment

Caps the total allowed amount for the account at a fixed dollar amount, reducing the account-level allowed amount if the sum of all charge-level allowed amounts (plus the current account-level amount) exceeds that cap.

3
uses
2
customers
Adjustment
category
Account
applies at

What it computes

totalAllowed = Details[0].Amount + sum over non-ignored charges i=1..NumCharges-1 of Details[i].Amount; if totalAllowed > calc.MaxAllowed: Details[0].Adjust(Details[0].Amount - (totalAllowed - calc.MaxAllowed), calc).

Parameters

KeyMeaning
MaxAlloweddecimal, default 0.0M; the fixed dollar ceiling the account's total allowed amount (Details[0] plus all non-ignored charge details) must not exceed.

Gotchas

MaxAllowed defaults to 0.0M -- a misconfigured/unset instance will forcibly zero out the entire account's allowed amount rather than doing nothing, since totalAllowed > 0 will almost always be true. No per-charge variant exists (CalculationLevel is hardcoded Account, unlike LesserOfAdjustment's AdjustCharges option). Uses Adjust (delta-recording), not SetBase.

In the source

class · /home/cary/src/mdc/MdClarity/MDClarity/MDClarityCore/Backend/CustomerDataModel.cs:886
dispatch · /home/cary/src/mdc/MdClarity/MDClarity/MDClarityCore/Backend/CalculationEngine.cs:738

CONFIRMED

Who uses it