Siebel Loyalty Administration Guide > Getting Started with Siebel Loyalty > Configuring Siebel Loyalty >
Rounding the Decimal Values of Points
By default, decimal values of points are rounded to the nearest integer. Points are rounded as followed:
- Accrual Items. The number of points accrued for a transaction are rounded to the nearest integer. If the decimal value is greater than or equal to .5, then it is rounded to the next highest integer. If it is less than .5, then it is rounded to the lower integer.
- Product Points. The point values entered for redemption or accrual when you define a product can only be integers.
- Base points. If base points are used to calculate the final number of points rewarded for a transaction, then the base points are calculated to 2 decimal places but the final number of points accrued for the transaction is rounded to the nearest integer.
- Promotions. If points are assigned using the Assign Points action of a promotion, then you can use decimal values in setting up the action for the promotion, but the final number of points accrued is rounded to the nearest integer.
- Redemption. Any decimal values for redemption items that are calculated by promotions are rounded off to the nearest integer.
- Member Balance. Because it depends on the integer values described in all the preceding bullets, the member balance is always as integer.
- Partner Point Block. The definition of Partner Account Debit (PAD) allows decimal values, so the partner's point block can have decimal values deducted. For example, if a member is awarded 545 points and PAD is .1, then 54.5 is deducted from the partner block. For more information about the PAD, see Setting Up Unified Point Type for Partner Account Debit.
Configuring the Rounding of Decimal Values of Points
You can configure the number of decimal places used for rounding points. This configuration applies to:
- Accrual items, which reward the member in decimal points based on the configuration.
- Point block debits, which subtract decimal values from the point block and leave a decimal balance in the point block.
- Actions that use points, including Assign Points, Redeem Points, Purchase Points, Transfer Points, Reactivate Points, Transaction Cancellation.
- Member services that use points, including Purchase Points, Transfer Points, Points Reactivation, Gift Points, Manual Credit and Manual Debit.
- Redemptions, which consume points including decimal values. However, the total number of points needed to redeem a product must be defined in the Products screen as an integer value and cannot use decimal values.
- Accrual and redemption cancellation, which revert points using the same decimal precision with which they were rewarded or redeemed in the transaction being cancelled.
You can also override rounding for qualifying points. If you configure rounding so points are rounded to one to seven decimal places, then you can override this setting for qualifying points, so they are still rounded to the nearest integer. To configure rounding, use the following user properties of the Business Service LOY Processing Engine:
- Points Precision. This user property controls the number of decimal places to which the points are rounded. The default value is 0, which means that the points are rounded to an integer value. Valid values are any integer greater than or equal to 0 and less than or equal to 7. For example, the Assign Points action does a calculation that provides a reward of 1.345714932 points. Then:
- If the Points Precision user property has the default value of zero, then this reward is rounded to the nearest integer, in this case, 1 point.
- If the Points Precision user property is set to one, then this reward is rounded to 1.3 points.
- If the Points Precision user property is set to seven, then this reward is rounded to 1.3457149 points.
- Points Precision Override for QF. This user property allows you to round off qualifying points to integers, even if you have used the Points Precision user property to round off points to a decimal value. To override the Points Precision user property for qualifying points, set this user property to Y. If this user property is not defined or is set to N, then qualifying points will be rounded in the same way as other points, based on the Points Precision user property.
If any other feature except for qualifying points requires that you override the rounding and use integer points, then you can control the input at the user interface level. Allow the user to enter only integer values in the appropriate fields by changing the data type of these fields in the business component to integer. Examples of How the Decimal Values for Points are Rounded
Rounding of decimal points for a transaction occurs for each individual accrual line item generated by a transaction. For example, if a member's transaction qualifies for points as a result of two separate promotions, two accrual line items are created. The points assigned for each accrual generated by each promotion are rounded, then the values are combined to determine the total points the member receives. The following are some examples of how rounding occurs where a transaction qualifies for two promotions and where the Points Precision value is set to two, so points are rounded to two decimal points:
- If a transaction qualifies for two promotions, each of which generate 20.158 transaction points, two accrual line item are created, each with an accrual value of 20.16. The total points assigned to the customer is 40.32 (20.16 plus 20.16 from each of the accrual items).
- If a transaction qualifies for two promotions, each of which generate 20.987 transaction points, two accrual line items are created, each with an accrual value of 20.99. The total points assigned to the customer is 41.98 (20.99 plus 20.99 from each of the accrual items).
|