Bookshelf Home | Contents | Index | PDF |
Siebel Loyalty Administration Guide > Setting Up Siebel Loyalty Programs > Process of Setting Up Loyalty Programs > Creating Base Loyalty PromotionsBase promotions are designed to simplify the process of setting up complex promotions. They are used to calculate base points, based on any of the transaction attributes, member attributes, promotion attributes and so on. Each program can have only one base promotion. It is created, with no rules, as soon as the program is saved. Users cannot manually create this promotion, nor can they delete it, but they can add rules to calculate the base points for accrual, based on the transaction attributes. The base promotion can calculate the value of base accrual from the following:
The fields can be used for criteria as well as in actions, for example:
NOTE: These fields are available for all types of promotions; not just for the base promotion. The base points calculated, based on one of the these methods, can then be used as a basis for rewarding a bonus and incentives. This basis is achieved by making the base points available for all the promotions. The base points calculated are not allocated to the members directly. The points are allocated to members using another action, Assign Points. This action can only be part of another promotion. A program can have only one active base promotion. The Action type, Calculate Base Price, must be selected, then select either Custom or Distance Table in the Object field. In the Attribute field, select the attribute to be used to give the points from one of the following options: This task is a step in Process of Setting Up Loyalty Programs. Distance TableThe distance table is found below the Loyalty Programs tab. You can use it to add airport code pairs and specify the distance between them. These distances can be used by the base promotion to give points to a member. For more information, see Defining the Distance Between Two Airports. For example, a member, John, flies with King Air. John flies between New York and Paris. The distance between the two airports has been entered as 5000 miles in the distance table. The base promotion calculates the base points as 5000, based on the distance table. An accrual admin promotion gives the 5000 points to the member. In addition, John is a Gold tier member and has traveled in Class A. Based on these facts, the member recognition promotion gives 10% of the base points, and the cabin reward promotion gives another 500 points, to the member. John gets a total of 6000 points. Custom CalculationCustom calculation involves calling a custom business service to calculate the points and return a value. The custom business service can use data, by means of custom look-up tables outside of Siebel Loyalty, to calculate base points. This option is relevant when the base point calculation involves complex mathematical operations involving data stored outside of Siebel Loyalty. Example of Custom CalculationFor example, VoiceMobile loyalty program rewards members with base points based on the following criteria:
A member of VoiceMobile loyalty program, has: This member is rewarded (100 plus 500 plus 300) 900 base points. These base points can then be used as a basis for rewarding bonus and incentives. The base points are available for all the promotions. For example, VoiceMobile loyalty program rewards 25% of base points as bonus to members in Gold tier. This member, who is a Gold member, earns 175 points as bonus (that is, 900 times 0.25 equals 175 points). NOTE: The Point Limit Type option is not available for users to choose, because you cannot limit base accrual points based on the point block. Code Example for Custom CalculationThe value used in the custom calculation is sourced from the custom attribute defined in Program Level Attributes view. This custom attribute calls a custom function to derive this value. This function must be written as part of the LOY Customer Action Business Service. The following example of the code for a custom function shows how to read Input parameters and return output arguments. function GetValuesCustomAttribute(inputs, outputs) // All the field values would be in the format Object.Field.Field Name. All the // values would be passed to custom attributes. // Using transaction Id and querying transaction BC must be avoided because in // simulation mode the attributes passed in transaction are passed to simulation. // Always use the values from the Transaction.Field.Field Name. var strOrgAirPort = inputs.GetProperty ("Transaction.Field.Origination Airport"); var strDestAirPort = inputs.GetProperty ("Transaction.Field.Destination Airport"); var customCoeff = inputs.GetProperty ("Transaction.Field.Custom Coeff Factor"); if(strOrgAirPort == "SFO" &&strDestAirPort ="BOS") outputs.SetProperty("Field Value",points); |
Siebel Loyalty Administration Guide | Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices. | |