Skip to content

Answer a named premium amount query

Any consumer needs a named premium figure (standard, discounted, estimated, NEAP, …)

Field Value
Operation ID OP-005
Trigger Any consumer needs a named premium figure (standard, discounted, estimated, NEAP, …)
Inputs An IPremiumAmountProvider (e.g. clsPremiumSet) and a PremiumAmountTypes value (26 members)
Outputs A decimal premium amount
Primary components PremiumAmountProviderExtensions.PremiumAmount(provider, type) (iPremiumAmountProvider.vb)
Entry point Business\SAIF.Business.Policy.Premium\iPremiumAmountProvider.vb

Steps

  1. Obtain the provider's sub-total list (OP-004).
  2. Select the sub-totals whose type matches the requested PremiumAmountTypes value.
  3. Sum DifferenceAmount across the matches — except for the NEAP type, where BaseAmount is summed instead (BR-016).
  4. For the Discount amount, return Discounted amount − Standard amount (BR-017).
  5. Return zero when no sub-totals match.*

Process flow

The following diagram visualizes this operation's control flow.

flowchart TD
    Start([Trigger]) --> S1[Step 1]
    S1 --> S2[Step 2]
    S2 --> EndOk([Outputs returned])

Failure and edge-case behavior

  • See the linked rules and SQL references above for validation failures, null-handling, and persistence contention behavior.

Sources

  • Business\SAIF.Business.Policy.Premium\iPremiumAmountProvider.vb