Overview

A calculation modifier condition is a reusable rule that must be true for a calculation modifier to be applied.

Conditions are created once on this screen and then attached to one or more modifiers through the modifier’s Additional Condition(s) field. When a modifier has conditions attached, every attached condition must pass at calculation time, otherwise the modifier is skipped for that product.

A condition can test one of three things:

  • Question - the answer given to an appointment or job question.
  • Product Attribute - an attribute value of the product being calculated.
  • Calculation - the already-computed result of another calculation type.

Adding a Modifier Condition

  1. Navigate to the Calculation Modifier Condition Management screen through Calculations Calculation Modifier Conditions
  2. Fill in the configuration options
  3. Select Add Calculation Modifier Condition
  4. Attach the condition to the relevant modifier(s) via the Additional Condition(s) field on the Calculation Modifiers screen

Updating a Modifier Condition

  1. Navigate to the Calculation Modifier Condition Management screen through Calculations Calculation Modifier Conditions
  2. Select the Calculation Modifier Condition
  3. Update the configuration options
  4. Select Update Calculation Modifier Condition

Configuration Options

Configuration Description
Calculation Modifier Condition ID A system-generated identifier
Name A description of the condition - shown in the Additional Condition(s) picker on the Calculation Modifier screen
Match on What the condition tests: a Question answer, a Product Attribute of the product being calculated, or the result of another Calculation
Match Question For Question: the question whose answer is tested. For list questions the answer’s stored value is compared. If the question is unanswered the modifier is skipped
Match Product Attribute For Product Attribute: the attribute whose value is tested. If the product does not have this attribute the modifier is skipped
Calculation Type For Calculation: the calculation type whose already-computed result is tested
Calculation Match Which result of the selected calculation type to test: the Primary or Secondary result, taken per Product (per unit), per Block (area subtotal), or for the whole Appointment
Condition How the tested value is compared: Equal to, Greater than, Greater than or equal to, Less than, Less than or equal to, or Range
Match Field Leave as Custom to compare against the Value below. Selecting the activity date option instead compares the tested value against the appointment’s activity date (its expected installation date, falling back to the scheduled date) formatted as YYYYMMDD - useful for testing date questions or date attributes against the appointment date
Value The value the tested answer or attribute is compared with (case-insensitive). Not used when Condition is Range or when Match Field is the activity date
Opening Range Lower bound when Condition is Range - the tested value must be greater than this
Closing Range Upper bound when Condition is Range - the tested value must be less than or equal to this

Notes on comparisons

  • Comparisons are case-insensitive and ignore leading/trailing spaces.
  • A value of 0 is valid and can be matched - only an empty answer or missing attribute causes the modifier to be skipped.
  • When testing another calculation’s result, the tested calculation type must run before the calculation whose modifier carries the condition - give it a lower Calculation Run Order on the Calculation Types screen.
  • Dates compare correctly because they are formatted as YYYYMMDD (e.g. a date attribute 20260805 is greater than or equal to 20260101).

Where to Next?