Siebel Order Management Infrastructure Guide > Product Selection and Pricing Engine >

PSP Driver Workflow


A controller workflow is the invocation mechanism for each PSP procedure. The workflow PSP Driver Workflow Process is the default controller workflow. When a signal calls the controlling workflow for a process, it passes the names of the PSP procedures to the PSP Driver Workflow.

NOTE:  PSP Driver Workflow is the default controller workflow, but you can configure your own controller workflow to replace the default if you find that modifications are necessary for your organization's requirements. You configure a controller workflow in the same way that you configure a standard workflow process. You specify the arguments of a controller workflow in the signal definition, so for your custom controller workflow, navigate to the Administration - Order Management screen, then Signals view in order to change this definition. For information on configuring workflow processes, see Siebel Business Process Designer Administration Guide.

Arguments for the default PSP Driver Workflow are shown in Figure 19. PSP Driver Workflow is set as the controller workflow for the signal CalculatePriceAll in the Service Name field of the Actions tab.

Figure 19. Arguments for the PSP Driver Workflow
Click for full size image

The PSP Driver Workflow acts as the controller workflow for the pricing and eligibility PSP procedures. It calls the Context Service to construct a property set named Row Set containing the selected rows from the source object (Quote, Order, Agreement, or Customizable Product). It also calls the Context Service to construct a property set named Context that contains header-level information shared by all rows (for example: Account Type, Credit Score). It then invokes the PSP procedure specified in its input arguments. The PSP procedure updates and returns a new version of Row Set. Finally, the controller workflow instructs the Context Service to save any changes in Row Set back to the source object.

The PSP Driver Workflow is shown in Figure 20.

Figure 20. PSP Driver Workflow Process
Click for full size image

The PSP Driver Workflow does the following:

  1. The application can set the profile attribute SkipToEnd to skip all PSP operations to improve performance. There are two common scenarios for which SkipToEnd can be set:
    • First, when the application is working on a batch of line items and it would be best to defer the PSP operation to the end. For example, with Pricer, the user is adding 50 items from the Add Item applet. It would be best not to call pricing for each item when it is first added, but the PSP Driver Workflow is called because of all the SetFieldValue triggers. Instead, this step allows for just calling Reprice All once for all 50 line items, after all the items are added.
    • Second, when a PSP operation is not required at all. For example, the user deliberately wants to skip pricing.
  2. Asks the Context Service to generate two property sets (row sets): the shared Context and the Row Set containing individual line items. These are representations of the Line Item and Header business components using variable maps. For more information on variable maps, see Variable Maps.
  3. Dispatches to the workflow indicated by the process property PSPWorkflowName. For example, in the event the user selected RepriceAll, this step dispatches to the Pricing Procedure - Default workflow to perform all pricing operations.
  4. Synchronizes the updated PSP information back to the input data source (Quote, Order, Agreement, or Customizable Product). The synchronization can be skipped by setting the Sync process property.

Table 8 provides a list of the steps in the PSP Driver Workflow Process, showing also the business service and method called by each step.

Table 8. PSP Driver Workflow Process Steps
Step Name
Type
Business Service
Method
Description

Skip to End?

Decision Point

 

 

Application can set the profile attribute SkipToEnd to skip all pricing operations.

Get Context Row Set

Business Service

Context Service

GetRowSetData

Generate the Context Property Set which represents the Header Buscomp.

Get Row Set

Business Service

Context Service

GetRowSetData

Generate the Row Set Property Set which represents the Line Item Buscomp.

Dispatch Service

Business Service

ISS PSP Dispatch Service

CallPSPWorkflow

Dynamically dispatch to a sub-process.

Need to Sync?

Decision Point

 

 

A user decision point of whether synchronization is needed.

Sync Row Set

Business Service

Context Service

SyncRowSetData

Synchronizes information back to data sources using Context Service.

Siebel Order Management Infrastructure Guide Copyright © 2008, Oracle and/or its affiliates. All rights reserved. Legal Notices.