Product Administration Guide > Siebel Configurator API Reference > Instance APIs for the Complex Object Manager >

LoadInstance Method


This method loads the complex object into memory. This is the starting point for all configurations.

You cannot use this method unless you have first called the LoadEAI method, which is part of the Copy business service. For more information, see the topic about the Copy business service in Siebel Order Management Infrastructure Guide.

NOTE:  This method is part of the Complex Object Instance business service. It should not be confused with LoadInstance Method, which is part of Cfg Web UI Service Loader business service.

Input Arguments
  • ObjId. The unique identifier of the complex object header (for example, Quote ID).
  • RootId. The unique identifier of the complex object root (for example, Quote Line Item row id).
  • IntObjName. The name of the integration object specified in Siebel Tools.
  • TriggerEvent. The flag that determines if script events are triggered. Normally, it should be set to Y. Set it to N for special uses of the API where customizable product model script events are not desired.
  • (Optional) Version. Version arguments are used only when testing a customizable product version that is different from the currently released version.
  • (Optional) NewRecord. If set to Y, the instance will be populated with default values. The default is N.
  • (Optional) AutoSync. If set to Y, the instance will be synchronized to the database immediately after loading. The default is N.
  • (Optional) SearchSpec. Set this parameter to filter out all other hierarchical instances in the child buscomp. The default is an empty search specification. This parameter must have the following format:

    "[Header Buscomp.Id] = 'Id' AND [Item Buscomp.Root Id] = 'Root Id'"

    ex. [Quote.Id] = '10-4FR6D' AND [Quote Item.Root Id] = '10-81DUX'

  • (Optional) ExternalScript. Set this parameter to Y when running headless configurations (for example, through Siebel COM Data Server). Anything other than the Cfg Web UI Service is considered headless configuration. The difference is based on the Siebel user who is calling the service. The default is N.
Output Arguments

The following properties will be returned from the output property set:

  • CreateSession. If this property is set to Y the method CreateSession must be called after LoadInstance.
  • (Optional) IsConfig. If this property is present and set to Y the configuration model has configuration rules defined.
  • (Optional) Links. If this property is set to Y the model has linked items.
  • (Optional) UnresolvedLinks. If this property is set to Y the model has unresolved linked items that must be calculated by the caller.
  • If NewRecord is set to Y in the input property set and CreateSession is set to N in the output property set, the output will have the instance property set returned as a child of type CxObj (see the output example below). Here is an example of a return property set:

    < IsConfig='Y' UnresolvedLinks='Y' CreateSession='Y' Links='Y'>

    <Links 1-19D0X='10/19/2001' 1-1Z876='SADMIN' 1Z771='SADMIN'>

    </Links>"

    <UnresolvedLinks>"

    <UnresolvedLink DispName='Quote Name' Definition='<CfgVariableDef BUS_OBJ = ""Quote"" BUS_COMP = ""Quote"" FIELD_NAME = ""Name"" SEARCH_SPEC = """" SORT_SPEC = """" DEFAULT_VAL = """" EXECUTE = ""N""/>' Description='' DefValue='' Name='Quote Name' BusObj='Quote' Field='Name' ID='1-1Z875' BusComp='Quote'>

    </UnresolvedLink>

    </UnresolvedLinks>

    </>

Extracting the instance property set from LoadInstance. The instance property set can be extracted by first getting the child property set of type CxObj and then extracting its only child.

Handling Links. A child property set of type Links is returned if the model has linked items. The Links child property set must then be extracted and passed in to CreateSession's OUTPUT arguments as a child property set. In version 7.0.4 this changed to the INPUT property set for CreateSession. Configuration rules may have been defined for these linked items, so the configuration session must know the link values. The linked items are represented as property-value pairs with link IDs as properties and link values as property values, as in this example:

<Links 1-19D0X='10/19/2001' 1-1Z876='SADMIN' 1-1Z771='SADMIN'>

A child property set of type UnresolvedLinks is returned if the model has linked items that the business service could not resolve. The children of this property contain the information necessary to calculate the value of the linked item.

<UnresolvedLinks>"

<UnresolvedLink DispName='Quote Name' Definition='<CfgVariableDef BUS_OBJ = ""Quote"" BUS_COMP = ""Quote"" FIELD_NAME = ""Name"" SEARCH_SPEC = """" SORT_SPEC = """" DEFAULT_VAL = """" EXECUTE = ""N""/>' Description='' DefValue='' Name='Quote Name' BusObj='Quote' Field='Name' ID='1-1Z875' BusComp='Quote'>

</UnresolvedLink>

</UnresolvedLinks>

Only links that have the execute flag set or pull system parameters such as TODAY will be resolved by Siebel Configurator when used as headless configurations. The programmer must resolve all other links.

NOTE:  Make sure the unresolved links are calculated and their IDs and values are added to the Links child property set as properties, with the link ID as the property and the link value as the property value.

Product Administration Guide Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Legal Notices.