15Siebel Pricer Technical Reference
Siebel Pricer Technical Reference
This chapter is a technical reference explaining how Siebel Pricer works. It includes the following topics:
Siebel Pricer Architecture
A high-level representation of the Siebel Pricing Management Architecture is shown in the following figure. This diagram includes four key components:
-
Siebel UI or Calling Application. This is the point from which the end user requests pricing (for example, quotes and orders).
-
Pricing Data. This is the administrative business objects that store prices, costs, and adjustments.
-
Pricing Procedures. This is the centralized location for pricing policies and logic. Pricing procedures use the PSP engine to locate and apply prices and adjustments, and you can customize them for your company's business model. For details about the PSP Engine, see Siebel Order Management Infrastructure Guide.
-
Pricing Services. This is the specialized business services for generic, complex pricing algorithms (such as spread discount).
When there is a request for pricing (for example, when a user adds a product to a quote or order or selects Reprice All), the application performs the following steps, illustrated in the following figure:
-
The end user action raises a signal, such as the CalculatePriceAll signal. A signal is a parameterized call to a business service or workflow process. For more information about signals, see Siebel Order Management Infrastructure Guide.
-
The signal calls the controlling workflow process. To continue the previous example, the CalculatePriceAll signal calls the PSP Driver Workflow process. For more information about this workflow process, see Pricing Procedures and Workflow References.
-
The controlling workflow process uses variable maps to build the Context Row Set (header information) and Line Item Row Set (line item information).
-
The variable maps that build the row sets needed for pricing are identified in the definition of the signal invoked by the end user’s action. To continue the previous example, the Default Pricing Variable Map - Context and Default Pricing Variable Map - Row Set are specified as parameters to the PSP Driver Workflow process in the CalculatePriceAll Signal.
-
Variable maps build the row sets by mapping fields in the database to the variables for the row set. For more information about variable maps, see Siebel Order Management Infrastructure Guide.
-
-
The controlling workflow process invokes a pricing procedure.
-
The pricing procedure invoked is identified in the definition of the signal invoked by the end user’s action. To continue the previous example, the Dynamic Pricing Procedure workflow is specified in the SubPSPWFName parameter to the PSP Driver Workflow process in the CalculatePriceAll Signal.
-
The controlling workflow passes the Context Row Set and Line Item Row Set to the pricing procedure. For more information about controlling workflows and pricing procedures, see Siebel Order Management Infrastructure Guide.
-
-
The pricing procedure applies pricing logic to the data in the row sets.
-
To continue the previous example, for each line item in the line item row set, the Dynamic Pricing Procedure finds a starting price, executes a series of steps that may or may not adjust the net price, and outputs the final price.
-
The Dynamic Pricing Procedure passes the transformed Row Set back to the PSP Driver Workflow process. For detailed information about pricing procedures, see Pricing Procedures and Workflow References.
-
-
The Context Service updates the calling object (such as the quote or order) with the adjusted prices, and those prices appear in the end user interface.
Pricing Procedures and Workflow References
To price products, Siebel Pricer uses the following workflows and pricing procedures:
PSP Driver Workflow Process Workflow
The PSP Driver Workflow Process is the beginning of all pricing operations and other features. For information about this workflow, see Siebel Order Management Infrastructure Guide.
Basic Pricing Procedure Workflow
The Basic Pricing Procedure workflow, as shown in the following figure, provides basic pricer license functionality where the list price, volume discounts, and service pricing are supported.
Workflow Description
This workflow does the following:
Stamps error codes by checking for various conditions on the Price list.
From the error codes stamped in step 2, branches out to the different actions listed in step 4.
Does the following:
Raises Expired Error
Raises Not Expired Error
Calculates the quantity of each component in a customizable product instance, and rolls down the price list ID and promotion ID from the root.
Determines the price action code based on the item’s Action Code and Price Type.
Using the Simple Look-up Transform business service, searches for the correct price list and stamps various price fields on the line item.
Gets Root Price List Item Id|Start = List|Net = Start.
Splits Unpriced Actions.
Note: Do not price line items with Skip Pricing Flag = 'Y'.Splits service and nonservice line items so they can be priced separately.
Note: In this Pricing Procedure, products and service products need to be split and handled differently. Service procedures are services that are tied to products, for example, a maintenance service on a car. The pricing of a service is tied to the product it covers. Later in the this workflow, steps named " XXX service Pricing" will consume the Service Product Row Set.Applies the volume discount adjustment that matches the quantity on the line item.
Finds out the upsell discount information.
Applies tiered volume discounts to the net price.
Finds out the tiered upsell discount information.
Forces the net price to be within the minimum and maximum values defined in the price list item.
Sets the manual adjustment and applies line item and header-level manual discounts.
Sets the pricing adjustment. Before adjustments and discounts, the Net Price = Start Price.
Updates the net price for any covered products that were repriced.
Looks up the list price information for covered products.
Calculates the start price for the service product by applying the percentage in the price list item to the net or start price of the covered product.
Before adjustments and discounts, ensures that the Net Price = Start Price.
Applies the volume discount adjustment that matches the quantity on the line item.
Determines the upsell discount information.
Applies tiered volume discounts to the net price.
Determines the tiered upsell discount information.
Applies line item and header-level manual discounts.
Merges service and nonservice line items.
Merges unpriced line items.
Gets the MPT Prices and the NRC and MRC price components.
Spreads discounts from bundle product root to subcomponents.
Calculates the total extended price of the customizable product, including all subcomponents.
The following table lists the steps in the Basic Pricing Procedure with the business service and method that is called by each.
Name Type Business Service Method Sub Process Description Check Header Price List
Business Service
Row Set Transformation Toolkit Service
Query Transform
Not applicable
Stamps error codes by checking for various conditions on the Price list.
Price List Error
Not applicable
Not applicable
Not applicable
Not applicable
From the error codes stamped in step 1, branches out to different actions in the next step.
Raise Expired Error
Business Service
Pricing Manager
Raise Price List Expired Error
Not applicable
Halts execution and provides an error message to the user if the header Price List is expired.
Raise Not Effective Error
Business Service
Pricing Manager
Raise Price List Not Effective Error
Not applicable
Halts execution and provides an error message to the user if the header Price List is not yet effective.
Customizable Product Roll-Down
Business Service
Row Set Transformation Toolkit Service
Hierarchical Transform
Not applicable
Calculates the quantity of each component in a customizable product instance. Rolls down the price list ID and promotion ID from the root.
Determine Price Action
Not applicable
Not applicable
Not applicable
Not applicable
Determines the price action code based on the item Action Code and Price Type.
Get List Price
Business Service
Row Set Transformation Toolkit Service
Hierarchical Transform
Not applicable
Gets the list price for each row in the row set. Appends other values from the price list item Buscomp to the row.
Get Root Price List Item Id|Start = List|Net = Start
Not applicable
Not applicable
Not applicable
Not applicable
Not applicable
Split Unpriced Actions
Business Service
Row Set Transformation Toolkit Service
Split
Not applicable
Moves service products from the row set into another row set for use in the service pricing subprocedure.
Split Service Products
Business Service
Row Set Transformation Toolkit Service
Not applicable
Not applicable
Splits service and nonservice line items so they can be priced separately. (Note: Later in the workflow, steps named " XXX service Pricing" would consume the Service Product Row Set).
Simple Volume Discount for Keep Price <> Y
Not applicable
Not applicable
Not applicable
Not applicable
Applies the volume discount adjustment that matches the quantity on the line item.
Split Service Products
Business Service
Row Set Transformation Toolkit Service
Not applicable
Not applicable
Splits service and nonservice line items so they can be priced separately. (Note: Later in the workflow, steps named " XXX service Pricing" would consume the Service Product Row Set).
Simple Volume Discount for Keep Price <> Y
Not applicable
Not applicable
Not applicable
Not applicable
Applies the volume discount adjustment that matches the quantity on the line item.
Simple Volume Discount Upsell for Keep Price <> Y
Not applicable
Not applicable
Not applicable
Not applicable
This is a step to find out upsell discount information.
Tiered Volume Discount for Keep Price <> Y
Not applicable
Not applicable
Not applicable
Not applicable
Applies tiered volume discounts to the Net Price.
Tiered Volume Discount Upsell for Keep Price <> Y
Not applicable
Not applicable
Not applicable
Not applicable
This is a step to find out tiered upsell discount information.
Check Min or Max Price for Keep Price <> Y
Not applicable
Not applicable
Not applicable
Not applicable
Forces the Net Price to be within the Minimum and Maximum defined in the price list item.
Manual Adjustment
Not applicable
Not applicable
Not applicable
Not applicable
Applies line item and header-level manual discounts.
Set Pricing Adjustment
Business Service
Row Set Transformation Toolkit Service
Split Transform
Not applicable
Before adjustments and discounts, Net Price = Start Price.
Update Covered Product Net Prices
Business Service
Row Set Transformation Toolkit Service
Row Set
Lookup Transform
Not applicable
Updates the net price for any covered products that were repriced.
Get Covered Product List Price
Not applicable
Not applicable
Not applicable
Not applicable
Looks up list price information for the covered product.
Update Covered Product Net Prices
Business Service
Row Set Transformation Toolkit Service
Row Set
Lookup Transform
Not applicable
Updates the net price for any covered products that were repriced.
Get Covered Product List Price
Not applicable
Not applicable
Not applicable
Not applicable
Looks up list price information for the covered product.
Calculate Covered Product Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Calculates the Start Price for a service product by applying the percentage in the price list item to the Net or Start Price of the covered product.
Net = Start:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Before adjustments and discounts, Net Price = Start Price.
Update Covered Product Net Prices
Business Service
Row Set Transformation Toolkit Service
Row Set
Lookup Transform
Not applicable
Updates the net price for any covered products that were repriced.
Get Covered Product List Price
Not applicable
Not applicable
Not applicable
Not applicable
Looks up list price information for the covered product.
Calculate Covered Product Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Calculates the Start Price for a service product by applying the percentage in the price list item to the Net or Start Price of the covered product.
Net = Start:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Before adjustments and discounts, Net Price = Start Price.
Simple Volume Discount for Keep Price <> Y:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Applies the volume discount adjustment that matches the quantity on the line item.
Simple Volume Discount Upsell for Keep Price <> Y:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
This is a step to find out upsell discount information.
Tiered Volume Discount for Keep Price <> Y:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Applies tiered volume discounts to the Net Price.
Tiered Volume Discount Upsell for Keep Price <> Y:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Tiered Volume Discount Upsell for Keep Price <> Y:Service Price.
Check Min or Max Price for Keep Price <> Y:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Forces the Net Price to be within the Minimum and Maximum defined in the price list item.
Simple Volume Discount for Keep Price <> Y:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Applies the volume discount adjustment that matches the quantity on the line item.
Manual Adjustment:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Applies line item and header-level manual discounts.
Set Pricing Adjustment:Service Price
Not applicable
Not applicable
Not applicable
Not applicable
Before adjustments and discounts, Net Price = Start Price.
Merge Service Products
Business Service
Row Set
TransformationToolkit Service
Merge Transform
Not applicable
Merges service and nonservice line items.
Merge Unpriced Actions
Business Service
Row Set
TransformationToolkit Service
Hierarchical Transform
Not applicable
Merges the priced and unpriced row sets into one.
Get MPT Prices
Business Service
Row Set
TransformationToolkit Service
Conditional Action Transform
Not applicable
Gets NRC and MRC price components.
Roll-Down Bundle Prices
Business Service
Row Set
Transformation Toolkit Service
Hierarchical Transform
Not applicable
Spreads the discount from the bundle product root to subcomponents.
Customizable Product Roll-Up
Business Service
Row Set
Transformation Toolkit Service
Hierarchical Transform
Not applicable
Calculates the total extended price of the customizable product including all subcomponent.
Dynamic Pricing Procedure Workflow
The Dynamic Pricing Procedure workflow, as shown in the following figure, provides the advanced pricing capabilities. It contains steps and subprocedures that populate the List Price, Start Price, and Net Price fields. It also calculates the monthly recurring and nonrecurring subtotals for root Customizable Products. These prices and subtotals are calculated based on information from price lists, customizable product adjustments, volume discounts, attribute adjustments, aggregate discounts, service price details, product promotions, and manual discounts.
Workflow Description
This workflow does the following:
Checks for price list effectivity. The application will throw any error if the price list is not yet effective or has expired.
Calculates the extended quantity of all component products of a CP instance. Also, it carries over some useful information from the CP root to CP components for later use.
Gets the list price for each row in the row set, and appends other values from the Price List Item Buscomp to the row.
Puts the CP Root Price List Item Id on each component of the CP for later use.
Moves those rows with an action code that are not priced to another row set that will not be priced throughout the procedure.
Gets CP Pricing Designer adjustments for components of a CP.
Initializes the start price value as the list price value.
Applies attribute adjustments to the start price and throws an error when an invalid combination for attribute pricing occurs.
Moves service products from the row set into another row set for use in the service pricing subprocedure.
Calls subprocedure Pricing Procedure - Calculate Net Price for nonservice products.
Updates the covered product net price field on the service product rows in the row set.
Calls subprocedure Pricing Procedure – Service to handle the service product-specific pricing for service products.
Calls subprocedure Pricing Procedure - Calculate Net Price for service products.
Merges the service and nonservice row sets into one row set.
Establishes the NRC and MRC prices for one-time and monthly recurring price types, which will later be used for Customizable Product Rollup.
Merges the priced and unpriced row sets into one row set.
Spreads the discount of the root bundle products to the bundle component products.
Rolls up the prices of component products to the CP root.
The following table lists the steps in the Dynamic Pricing Procedure workflow with the business service and method that is called by each step.
Name Type Business Service Method Sub Process Description Check Header Price List
Business Service
Row Set Transformation Toolkit Service
Query Transform
Not applicable
Determines if the header price list is expired or not yet effective.
Raise Expired Error
Business Service
Pricing Manager
Raise Price List Expired Error
Not applicable
Halts execution and provides an error message to the user if the header Price List is expired.
Raise Not Effective Error
Business Service
Pricing Manager
Raise Price List Not Effective Error
Not applicable
Halts execution and provides an error message to the user if the header Price List is not yet effective.
Customizable Product Roll-Down
Business Service
Row Set Transformation Toolkit Service
Hierarchical Transform
Not applicable
Calculates the quantity of a component product of a CP instance.
Get List Price
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Gets the list price for each row in the row set. Appends other values from the price list item Buscomp to the row.
Get Root Price List Item Id
Business Service
Row Set Transformation Toolkit Service
Hierarchical Transform
Not applicable
Puts the CP root price list item ID on each component of the CP for later use.
Split Unpriced Actions
Business Service
Row Set Transformation Toolkit Service
Split Transform
Not applicable
Moves those rows with an action code that are not priced to another row set that will not be priced throughout the procedure.
Customizable Product Adjustment
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Gets CP adjustments for components of a CP.
Start = List
Business Service
Row Set Transformation Toolkit Service
Conditional Action Transform
Not applicable
Initializes the start price value as the list price value.
Matrix Adjustment
Business Service
Row Set Transformation Toolkit Service
Dynamic Lookup Transform
Not applicable
Applies attribute adjustments to the start price.
Invalid Combination?
Decision Point
Not applicable
Not applicable
Not applicable
Determines if there was an invalid combination for the attribute pricing matrix.
Display Invalid Combination Error
Business Service
Dynamic Matrix Retrieval Service
Throw Invalid Combination Error
Not applicable
Halts execution of procedure and throws an error when an invalid combination for attribute pricing occurs.
Split Service Products
Business Service
Row Set Transformation Toolkit Service
Split
Not applicable
Moves service products from the row set into another row set for use in the service pricing subprocedure.
Discount Non Service Products
Sub Process
Not applicable
Not applicable
Pricing Procedure – Calculate Net Price
Not applicable
Update Covered Product Net Prices
Business Service
Row Set Transformation Toolkit Service
Row Set Lookup Transform
Not applicable
Updates the covered product net price field on the service product rows in the row set.
Price Service Products
Sub Process
Not applicable
Not applicable
Pricing Procedure – Calculate Net Price
Prices the service product row set.
Discount Service Products
Sub Process
Not applicable
Not applicable
Pricing Procedure – Service
Service Pricing.
Merge Service Products
Business Service
Row Set Transformation Toolkit Service
Merge Transform
Not applicable
Merges the service and nonservice row sets into one.
Get MPT Prices
Business Service
Row Set Transformation Toolkit Service
Conditional Action Transform
Not applicable
Establishes the NRC and MRC prices for One-Time and Monthly Recurring price types.
Merge Unpriced Actions
Business Service
Row Set Transformation Toolkit Service
Merge Transform
Not applicable
Merges the priced and unpriced row sets into one.
Roll-down bundle prices
Business Service
Row Set Transformation Toolkit Service
Hierarchical Transform
Not applicable
Spreads the discount of the root bundle products to the child products.
Customizable Product Roll-ups
Business Service
Row Set Transformation Toolkit Service
Hierarchical Transform
Not applicable
Rolls up the prices of component products to the CP root.
Pricing Procedure - Calculate Net Price Workflow
The Pricing Procedure - Calculate Net Price workflow, as shown in the following figure, is responsible for the net price calculation, which takes into account volume discount, aggregate discount sequence, product promotion, manual adjustment and minimum or maximum price bound checks.
Workflow Description
This workflow does the following:
Initializes the net price value as the start price value.
Queries in FS Product Price Item Details Buscomp for any covered asset service pricing adjustment.
Moves those rows with the Exclude Pricing flag set to another the Keep Price Row Set row set. This will skip all Siebel-Pricer-generated discounts throughout the procedure.
Applies a manual adjustment (discount amount, discount percentage, discount price and header discount percentage) for the row set with Exclude Pricing flag Set.
Sets the pricing adjustment that indicates the total amount of Siebel-Pricer-generated discount accounts for the row set with Exclude Pricing flag = Y.
Evaluates simple and tiered volume discount. This would also populate the next discount and upsell message for upsell purposes.
Evaluates product promotion discounts.
Calls the Pricing Procedure - Bundle Discount subprocedure to evaluate the aggregate discount sequence.
Checks whether the current net price is within the boundary of the minimum and maximum price.
Applies a manual adjustment (discount amount, discount percentage, discount price and header discount percentage).
Sets the pricing adjustment that indicates the total amount of Siebel-Pricer-generated discount accounts.
Merges the two row sets generated from the Keep Price = Y? back into one row set.
The following lists the steps of the Pricing Procedure - Calculate Net Price workflow with the business service and method that is called by each step.
Name Type Business Service Method Sub Process Description Net = Start
Business Service
Row Set Transformation Toolkit Service
Conditional Action Transform
Not applicable
Initializes the Net Price value as the Start Price value.
Calculate Covered Asset Service Price
Business Service
Row Set Transformation Toolkit
Simple Look-Up Transform
Not applicable
Queries in FS Product Price Item Details Buscomp for any covered asset service pricing adjustment.
Keep Price = Y?
Business Service
Row Set Transformation Toolkit
Split Transform
Not applicable
Moves those rows with Exclude Pricing Flag set to another row set, the Keep Price Row Set row set. For these, all Siebel-Pricer-generated discounts will be skipped throughout the procedure.
Manual Adjustment for Keep Price = Y
Business Service
Row Set Transformation Toolkit Service
Conditional Action Transform
Not applicable
Applies Manual Adjustment for Keep Price Row Set row set.
Set Pricing Adj for Keep Price = Y
Business Service
Row Set Transformation Toolkit Service
Conditional Action Transform
Not applicable
Sets the Pricing Adjustment that indicates the total amount of Siebel-Pricer-generated discounts for the Keep Price Row Set row set.
Simple Volume Discount
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Evaluates Simple Volume Discount.
Simple Volume Discount Upsell
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Populates Simple Volume Discount Upsell information.
Tiered Volume Discount
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Evaluates Tiered Volume Discount.
Tiered Volume Discount Upsell
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Populates Tiered Volume Discount Upsell information.
Look-Up Promotion Discount
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Checks whether a promotion discount is defined.
Apply Promotion Discount
Business Service
Row Set Transformation Toolkit
Conditional Action Transform
Not applicable
Applies the Promotion Discount found in the previous step.
Apply Bundle Discounts
Sub Process
Not applicable
Not applicable
Pricing Procedure - Aggregate Discounts
Invokes a subprocedure for calculating Aggregate Sequence.
Check Min or Max Price
Business Service
Row Set Transformation Toolkit Service
Conditional Action Transform
Not applicable
Ensures that the net price is within the minimum and maximum defined in the price list item.
Manual Adjustment
Business Service
Row Set Transformation Toolkit
Conditional Action Transform
Not applicable
Applies manual adjustment.
Set Pricing Adjustment
Business Service
Row Set Transformation Toolkit Service
Conditional Action Transform
Not applicable
Sets the pricing adjustment, which is the total amount of Siebel-Pricer- generated discounts.
Merge Keep Price = Y
Business Service
Row Set Transformation Toolkit
Merge Transform
Not applicable
Merges back the Keep Price Row Set row set.
Pricing Procedure - Aggregate Discounts Workflow
The Pricing Procedure - Aggregate Discounts workflow, as shown in the following figure, is the subprocedure that evaluates the Aggregate Discount Sequence adjustment. The workflow first aggregates quantities for each product across line items. It then checks whether there are possible aggregate discounts set up by examining the price list on both the header and line item level.
The workflow then compares the aggregate discount with the product quantity aggregation it has evaluated earlier to see whether it qualifies for any discounts.
Workflow Description
This workflow does the following:
Groups line items by Product ID and performs a quantity aggregation. The result of this operation is a property set with Product ID and corresponding aggregated quantities.
Uses Query Transformation to check if there is an Aggregate Discount Sequence associated with the price list from the header, and whether that Aggregate Discount Sequence is effective. If all conditions are met, then the list of IDs of all the aggregate discounts under that sequence would be stored in a property set.
This step is similar to the previous one except that it examines the Price List association of the line item. The IDs of all the possible aggregate discounts would be appended to the previously mentioned property set.
Using Rule Set Lookup Transformation and the information from previous steps, it identifies which of the possible aggregate discounts are satisfied along with the corresponding multiplier for each aggregate discount. This information is used as input to the next step.
Using Rule Set Lookup Transformation and the information from previous steps, it applies adjustments defined in the applicable aggregate discounts and put that on each of the line item. Line items having the same product would be ordered by their net price. Line items with a higher net price would have priority over items with a lower net price.
The following table lists the steps in the Pricing Procedure - Aggregate Discounts workflow with the business service and method that is called by each step.
Name Type Business Service Method Sub Process Description Sum Product Quantity
Business Service
Row Set Transformation Toolkit
Aggregate Transform
Not applicable
Sums up quantities of line items by Product ID.
Get Possible Bundles (Price List)
Business Service
Row Set Transformation Toolkit Service
Query Transform
Not applicable
Checks for the Aggregate Discount Sequence associated with the Price List from the Header.
Get Possible Bundles (Row)
Business Service
Row Set Transformation Toolkit Service
Simple Look-Up Transform
Not applicable
Checks for the Aggregate Discount Sequence associated with the Price Lists from the Line Items.
Identify Applicable Bundles
Business Service
Row Set Transformation Toolkit Service
Rule Set Look-Up Transform
Not applicable
Identifies applicable Aggregate Discounts and corresponding Multiplier.
Apply Bundle Adjustments
Business Service
Row Set Transformation Toolkit Service
Rule Set Look-Up Transform
Not applicable
Applies the adjustments defined in aggregate discounts.
Pricing Procedure - Service Workflow
The Pricing Procedure - Service workflow, as shown in the following figure, adjusts the start prices for service products by taking account their covered products and primary covered assets.
Workflow Description
This workflow does the following:
Looks up list price information for covered products.
Calculates the start price for a service product by applying the percentage in the Price List Item Buscomp to the net price or start price of the covered product.
The following table lists the steps in the Pricing Procedure - Service workflow with the business service and method that is called by each step.
Name | Type | Business Service | Method | Sub Process | Description |
---|---|---|---|---|---|
Get Covered Product List Price |
Business Service |
Row Set Transformation Toolkit Service |
Simple Look-Up Transform |
Not applicable |
Looks up list price information for the covered product. |
Calculate Covered Product Service Price |
Business Service |
Row Set Transformation Toolkit Service |
Simple Look-Up Transform |
Not applicable |
Calculates the Start Price for a service product by applying the percentage in the Price List Item to the Net Price or Start Price of the covered product. |
Switching from Basic to Dynamic Pricing Procedure
It is possible to switch from the Basic Pricing Procedure to the Dynamic Pricing Procedure, depending on your requirements.
The Basic Pricing Procedure is enabled out of the box. It does the following:
Duplicates the 7.7 basic pricer license functionality where only the list price, volume discounts, and service pricing are supported.
Uses the variable maps that do not contain the XA child variable maps.
The Dynamic Pricing Procedure is not enabled for out of the box execution. It does the following:
Uses the variable maps that contain the XA child variable maps.
Provides complete pricing capabilities such as attribute pricing, promotions, aggregate discounts and so on.
You can either manually enable the Dynamic Pricing Procedure for standard signals as required, or you can automatically enable the Dynamic Pricing Procedure for all signals, as described in the following procedure.
To switch from the Basic Pricing Procedure to the Dynamic Pricing Procedure
-
Make sure that you have the Dynamic Pricer license.Note: Before proceeding any further, it is recommended that you familiarize yourself with the Dynamic Pricing Procedure, as described in Dynamic Pricing Procedure Workflow.
Do one of the following:
Manually enable the Dynamic Pricing Procedure for appropriate standard signals:
For information about how to manually enable dynamic pricing for a signal, see Manually Enabling the Dynamic Pricing Procedure.
For a list of the standard signals that can be manually modified for dynamic pricing, including the parameters in each signal that must be modified, see Manual Signal Modifications for Siebel Business Applications and Industry Applications.
Automatically enable the Dynamic Pricing Procedure for all pricing signals:
Navigate to the Administration - Pricing screen, then Price Lists view in your Siebel Business Application.
Click Menu, and then select Enable Dynamic Pricing.
A message dialog displays confirming that Dynamic Pricing is enabled.
Doing this automatically makes the appropriate changes to all standard signal definitions.
You can extend the list of signals to which Dynamic Pricing applies as described in Extending the List of Signals to which Dynamic Pricing Applies.
Extending the List of Signals to which Dynamic Pricing Applies
Extending the list of signals to which Dynamic Pricing applies involves adding a new signal that has been configured for dynamic pricing, so that it automatically gets enabled for dynamic pricing when the Enable Dynamic Pricing option is selected from the Applet Menu.
Complete the steps in the following procedure to extend the list of signals to which Dynamic Pricing applies.
To extend the list of signals to which dynamic pricing applies
In Web Tools, open a workspace and then navigate to Object Explorer.
For more information on using the workspace dashboard, see Using Siebel Tools.
Select Business Service in the Object Explorer and search for the Signal Modify Service business service.
Under the Business Service User Properties, add a new user property to the Business Service.
This new user property must correspond to the Signal that you want to enable dynamic pricing for. For example, to enable dynamic pricing for a Signal named TestSignal:
Under the Business Service User Properties, search for Signal *.
Add a new record and name it Signal *, where * corresponds to the next consecutive number.
For example, if the highest Signal * User Property is Signal 24, then create a new user property called Signal 25.
Specify the Signal name as the User Property Value, consider this example in the following table, TestSignal:
User Property Name User Property Value Signal 25
TestSignal
Under the Business Service User Properties, add another new record and specify the signal parameters to change to implement dynamic pricing for that signal.
For example, the following table lists the User Properties that you can create under the Signal Modify Service Business Service in order to enable dynamic pricing for a signal called TestSignal.
User Property Name User Property Value TestSignal 1
SubPSPPricingWFName:Dynamic Pricing Procedure
TestSignal 2
Variable Map - Row Set:Default Pricing Variable Map - Row Set
The User Property Value corresponds to the Signal Parameter that you want to change, and is a combination of the Signal Parameter Name (for example, SubPSPPricingWFName) and the Signal Parameter Value (for example, Dynamic Pricing Procedure) with a colon (:) separating them. For example:
SubPSPPricingWFName:Dynamic Pricing Procedure
Continue to add more records, as necessary, specifying the signal parameters to change to implement dynamic pricing for the signal. For each new record, be sure to increase the numeric value after the Signal name (TestSignal 3, TestSignal 4, and so on).
Deliver the Business Service to the Siebel runtime repository, and apply it to the server.
Restart the server.
Modifying Signals from Basic Pricing Procedure to Dynamic Pricing Procedure
The Siebel Business Application executes the Basic Pricing Procedure. In order to leverage the Dynamic Pricing Procedure, you need to obtain a Dynamic Pricer license and either:
Automatically enable the Dynamic Pricing Procedure for all signals, as described in Step 2b of Switching from Basic to Dynamic Pricing Procedure.
-
Or, manually modify several signal definitions as detailed in the following topics:Note: If you automatically enable the Dynamic Pricing Procedure for all signals as described in Step 2b of Switching from Basic to Dynamic Pricing Procedure, then you do not need to make any changes to the signal definitions, and can ignore the following tasks:
Manual Signal Modifications for Siebel Business Applications and Industry Applications
Manual Signal Modifications for Communications, Media and Energy Applications
Manually Enabling the Dynamic Pricing Procedure
Manually enabling the Dynamic Pricing Procedure involves modifying several of the standard signals. Complete the following procedure to manually enable dynamic pricing for each standard signal.
To manually enable the Dynamic Pricing Procedure
In the Siebel client, navigate to the Administration – Order Management screen, then the Signals view.
Check the Locked flag in the Signals list applet, then drill down on the Work Space version of the signal.
Modify the parameters listed for the specified signal actions. If more than one action is listed, then modify the parameters for all actions listed.
Manual Signal Modifications for Siebel Business Applications and Industry Applications lists the standard signals that must be modified, including the parameters in each signal that must be modified, to enable dynamic pricing for your Siebel Business Application.
After modifying the signal definition, you need to release the updated signal as follows:
Return to the Signals list applet
Highlight the modified signal record highlighted
Click the Release New Version button.
You will need to log out and log back into the Siebel client to test the updated signal.
For additional details about using signals, see Siebel Order Management Infrastructure Guide.
Manual Signal Modifications for Siebel Business Applications and Industry Applications
This topic lists the manual signal modifications required to implement dynamic pricing for Siebel Business Applications and Industry Applications. For each signal definition, you can modify the parameters of the actions listed. If multiple actions are listed for the signal, then make sure that you modify the parameters for each of the actions listed.
CalculatePriceAndCheckEligibility
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePriceAndCheckEligibility signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
- |
- |
Name | Value |
---|---|
SubPSPPricingWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Eligibility Variable Map - Row Set |
QuotesAndOrdersValidate
The following tables describe the signal actions and list the parameters that you must modify to implement dynamic pricing for the QuotesAndOrdersValidate signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Order |
Header |
Workflow |
PSP Driver Workflow Process |
Order |
Line Item |
|
Workflow |
PSP Driver Workflow Process |
Quote |
Header |
|
Workflow |
PSP Driver Workflow Process |
Quote |
Line Item |
Name | Value |
---|---|
SubPSPPricingWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Eligibility Variable Map - Row Set |
Verifyitem
The following tables describe the signal actions and list the parameters that you must modify to implement dynamic pricing for the Verifyitem signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Agreement |
Header |
Workflow |
PSP Driver Workflow Process |
Order |
Header |
|
Workflow |
PSP Driver Workflow Process |
Order |
Header |
Name | Value |
---|---|
SubPSPPricingWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Eligibility Variable Map - Row Set |
ProductRecommendation
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the ProductRecommendation signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
Product Recommendation Driver Workflow |
Not applicable |
Line Item |
Name | Value |
---|---|
SubPSPPricingWFName |
Dynamic Pricing Procedure |
CalculatePriceExternal
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the CalculatePriceExternal signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Business Service |
RunPricerWorkflow |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPPricingWFName |
Dynamic Pricing Procedure |
SpreadDiscount
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the SpreadDiscount signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
Spread Discount Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPPricingWFName |
Dynamic Pricing Procedure |
SpreadDiscount - All
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the SpreadDiscount - All signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
Spread Discount Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPPricingWFName |
Dynamic Pricing Procedure |
Approveitem
The following tables describe the signal actions and list the parameters that you must modify to implement dynamic pricing for the Approveitem signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Agreement |
Header |
Workflow |
PSP Driver Workflow Process |
Order |
Header |
|
Workflow |
PSP Driver Workflow Process |
Quote |
Header |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
CalculatePrice
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePrice signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
CalculatePriceAll
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePriceAll signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Line Item |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
CalculatePrice_eSales
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePrice_eSales signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
CalculatePriceAll_eSales
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePriceAll_eSales signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Line Item |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
CalculatePrice_Configurator
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePrice_Configurator signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
CalculatePrice_Advisor
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePrice_Advisor signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
MergeIntoOnePackage
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the MergeIntoOnePackage signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Line Item |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
OrderTemplate
The following tables describe the signal actions and list the parameters that you must modify to implement dynamic pricing for the OrderTemplate signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Order |
Header |
Workflow |
PSP Driver Workflow Process |
Quote |
Header |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
OrderTemplateCopy
The following tables describe the signal actions and list the parameters that you must modify to implement dynamic pricing for the OrderTemplateCopy signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Order |
Header |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
OrderTemplateSelectItems
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the OrderTemplateSelectItems signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Order |
Header |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
QuoteTemplateCopy
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the QuoteTemplateCopy signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Quote |
Header |
Name | Value |
---|---|
SubPSPPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
QuoteTemplateSelectItems
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the QuoteTemplateSelectItems signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Quote |
Header |
Name | Value |
---|---|
SubPSPPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
SetFieldValue
The following tables describe the signal actions and list the parameters that you must modify to implement dynamic pricing for the SetFieldValue signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Header |
Workflow |
PSP Driver Workflow Process |
Agreement |
Line Item |
|
Workflow |
PSP Driver Workflow Process |
Order |
Line Item |
|
Workflow |
PSP Driver Workflow Process |
Quote |
Line Item |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
GetConfigItemPrice
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the GetConfigItemPrice signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
Get Config Item Price - Driver Workflow |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Get Config Item Price - Dynamic |
GetProdPrice
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the GetProdPrice signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Product Pricing Variable Map - Row Set |
GetUsedProdPrice
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the GetUsedProdPrice signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Dynamic Pricing Procedure |
Variable Map - Row Set |
Product Pricing Variable Map - Row Set |
Manual Signal Modifications for Communications, Media and Energy Applications
This topic lists the manual signal modifications required to implement dynamic pricing for Siebel Communications, Media and Energy (CME) applications.
CalculatePriceCME
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePriceCME signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Not applicable |
Name | Value |
---|---|
SubPSPWFName |
Pricing Procedure - CME |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
CalculatePriceAllCME
The following tables describe the signal action and list the parameters that you must modify to implement dynamic pricing for the CalculatePriceAllCME signal.
Definition | Service Type | Service Name | Mode | Instance Type |
---|---|---|---|---|
Action |
Workflow |
PSP Driver Workflow Process |
Not applicable |
Line Item |
Name | Value |
---|---|
SubPSPWFName |
Pricing Procedure - CME |
Variable Map - Row Set |
Default Pricing Variable Map - Row Set |
SaveWaterfall-Quote
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the SaveWaterfall-Quote signal.
Definition | Service Type | Service Name | Service Method | Mode | Instance Type |
---|---|---|---|---|---|
Action |
Business Service |
PSP Waterfall Service |
SyncToDB |
Not applicable |
Not applicable |
Name | Value |
---|---|
Waterfall Signal |
CalculatePriceAllCME |
SaveWaterfall-Order
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the SaveWaterfall-Order signal.
Definition | Service Type | Service Name | Service Method | Mode | Instance Type |
---|---|---|---|---|---|
Action |
Business Service |
PSP Waterfall Service |
SyncToDB |
Not applicable |
Not applicable |
Name | Value |
---|---|
Waterfall Signal |
CalculatePriceAllCME |
SaveWaterfall-ServiceAgreement
The following tables describe the signal action and list the parameter that you must modify to implement dynamic pricing for the SaveWaterfall-ServiceAgreement signal.
Definition | Service Type | Service Name | Service Method | Mode | Instance Type |
---|---|---|---|---|---|
Action |
Business Service |
PSP Waterfall Service |
SyncToDB |
Not applicable |
Not applicable |
Name | Value |
---|---|
Waterfall Signal |
CalculatePriceAllCME |
Miscellaneous Pricing Workflows
The workflows used for pricing are covered in Pricing Procedures and Workflow References.
The following workflows are used by Siebel Pricer for other purposes:
PSP Dynamic Matrix - Refresh Matrix Cache Workflow
The PSP Dynamic Matrix - Refresh Matrix Cache workflow, as shown in the following figure, clears the cache for the Attribute Adjustment Rules that are internally maintained by the PSP Engine.
This workflow refreshes the Attribute Adjustment cache for the currently highlighted record.
The following table describes the step in the PSP Dynamic Matrix - Refresh Matrix Cache workflow with the business service and method that it calls.
Name | Type | Business Service | Method | Sub Process | Description |
---|---|---|---|---|---|
Refresh Matrix |
Business Service |
Dynamic Matrix Retrieval Service |
Refresh Matrix |
Not applicable |
Refreshes the Attribute Adjustment cache for the current highlighted record. |
PSP Waterfall Synch to DB Workflow
The PSP Waterfall Synch to DB workflow, as shown in the following figure, writes waterfall records to the database according to input from the data map object.
The following table describes the step in the PSP Waterfall Synch to DB workflow with the business service and method that is called.
Name | Type | Business Service | Method | Sub Process | Description |
---|---|---|---|---|---|
Sync Waterfall |
Business Service |
PSP Waterfall Service |
WriteWaterfall |
Not applicable |
Writes waterfall records to database. |
Spread Discount Driver Workflow
The Spread Discount Driver workflow, as shown in the following figure, spreads a discount amount over the specified line items.
Workflow Description
This workflow does the following:
Generates a property set of the Line Item buscomp using Context Service variable maps. For more information, see Siebel Order Management Guide.
Filters out items that will not get a spread discount. By default, only nonrecurring change items are candidates for a spread discount.
Spreads a discount amount depending on the target total or target discount amount specified by the user.
Synchronizes the updated information back to the database.
The following table lists the steps in the Spread Discount Driver workflow with the business service and method that is called for each step.
Name Type Business Service Method Sub Process Description Get Row Set
Business Service
Context Service
GetRowSetData
Not applicable
Generates a property set from the Line Item business component.
Execute Type SearchSpec
Business Service
Row Set Transformation Toolkit
Split Transform
Not applicable
Filters out items that will not get a spread discount.
Spread Discount
Business Service
ISS Spread Discount Service
SpreadDiscount
Not applicable
Spreads a discount amount.
Sync Row Set
Business Service
Context Service
SyncRowSetData
Not applicable
Synchronizes the updated information back to database.