My Oracle Support Banner

Promotion Attribute Cancellation With Action Cancel Change Incorrect Calculated (Doc ID 2664843.1)

Last updated on NOVEMBER 13, 2023

Applies to:

Siebel Loyalty Engine - Version 8.1.1.11.17 [IP2013] and later
Information in this document applies to any platform.

Symptoms

Loyalty Promotion Attribute is not updated as expected when a Transaction is cancelled. The reverted attribute value was incorrectly calculated once Transaction is cancelled.

Make sure that an Accrual Promotion already exists.

 

1- Create Promotion Attribute

Loyalty Promotions Administration > Promotions> Promotion Specific Attributes

Name: spentvalue

Field: Number 1

Data Type: Number

Cancel Action: Cancel Change

 

2- Create ABC Bucket Test Promotion (Rule Model = Hierarchy)

Promotion > Rules:

 

 

Promotion Rule 1: check_txn_and_update ( apply to Transactions)

Criteria: check_points> [Transaction.Field.Points] > 0

Action: update_spentvalue > Update Attribute > spentvalue = [Promotion.Field.Number 1] + [Transaction.Field.Points]

 

 

 


 

 

 

 

 

Promotion Rule 2: check_attribute_and_assign (apply to Attributes)

Criteria: promo_atrrib_check > [Promotion.Field.Number 1] >= 1500

Action:

1 - assign_points_spent > Assign Points = Point Type: "test" > Add 1500

2 - subtract_spentvalue > Update Attribute > spentvalue = [Promotion.Field.Number 1] - 1500

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3) Test: Member:Bucket Test

a. Create new txn and Assign 1000 points (1-2ZOFI)

Processing Info:

ABC Bucket Test

Updated Attribute. Promotion.Field.Number 1 = 1000

Accrual

Got Applied. 1000 Non Qualifying. Test

Not satisfy the filter.

1-> Cancellation;

1-> Redemption;

 

b. Create new txn and Assign 769 Points (1-2ZOG9)

Processing Info:

ABC Bucket Test

Updated Attribute. Promotion.Field.Number 1 = 1769

Accrual

Got Applied. 769 Non Qualifying. Test

Not satisfy the filter.

1-> Cancellation;

1-> Redemption;

;

 

b1. In the Processing Info View > Member Attributes Applet, it shows ABC Bucket Test > Promotion Attribute Id 1-4967510 = 1,769

b.2 In the Processing Info View > Member Promotion attribute Applet, click "Process" to process the bucket.

Result: ABC Bucket Test > Promotion Attribute Id 1-4967510 = 269 as expected (1769 - 1500)

 

 d. Now create new txn for 5 points (1-2ZOH6)

Processing Info:

ABC Bucket Test

Updated Attribute. Promotion.Field.Number 1 = 274

Accrual

Got Applied. 5 Non Qualifying. Test

Not satisfy the filter.

1-> Cancellation;

1-> Redemption;

ABC Bucket Test > Promotion Attribute Id 1-4967510 = 274

 

e.  Make sure that you have Cancellation Promotion, if not create one as below:

 Name: ABC Cancellation Promotion (Apply To - Cancellation)

Name: base_cancellation_rule_1

No criteria

Actions:

1 Name: base_cancel_action_txn_1 > Type – Cancel Transaction

2 Name: base_cancel_action_attribs_2 >  Type – Invoke Custom Action> Method: CancelTxnAttributes

 

f. Cancel above TRANSACTION of 5  (1-2ZOH6)

A New Redemption Transaction is created with Base Points = 5

Processing Info:

Cancellation

Got Redeemed. 5 Test

Not satisfy the filter.

1-> ABC Bucket Test;

1-> Accrual;

1-> Redemption;

;

 

 

 g. A Redemption Cancellation Transaction is created, Process it:

Processing Info:

ABC Cancellation
 Invoked Service. LOY Customer Action Business Service.CancelTxnAttributes
Updated Attribute.
Update Attribute: Due to Cancellation  
Attribute Number 1 Value went from 274 to 1769  ********** Result is NOT expected- It used the Attribute value of 1769 from very last txn processed before bucket was processed (1-2ZOG9). It is expected to have Attribute = 269 (274 - 5 from 1-2ZOH6 - Accrual 5 which was the Transaction cancelled.)
Cancel Action Defined was Cancel Change

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.