Siebel Order Management Infrastructure Guide > Asset-Based Ordering Methods Reference > Product Manipulation Toolkit Business Service Methods >

Delta Method


This method is one of the Product Manipulation Toolkit Business Service Methods. It generates the actions necessary to change an existing product with components (asset) into a new product with components. The set of actions can be written to a quote or an order.

Delta compares two complex assets (original and modified) and returns a quote or order. The return contains line items that specify the actions required to change the asset from the original state to the final state.

NOTE:  An update occurs if a field in the product or any of its attributes changes. The list of fields being compared is defined by the Delta Line Item Compare Field user properties. This list of fields is configurable to support customer extensions to the database.

Arguments
Argument
Description

SiebelMessage

[in] Hierarchical property set containing the final Asset (output returned from call to PMT business service method Reconfigure Product Instance Method).

SiebelMessage

[out] Hierarchical property set containing a quote or order header, complex line items, and attributes.

SplitQtyChange

[in] Value is N. Controls whether a new line item is created upon an increase in the quantity of an asset component. This argument is optional. By default the component line item is split.

Returns

Property Set containing the complex quote or order.

Remarks

Because Delta is used frequently, the following additional information about the method is useful:

User Properties

The Delta method uses the following user properties:

  • Asset Integration Object Name
  • Quote Integration Object Name
  • Order Integration Object Name
  • Delta Line Item Compare Field
  • Delta XA Compare Field
  • Delta Old Field
  • Delta XA Old Field
  • Line Item Map
  • Attribute Item Map
  • Alias Action Code

For descriptions of these user properties, see User Properties Used by PMT Methods.

Before Invocation

Before Delta is invoked, the system must call two other methods:

  • Set Product Instance

    Saves the original asset's configuration before the Product Configurator is called. For more information, see Reconfigure Product Instance Method.

  • Set Output Header

    Saves the quote or order header that will be the Delta output. If a line item or attribute is associated with the Quote or Order property set, it is stripped from the property set returned by the Delta method. For more information, see Set Output Header Method.

Processing

During Delta processing, the method:

  • Compares the before and after images to determine the correct action codes for output.
  • Passes all fields in the new customizable asset through to the delta quote or delta order. This includes all custom fields.

Delta compares a user-configurable set of fields. This includes the parent component ID to make sure that changes to the product with components structure are reflected as an update.

Increasing Quantities of an Asset Component

If the user edits a customizable asset and increases the quantity of an existing component, the result is two line items. The first line item represents the original asset. The second line item adds new copies of that asset. If the original line item is changed, the Delta action is Update or NULL.

Action Field in the Quote and Order Attribute Tables

Delta logic populates an Action field in the quote attribute and order attribute tables. This field allows order provisioning logic to determine which of the attributes of a service product has changed.

For example, a delta quote can be represented as shown in Figure 40. In this example, the call forwarding number changed but the number of rings did not.

Figure 40. Action on Attribute Method Example
Click for full size image
Action Codes Reset Upon Delta Line Item or Attribute Changes

When a delta-enabled field in a line item changes (because of direct user input or a process such as repricing) or an attribute of a line item changes, the action code is automatically set. This is shown in Table 37.

Table 37. Line Item Action Code Transitions
Original Action
New Action

None

Update

Add

Add

Update

Update

Delete

Delete

NOTE:  Make the Action field Read-Only to avoid possible violations of configuration rules that could be caused by changing the action code of a line item.

Alias Action Codes

The Delta method has been extended to support Alias Action Codes. Delta replaces one of the standard action codes (Add, Update, Delete, -) with an alias action code if a certain condition is met. For example, an action code of Update may be replaced by Suspend if the status field changes from Active to Suspended. Alias action codes are evaluated for components but not attributes. Alias action codes are specified by the Alias Action Code user properties.

Old Value Support

When performing a modify order in Siebel Customer Order Management versions prior to 7.7, you can view the changes made to a product but only the end state, and values prior to the modify are lost. Downstream provisioning systems require both the prior and current values. For example, a change in bandwidth from 56K to 1024K might require a new piece of equipment to be installed at the wire center whereas a change form 2048K to 1024K is simply a downgrade using the existing equipment.

The Delta method has been extended to store the values of fields prior to their being changed. The prior value is the value of the field in the initial property set being considered by Delta.

Service Item Unique Keys (Asset Integration Id)

The Delta and Apply method operations depend upon the unique keys to each service item. Typically, the unique key is an invariable combination of fields in the service item record. Because no combination of user-entered fields is certain to be unique or invariable, the Siebel application provides a hidden Asset Integration Id field that stores a unique identifier for each service item.

The asset integration ID links the service item to the quotes and orders that modify it. On creation of a quote to add a new service item a new asset integration ID is generated from the row ID of the quote line item The quote is converted to an order at which time a new asset integration ID is generated from the row ID of the order line item. This occurs only if the action code of the quote line item is 'Add' to enforce uniqueness if multiple orders are created from the same quote.

When the completed order is converted into an asset the asset integration ID is copied from the order line item to asset. When the asset is subsequently modified (Modify or Disconnect) the asset integration ID is copied to the quote and order line items.

Action Types

Each action types is implemented as a soft-coded list of values. This soft coding supports a multilingual user interface and allows for industry specific terminology. The action types supported by the Siebel application are listed in Table 38.

Table 38. Action Types
Action Type
Comments

Add

None

Update

None

Delete

None

None

No action

Examples

Review the following Delta method examples:

Generating a Delta Quote to Update an Asset

The following example shows how this method generates a delta quote to update an asset.

  1. A configuration session starts with the GCI One Bundle in the state shown in the diagram that follows.
    Click for full size image
  2. A CSR updates the customizable asset, as in the diagram that follows.
    Click for full size image
  3. The Delta method generates the delta quote shown in the diagram that follows.
    Click for full size image
Generating a Delta Quote to Add a New Asset

The following example shows how this method generates a delta quote to add a new asset.

  1. A configuration session starts with no existing asset. The user configures a new customizable product, as in the diagram that follows.
    Click for full size image
  2. The Delta method generates the following delta quote.
Generating a Delta Quote to Disconnect an Asset

The following example shows how this method generates a delta quote to disconnect an asset.

  1. The user selects a customizable asset in the service profile view, as in the diagram that follows.
    Click for full size image
  2. The user clicks Disconnect.

    A workflow runs Delta with the current state of the customizable asset and an empty customizable asset as input arguments. The resultant delta quote is shown in the diagram that follows.

    Click for full size image
Generating a Delta Property Set to Add More Assets

The following example shows how this method generates a delta property set to add more copies of an asset.

  1. The user selects a customizable asset in the service profile view, as in the diagram that follows.
    Click for full size image
  2. The user makes various changes including changing the quantity of Calling Card from one to three, as in the diagram that follows.
    Click for full size image
  3. Delta generates the delta property set as shown in the diagram that follows. The calling card record is split out into the original, unchanged asset and an action to add the new copies of the original calling card.
    Click for full size image
Identifying Changes in Product Structure

The following example shows how this method is used to change a product structure.

  1. The user selects a customizable product in the customer profile view, as in the diagram that follows.
    Click for full size image
  2. Since this asset was created, the customizable product structure has changed to group all features beneath a Feature Package component. When the product is loaded into the Configurator, it is relinked and displayed as shown in the diagram that follows.
    Click for full size image
  3. When the new structure is saved, Delta identifies the new Feature Package component and marks the Call Forwarding feature for update because its parent has changed. This is shown in the diagram that follows.
    Click for full size image
Related Information

See the topic about workflows in Siebel Order Management Guide, and the following methods:

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