Siebel CRM Web Services Reference > Siebel CRM Primary Web Services >
Product Configurator Web Service
NOTE: This version of Siebel Product Configurator Web Service is available only for implementations of Siebel CRM version 8.1 and later. To use the Siebel Configurator Web service with Siebel CRM version 8.0, see version 8.0 of Siebel CRM Web Services Reference.
The Web service enables queries on information contained within the product model, such as relationships, attributes, linked items, resources, UI groups. The service also allows you to configure a product and perform multiple batch requests. Product Configurator Web Service Operations
For a list of operations associated with this Web service, see Table 829
Table 829. Configurator Web service operations
|
|
GetCfgObjectStructure |
Retrieves product relationships, attributes, linked items and resources. |
GetCfgObjectGroupItems |
Retrieves the Product UI definition, UI group and group items. |
GetCfgObjectDefaultGroupItems |
Retrieves Default Product Group Items (group items will be based on all relationships, attributes, linked items and resources). |
BeginConfiguration |
Enables customization of products stored in the Siebel database. Initializes the configurator session with a quote instance and product model. |
UpdateConfiguration |
Executes operations on the quote instance initialized in BeginConfiguration. |
EndConfiguration |
Release server resources used during the Begin or Update Configuration operation. |
. Request Message Description: GetCfgObjectStructure
GetCfgObjectStructure has the same request and response message. GetCfgObjectGroupItems has the same request and response message. GetCfgObjectDefaultGroupItems request and response message is the same as GetCfgObjectGroupItems. The Object's direct child properties are ignored as well those of UIOption, Responsibilities, and Group. Only the GroupItem child is looked at and returned (others are copied to the Response message). GroupItem behavior is similar to that of GetCfgObjectGroupItems. For a description of this request message, see Table 830.
Table 830. Request Message: GetCfgObjectStructure
|
|
WebChannelObjStructure |
Required. This structure identified the objects that will be queries as well the data that will be returned about the objects. |
Object |
Required. One or more must be specified. |
Name |
Required. Name of an object (product or class). Either Name or Id is required. |
Id |
Required. Id of an object (product or class). Either Name or Id is required. |
ObjectType |
Required. Either Product or Class. |
ParentClassId |
Class Id of the parent. |
DisplayName |
Display name. |
Description |
Description. |
Attribute |
Zero or more (only those child objects that are specified will be queried for). |
Name |
Name of attribute. If empty, then all attributes are returned. |
LocalType |
Local type. |
InternalType |
Internal type. |
OrigId |
Internal Id. |
DisplayName |
Display name. |
Hidden |
Hidden flag. |
Required |
Required flag. |
ReadOnly |
Read Only flag. |
ValidationSpec |
Validation specification. |
UnitOfMeasure |
Unit of measure. |
Description |
Description. |
AttributeDomain |
Zero or more. |
LocalValue |
Local value. |
InternalValue |
Internal value. |
AttributeDomainDecoration |
Zero or more. Attribute domain specific properties name value pairs. |
Name |
Name of attribute. |
Value |
Value of attribute. |
AttributeDefaultValue |
Default value of the attribute. Only one of the value types will be populated depending on the type of the value. |
DisplayValue |
Display value. |
String |
String value. |
Number |
Number value. |
Integer |
Integer value. |
Date |
Date value. |
Boolean |
Boolean value. |
AttributeRejectedValue |
Rejected value of the attribute. Only one of the value types will be populated depending on the type of the value. |
DisplayValue |
Display value. |
String |
String value. |
Number |
Number value. |
Integer |
Integer value. |
Date |
Date value. |
Boolean |
Boolean value. |
AttributeDecoration |
Zero or more. |
Name |
Attribute properties name. |
Value |
Value pairs. |
Relationship |
Zero or more (only those child objects that are specified will be queried for). |
Name |
Name of relationship. If Name and or Id is specified, then only that particular relationship will be returned. If both are empty, then all relationships are returned. |
Id |
Id of relationship. If Name and or Id is specified, then only that particular relationship will be returned. If both are empty, then all relationships will be returned. |
DisplayName |
Display name. |
ClassName |
Class name. |
ClassId |
Class Id. |
DefaultProductId |
Default product Id. |
DefaultCardinality |
Default cardinality. |
MinimumCardinality |
Minimum cardinality. |
MaximumCardinality |
Maximum cardinality. |
RelationshipDomain |
Zero or more. |
Name |
Name of product. If Name and or Id is specified, then only that particular relationship domain will be returned. If both are empty, then all relationship domain products will be returned. |
Id |
Id of product. If Name and or Id is specified, then only that particular relationship domain will be returned. If both are empty, then all relationship domain products will be returned. |
DisplayName |
Display Name. |
OrigId |
Originating Id. |
Description |
Description. |
RelationshipDomainDecoration |
Zero or more. |
Name |
Relationship domain specific properties name. |
Value |
Value pairs. |
RelationshipDecoration |
Zero or more. |
Name |
Relationship properties name |
Value |
Value pairs. |
LinkedItem |
Zero or more (only those child objects that are specified will be queried for). |
Name |
Name of linked item. |
Id |
Id of linked item. If Name and or Id is specified, then only that particular linked item will be returned. If both are empty, then all linked items will be returned. |
DisplayName |
Display name. |
VariableName |
Variable Name. |
SortSpec |
Sort specification. |
SearchSpec |
Search specification. |
NeedsExecution |
The Needs Execution flag used for business component-based queries. |
Expression |
Expression. |
DefaultValue |
Default value. |
BusinessObject |
Business object for business component based query. |
BusinessComponent |
Business component for business component based query. |
FieldName |
Field name in the business component. |
Active |
Active flag. |
LinkedItemDecoration |
Linked Item properties. |
Name |
Name value. |
Value |
Pairs. |
Resource |
Zero or more (only those child objects that are specified will be queried for). |
Name |
Name of resource. If Name and or Id is specified, then only that particular resource will be returned. If both are empty, then all resources are returned. |
Id |
Id of resource. If Name and or Id is specified, then only that particular resource will be returned. If both are empty, then all resources are returned. |
DisplayName |
Display name. |
ResourceDecoration |
Resource properties. |
Name |
Name value. |
Value |
Pairs. |
ObjectDecoration |
Object properties. |
Name |
Name value. |
Value |
Pairs. |
Request Message Description: GetCfgObjectGroupItems, GetCfgObjectDefaultGroupItems
For a description of this request message, see Table 831.
Table 831. Request Message: GetCfgObjectGroupItems, GetCfgObjectDefaultGroupItems
|
|
WebChannelObjGroupItems |
Required. This structure identified the objects that will be queries as well the data that will be returned about the objects. |
Object |
Required. One or more must be specified. |
Name |
Required. Name of Object (product or class). Either Name or Id is required. |
Id |
Required. Id of Object (product or class). Either Name or Id is required. |
ObjectType |
Required. Either Product or Class. |
ParentClassId |
Class Id of the parent. |
DisplayName |
Display name. |
Description |
Description. |
UIOption |
Zero or more. |
Name |
Name of UI option. If Name and or Id is specified, then only that particular UI option will be returned. If both are empty, then all UI options will be returned. |
Id |
Id of UI option. If Name and or Id is specified, then only that particular UI option will be returned. If both are empty, then all UI options will be returned. |
Type |
Type. |
DisplayName |
Display name. |
Sequence |
Sequence. |
BaseTheme |
Base theme. |
ProductTheme |
Product theme. |
Responsibility |
Zero or more. |
Name |
Name of responsibility. If Name and or Id is specified, then only that particular responsibility will be returned. If both are empty, then all responsibilities will be returned. |
Id |
Id of responsibility. If Name and or Id is specified, then only that particular responsibility will be returned. If both are empty, then all responsibilities will be returned. |
Group |
Zero or more. |
Name |
Name of group. If Name and or Id is specified, then only that particular group will be returned. If both are empty, then all groups will be returned. |
Id |
Id of Group. If Name value and or Id value is specified, then only that particular group will be returned. If both are empty, then all groups will be returned. |
DisplayName |
Display name. |
Sequence |
Sequence. |
GroupTheme |
Group theme. |
Description |
Description. |
GroupItem |
Zero or more. |
Id |
Id of Group Item. If Id and or Type is specified, then only that particular group item will be returned. If both are empty, then all group items will be returned. |
Type |
Type of Group Item (Relationship, Attribute, LinkedItem, or Resource). If Id and or Type is specified, then only that particular group item will be returned. If both are empty, then all group items will be returned. |
Sequence |
Sequence. |
GroupItemTheme |
Group item theme. |
Attribute |
An attribute child object of GetCfgObjectStructure request message. |
Relationship |
A relationship child object of GetCfgObjectStructure request message. |
LinkedItem |
A LinkedItem child object of GetCfgObjectStructure request message. |
Resource |
Refer to Resource child object of GetCfgObjectStructure request message. |
GroupDecoration |
Group properties. |
Name |
Name value. |
Value |
Pairs. |
Object Decoration |
Object properties name value pairs. |
Request Message Description: BeginConfiguration
For a description of this request message, see Table 832.
Table 832. Request Message: BeginConfiguration
|
|
BeginConfiguration_Input |
Required. |
InitInstanceOperation |
Required. The operation type for BeginConfiguration session. |
LOAD. This will load the hierarchy object from the db. HeaderId and RootId are required. IntegrationObjectName is needed to determine which table to query and what the structure of the hierarchy is. |
DEFAULT. This will load the hierarchy object from the db and create new line item for a product with its default instance. HeaderId and ProductId are required. IntegrationObjectName is needed to determine which table to query and what the structure of the hierarchy is. |
SET. This will load the hierarchy object from the ListOfQuote parameter (PDS Quote integration object). RootId is required to determine the root line item to use in this session. |
ADD. This will add a new line item to the hierarchy object from the ListOfQuote parameter (PDS Quote integration object). ProductId is required. |
HeaderId |
Required for InitInstanceOperation of LOAD / DEFAULT. Row Id of the Header. |
RootId |
Required for InitInstanceOperation of LOAD / SET. Row Id for the root line item. |
ProductId |
Required for InitInstanceOperation of DEFAULT / ADD. Product Id for the root line item. |
ListOfQuote |
Required for InitInstanceOperation of SET / ADD. Hierarchy object in PDS Quote integration object format. |
ListOfData |
List of products, attributes, or relationships on which user requires domain information (with exclusions) in CfgInteractData integration object format. |
ProductData |
Product type. |
Item |
Item name. |
IntegrationId |
Integration Id of the line item. If IntegrationId specified, then only this line item and its sub line items are looked at. ProductId is optional. If ProductId is also specified, then it should match IntegrationId. If IntegrationId and ProductId are not specified, then the root line item is looked at. |
ProductId |
Product Id of the line item. If IntegrationId specified, then only this line item and its sub line items are looked at. ProductId is optional. If ProductId is also specified, then that value should match the IntegrationId. If IntegrationId and ProductId are not specified, then the root line item is considered. |
Name |
Name of the product. |
Quantity |
Quantity. |
RelationshipName |
Relationship name. For sub line items, RelationshipName can be specified to limit the search to a particular relationship. |
RootIntegrationId |
Integration Id of the root line item. |
PortId |
Relationship ID. |
ParentProductId |
Parent Product ID. |
ParentIntegrationId |
Parent Integration ID. |
CanDrilldown |
Can drilldown flag. Used to indicate whether the line item is a customizable product. |
ListPrice |
List price. |
NRCCxTotal |
Non-recurring total price - only set on the root line item. |
MRCCxTotal |
Recurring total price - only set on the root line item. |
CurrentPrice |
Current price of the item after all the discounts have been factored in. |
ExchangeDate |
Exchange date of the pricing field values. |
CurrencyCode |
Currency code of the pricing field values. |
HasGenericsFlag |
Has Generics flag. Used to indicate whether the line item is incomplete. |
EligibilityStatus |
Eligibility status. |
EligibilityReason |
Eligibility reason. |
Explanation |
Explanation, if required. |
ExplanationText |
Text of explanation. |
Relationship |
Zero or more. List of relationships on which information is required. |
Name |
Name of relationship to query for. If empty, then all relationships are returned. |
Id |
Id. Always returned whether specified in the request or not. |
Request Type |
Indicates the type of the information that will be calculated for this relationship. Possible values include:
- SelectionInfo - Only current line items for this relationship will be outputted.
- DomainInfo - Only the possible domain items for this relationship will be outputted.
- Any other values results in both of the above information being calculated and outputted.
|
DomainItem |
Zero or more. Domain items of the relationship. Always returned whether specified in Request or not. |
Name |
Name of domain item. |
Id |
Id of domain item. |
ListPrice |
List price. |
ExchangeDate |
Exchange date of the pricing field values. |
CurrencyCode |
Currency code of the pricing field values. |
PriceType |
Indicated the type of list price: One-time or Recurring. |
CanDrilldown |
Can Drilldown flag. Used to indicate whether the line item is a customizable product. |
Excluded |
Excluded flag indicates the whether this domain item is excluded by a Constraint, Eligibility & Compatibility rule, or Promotion. |
Attribute |
Zero or more. List of attributes on which information is required. |
Name |
Name of attribute to query for. If empty, then all attributes are returned. |
ValueType |
Type of attribute. Always returned whether specified in the request or not. |
AttributeValue |
Zero or more. List of attribute values. Always returned whether specified in the request or not. |
DisplayValue |
Display value. |
StringValue |
Value displayed in a string. |
IntegerValue |
Value displayed as integer. |
NumberValue |
Value displayed as number. |
BooleanValue |
Value displayed in Boolean format. |
DateTimeValue |
Date and time value. |
Selected |
Selected flag indicates whether this value is selected. |
Excluded |
Excluded flag indicates whether this value is excluded by a Constraint, Eligibility & Compatibility rule or Promotion. |
Item |
Zero or more. Same recursive structure as that defined above. |
ListOfLinkedItems |
Linked Items. |
LinkedItems |
Linked Items. |
LinkedItemValue |
One or more. |
Name |
Name of linked item. |
ValueType |
Type of value. |
StatusText |
Details on the error if any. |
ConflictResolution |
Values are Proceed or Undo. This indicates whether a Procced or Undo was done on the conflicts and also whether there were any other violations that resulted in an Undo (like Promotion or Cardinality). |
Messages |
Zero or one. List of messages. |
MessageType |
Zero or more. |
MessageSource |
Source of the messages (Eligibility, Promotion, Cardinality, Proceed Actions and so on). |
Message |
Message text. |
Response Message Description: Begin Configuration
GetCfgObjectStructure has the same request and response message. For more information, see Table 832. GetCfgObjectGroupItems and GetCfgObjectDefaultGroupItems have the same request and response messages. See the response message description for Begin Configuration for details. For a description of this response message, see Table 833.
Table 833. Response Message Description: Begin Configuration
|
|
BeginConfiguration_Output |
Required. |
Error_spcCode |
Error code if error occurred. |
Error_spcMessage |
Error message if error occurred. |
RootId |
New item root Id. |
RootIntegrationId |
New item root Integration Id. |
ListOfQuote |
Quote instance if ReturnFullInstance input parameter was set to Y. See BeginConfiguration Request Message for details. |
ListOfData |
The domain information about products, attributes, and relationships as well current selections for the attributes, or relationships that was requested in the request message. |
ListOfStatus |
This indicates whether the request was successful or not and contains messages to be displayed. |
Status |
Required |
StatusCode |
Success, Warning, or Error. If the StatusCode is Success, then the operation was successful. If the StatusCode is Warning, then there were conflicts, messages are present in ListOfMessage, that were automatically resolved. If the StatusCode is Error, then there were conflicts, messages are present in ListOfMessage, that could not be resolved, and further requests to this session will not be honored. |
Request Message Description: UpdateConfiguration
For a description of this request message, see Table 834.
Table 834. Request Message Description: UpdateConfiguration
|
|
UpdateConfiguration_Input |
Required. |
ConflictAutoResolve |
Proceed or Undo. If set to Proceed, then all conflicts are auto resolved. If set to Undo, then any conflict will result in an Undo of the entire batch. |
FinishInstanceInFlag |
If set Y, then FinishIt is called. |
SaveInstanceInFlag |
If set Y, then the instance is saved to the database. |
RepriceInstanceInFlag |
If set Y, then a reprice is called. |
VerifyInstanceInFlag |
If set Y, then verify the instance is called. |
ListOfData |
Same as ListOfData in BeginConfiguration Request Message. |
ListOfRequest |
List of Requests that will be executed on the product instance. |
Requests |
Requests. |
Request |
Zero or more. |
Type |
Type of request (AddItem, RemoveItem, SetItemQuantitty, SetAttribute, ReplaceItem). |
Item |
Zero or more requests. |
AddProductId |
Add product Id for AddItem, ReplaceItem. |
Quantity |
Quantity. |
RelationshipId |
Relationship Id which contains the new product for AddItem, ReplaceItem. |
IntegrationId |
Integration Id on which the operation will be performed. |
Attribute |
Zero or more SetAttribute request details. |
Name |
Name or attribute. |
ValueType |
Type of value. |
AttributeValue |
Zero or more. |
DisplayValue |
New display value of attribute |
String |
Value displayed in a string. |
Number |
Value displayed as number. |
Integer |
Value displayed as integer. |
Date |
Date. |
Boolean |
Value displayed in Boolean format. |
Response Message Description: UpdateConfiguration
For a description of this response message, see Table 835.
Table 835. Response Message Description: UpdateConfiguration
|
|
UpdateConfiguration_Output |
Required. |
Error_spcCode |
Error Code if error occurred. |
Error_spcMessage |
Error Message if error occurred. |
FinishConfigurationOutFlag |
Y or N. Indicates whether Finish Configuration was performed. It might not be performed if there were some errors. |
RepriceOutFlag |
Y or N. Indicates whether Reprice was done. It might not be performed if there were errors. |
SaveInstanceOutFlag |
Y or N. Indicates whether Save Instance was done. It might not be performed if there were conflicts. |
VerifyOutFlag |
Y or N. Indicates whether Verify was done. It might not be performed if there were errors. |
ListOfData |
The domain information about products, attributes, and relationships as well current selections for the attributes, or relationships that was requested in the request message. |
ListOfStatus |
This indicates whether the request was successful or not and contains messages to be displayed. |
Request Message Description: EndConfiguration
For a description of this request message, see Table 836.
Table 836. Request Message Description: EndConfiguration
|
|
EndConfiguration_Input |
Required. |
SaveInstanceFlag |
Save instance flag. |
Response Message Description: EndConfiguration
For a description of this response message, see Table 837.
Table 837. Response Message Description: EndConfiguration
|
|
EndConfiguration_Output |
Required. |
Error_spcCode |
Error Code if error occurred. |
Error_spcMessage |
Error Message if error occurred. |
ListOfQuote |
Quote instance. |
Product Configurator Web Service Application Interface
This topic describes the application objects called by this Web service. For more information on application implementation, refer to your application development documentation on Oracle Technology Network. Service Object (Business Service or Workflow)
For a description of the service objects for this Web service, see Table 838.
Table 838. Product Configurator Service Objects
|
|
|
Cfg Object Broker |
Business Service |
CSSCfgObjBrokerService |
ConfiguratorWebChannelBeginConfig |
Workflow |
Not applicable |
ConfiguratorWebChannelUpdateConfig |
Workflow |
Not applicable |
ConfiguratorWebChannelEndConfig |
Workflow |
Not applicable |
Data Object (Integration Object)
For a description of data objects for this Web service, see Table 839.
Table 839. Product Configurator Data Objects
|
|
CfgInteractData |
ListOfData |
CfgInteractRequest |
ListOfRequest |
CfgInteractStatus |
ListOfStatus |
CfgLinkedItems |
ListOfLinkedItems |
PDS Quote |
ListOfQuote |
Methods
For a description of the methods for this Web service, see Table 840.
Table 840. Product Configurator Methods
|
|
GetCfgObjectStructure |
GetObjStructure |
GetCfgObjectGroupItems |
GetObjGroupItems |
GetCfgObjectDefaultGroupItems |
GetObjDefaultGroupItems |
Example Package for Product Configurator
To view an example of messages for this Web service, navigate to the documentation library for Siebel Business Applications on Oracle Technology Network, and click the Related Files link next to the link for Siebel CRM Web Services Reference to access a zip file. Extract the files in the zip file. Request (GetObjDefaultGroupItems)
See the following file to view the sample code: ...\ProductConfigurator\GetObjDefaultGroupItems_request.xml
Response (GetObjDefaultGroupItems)
See the following file to view the sample code: ...\ProductConfigurator\GetObjDefaultGroupItems_response.xml
Request (GetObjGroupItems)
See the following file to view the sample code: ...\ProductConfigurator\GetObjGroupItems_request.xml
Response (GetObjGroupItems)
See the following file to view the sample code: ...\ProductConfigurator\GetObjGroupItems_response.xml
Request (GetObjStructure)
See the following file to view the sample code: ...\ProductConfigurator\GetObjStructure_request.xml
Response (GetObjStructure)
See the following file to view the sample code: ...\ProductConfigurator\GetObjStructure_response.xml
Interface Description (WSDL) for Product Configurator
To view the interface description for this Web service, navigate to the documentation library for Siebel Business Applications on Oracle Technology Network, and click the Related Files link next to the link for Siebel CRM Web Services Reference to access a zip file. Extract the files in the zip file. ...\ProductConfigurator\ProductConfigurator.wsdl
|