About Calculation Groups
Calculation groups are collections of calculation rules that are applied to calculate quantities for billing and billing charges for service agreements.
As noted previously, calculation groups are associated with specific rate schedules in one of three ways:
-
Pre-Processing Calculation Groups: These are generally
used to derive service quantities or massage measured quantities.
The following illustrate some use cases of when a pre-processing calculation
group might be needed:
- When a rate contains prices for things that aren't measured directly by the customers' meters. For example, if the rate calculates a charge based on a service agreement's contracted quantity.
- When a meter measures something in a unit of measure that has
to be converted into a different unit of measure before it can be
rated. For example, a meter measures gas in cubic feet, but the rate
contains prices in therms.
During billing, a separate bill segment calculation header is produced for each Rate Version Calculation Group used to calculate charges. An additional calculation header is added if Pre-Processing Calculation Groups create bill calculation lines and by default, all these calculation lines are linked to a single calculation header. Before invoking the rate's Pre-Processing Calculation Groups, the rate engine processor builds the initial service quantity (SQ) collection based on the item collection and final values in the read collection.
-
Rate Version Calculation Groups: These are the calculation
groups used create a bill segment for the service agreement. Calculation
rules that support rate version proration such as Service Quantity,
Stepped Service Quantity, Item Type, Flat Charge, Maximum and Minimum
Charge, must be executed only in a rate version calculation group.
When the system creates a bill segment for a service agreement, it checks if multiple Rate Version Calculation Groups are in effect during the bill period. If so, it uses the rate's Allow RV Proration and RV Selection Date values to determine if it should prorate the various Rate Version Calculation Groups, or if it should pick one of the Rate Version Calculation Groups effective during the bill period. Rate Version Calculation Groups are executed after the rate's pre-processing calculation groups.
- Effective Date: defines the date on which each rate version calculation group becomes effective.
- Description on Bill: Specifies the description of the rate version calculation group on the bill. This description is saved on bill calculation details created using this rate version calculation group. Substitution characters may be used to substitute variables into the description during billing. Refer to How To Use Description on Bill in the Defining Calculation Rules chapter for a discussion of the various substitution variables.
-
Post-Processing Calculation Groups: These are similar
to Pre-Processing Calculation Groups, except that these are executed
after the Rate Version Calculation Groups. The intended types of functionality
include applying taxes on calculated charges, or deriving more complex
GL distribution.
Calculation rules that support rate version proration such as Service Quantity, Stepped Service Quantity, Item Type, Flat Charge, Maximum and Minimum Charge, are not designed to be executed in post and pre-processing calculation groups.
During billing, a separate bill segment calculation header is produced for each Rate Version Calculation Group used to calculate charges. An additional calculation header is added if Post-Processing Calculation Groups create bill calculation lines and by default, all these calculation lines are linked to a single calculation header.
Calculation groups can also be referenced by "Execute Calculation Group" calculation rules. See "Execute Calculation Group Rules - Nesting Calculation Rules" in About Calculation Rules for more information.