Siebel Order Management Guide > Product Data Service and Import/Export API Reference > Product Data Services API Methods >
ExecuteSearch Method
Executes the search on products based on the input search option, such as product class, class attributes, attribute constraints, pricing criteria, and so on. External. Syntax
ErrCode ExecuteSearch (const CCFPropertySet& inputArgs, CCFPropertySet& outputArgs);
Arguments
There are two types of search supported: SearchByProduct or SearchByClass. SearchOption is a required input to indicate the type of search performed.
Arguments for SearchByProduct |
|
|
const CCFPropertySet& inputArgs |
In |
SearchOption: SearchByProduct. This is a required input. IO: an instance of Integration Object "PDS Product Interface". This is a required input. PricingMode: Y/N (calculates price or not). Optional. Default value "Y". EligibilityMode: 0,1,2 (eligibility display mode. 0 do not run; 1 run; 2 run but only return eligible ones). Optional. Default value "1". ContextMode: SiebelContext or ExternalConext. Optional, but if not provided, will not run pricing and eligibility. Context: an instance of Integration Object "PDS Catalog Context". It either contains SiebelContext or ExternalContext. Optional only if ContextMode is not provided; otherwise, required. PriceSearchExpression: price field search expression. For example: is greater than 100 and is less than 1000. Optional. ProductSearchSpec: product business component search specification. For example: [Name] like "IBM*". Optional. ResultSize: number of products returned. Optional. Default Value 30. |
CCFPropertySet& outputArgs |
Out |
Hierarchy: SiebelMessage (Integration object "PDS Product Interface") |
Arguments for SearchByClass |
|
|
const CCFPropertySet& inputArgs |
In |
SearchOption: SearchByClass. This is a required input. IO: an instance of Integration Object "PDS Product Class Attributes Interface". This is a required input. The user must specify class id, attribute id, and attribute value in attribute LOV value structure (array with 1 element for either freeform or LOV type attribute). PricingMode: Y/N (calculates price or not). Optional. Default value "Y". EligibilityMode: 0,1,2 (eligibility display mode. 0 do not run; 1 run; 2 run but only return eligible products). Optional. Default value is "1". ContextMode: SiebelContext or ExternalConext. Optional, but if it is not provided, it will not run pricing and eligibility. Context: an instance of Integration Object "PDS Catalog Context". It either contains SiebelContext or ExternalContext. Optional only if ContextMode is not provided; otherwise, required. PriceSearchExpression: price field search expression. For example: is greater than 100 and is less than 1000. Optional. ProductSearchSpec: product business component search specification. For example: [Name] like "IBM*". Optional. ResultSize: number of products returned. Optional. Default Value 30. |
CCFPropertySet& outputArgs |
Out |
Hierarchy: SiebelMessage (Integration object "PDS Product Interface") |
Details of Input Arguments
|
|
|
|
ContextMode |
String |
SiebelContext, ExternalContext |
SiebelContext: Using existing Quote/Order Information in Siebel Database. In this case, the API constructs the Context based on the provided row_id ExternalContext: External Call will provide the context information, API will pass them directly to the Pricing and Eligibility Process. |
ResultSize |
Number |
For example: 30 |
The number of products that are retrieved from the query result |
Context |
Hierarchy: SiebelMessage (Integration object "PDS Catalog Context") |
See the examples that follows this table. |
|
Integration Object |
SiebelMessage |
PDS Product Interface |
|
Example of Input Arguments
CCFPropertySet@0012C82C p#7 c#3 type="" vt=0 value=""
{
p["EligibilityMode"] = "1";
p["ProductSearchSpec"] = "";
p["PriceSearchExpression"] = "";
p["ContextMode"] = "SiebelContext";
p["ResultSize"] = "";
p["PricingMode"] = "Y";
p["SearchOption"] = "SearchByClass";
c[0] CCFPropertySet@0A7AEFC0 p#4 c#1 type="Context" vt=0 value=""
{
p["MessageId"] = "";
p["IntObjectName"] = "PDS Catalog Context";
p["MessageType"] = "Integration Object";
p["IntObjectFormat"] = "Siebel Hierarchical";
c[0] CCFPropertySet@0A778688 p#0 c#1 type="ListOfPDS Catalog Context" vt=0 value=""
{
c[0] CCFPropertySet@0A7F7CE0 p#0 c#1 type="Context" vt=0 value=""
{
c[0] CCFPropertySet@0AAD12D8 p#0 c#1 type="ListOfSiebel Context" vt=0 value=""
{
c[0] CCFPropertySet@0AA29A88 p#4 c#0 type="Siebel Context" vt=0 value=""
{
p["BusObjName"] = "Quote";
p["ContextRowId"] = "1-10MLH";
p["SignalMode"] = "Quote";
p["BusCompName"] = "Quote";
}
}
}
}
}
c[1] CCFPropertySet@0AA524A0 p#4 c#1 type="ClassAttributes" vt=0 value=""
{
p["MessageId"] = "";
p["IntObjectName"] = "PDS Product Class Attributes Interface";
p["MessageType"] = "Integration Object";
p["IntObjectFormat"] = "Siebel Hierarchical";
c[0] CCFPropertySet@0AACF400 p#0 c#1 type="ListOfPDS Product Class Attributes Interface" vt=0 value=""
{
c[0] CCFPropertySet@0AA92A18 p#1 c#1 type="ISS PS Direct Subclass" vt=0 value=""
{
p["Class Id"] = "99-27K1T";
c[0] CCFPropertySet@0AA53858 p#0 c#1 type="ListOfISS Class Attribute" vt=0 value=""
{
c[0] CCFPropertySet@0A9B38B8 p#2 c#0 type="ISS Class Attribute" vt=0 value=""
{
p["Value"] = "Professional";
p["Attribute Id"] = "OM_Edition";
}
}
}
}
}
c[2] CCFPropertySet@054B87F0 p#4 c#1 type="SiebelMessage" vt=0 value=""
{
p["MessageId"] = "";
p["IntObjectName"] = "PDS Product Interface";
p["MessageType"] = "Integration Object";
p["IntObjectFormat"] = "Siebel Hierarchical";
c[0] CCFPropertySet@00C8E8F8 p#0 c#1 type="ListOfPDS Product Interface" vt=0 value=""
{
c[0] CCFPropertySet@0A798FF8 p#0 c#0 type="Product" vt=0 value=""
}
}
}
Example of Output Arguments
CCFPropertySet@0012CCB8 p#0 c#1 type="" vt=0 value=""
{
c[0] CCFPropertySet@02C806E0 p#4 c#1 type="SiebelMessage" vt=0 value=""
{
p["MessageId"] = "";
p["MessageType"] = "Integration Object";
p["IntObjectName"] = "PDS Product Interface";
p["IntObjectFormat"] = "Siebel Hierarchical";
c[0] CCFPropertySet@02B9FF00 p#0 c#2 type="ListOfPDS Product Interface" vt=0 value=""
{
c[0] CCFPropertySet@0B97D3F8 p#24 c#0 type="Product" vt=3 value="99-27KMW"
{
p["Class Id"] = "99-27K1T";
p["Product Def Type Code"] = "Customizable";
p["Reference Price"] = "";
p["Vendor Integration Id"] = "";
p["Id"] = "99-27KMW";
p["Eligibility Reason"] = "";
p["Pre Pick"] = "N";
p["Product Id"] = "99-27KMW";
p["Part #"] = "";
p["Eligibility Status"] = "";
p["Parent Item Id"] = "";
p["Inclusive Eligibility Flag"] = "N";
p["Integration Id"] = "";
p["Net Price"] = "";
p["Effective To"] = "";
p["List Price"] = "";
p["Product Configuration Model Id"] = "99-27KMW";
p["Product Line Id"] = "No Match Row Id";
p["Effective From"] = "";
p["List Price Type Code"] = "STANDARD";
p["Product Type Code"] = "Product";
p["Quantity"] = "1";
p["Name"] = "OM_Windows NT";
p["Price List Id"] = "99-27LE5";
}
c[1] CCFPropertySet@0B824EB8 p#24 c#0 type="Product" vt=3 value="99-27KN1"
{
p["Class Id"] = "99-27K1T";
p["Product Def Type Code"] = "None";
p["Reference Price"] = "";
p["Vendor Integration Id"] = "";
p["Id"] = "99-27KN1";
p["Eligibility Reason"] = "";
p["Pre Pick"] = "N";
p["Product Id"] = "99-27KN1";
p["Part #"] = "";
p["Eligibility Status"] = "";
p["Parent Item Id"] = "";
p["Inclusive Eligibility Flag"] = "N";
p["Integration Id"] = "";
p["Net Price"] = "";
p["Effective To"] = "";
p["List Price"] = "";
p["Product Configuration Model Id"] = "99-27KN1";
p["Product Line Id"] = "No Match Row Id";
p["Effective From"] = "";
p["List Price Type Code"] = "STANDARD";
p["Product Type Code"] = "Product";
p["Quantity"] = "1";
p["Name"] = "OM_Windows XP";
p["Price List Id"] = "99-27LE5";
}
}
}
}
Error Conditions
|
|
The 'Data Sync Service: ExecuteSearch' user property is not defined in business service 'PDS Product Data Service |
The specified user property can not be found on the business service, which must have value PDS Product by default. |
Cannot get property set 1%. |
The required property set input 1% is not provided. |
Unable to locate record with row id as '%1' in '%2 |
The specified row_id 1% in BC 2% could not be found. |
Unable to create the Business Service PDS Product |
Can not initiate the business service. |
|