13Copy Service
Copy Service
This chapter explains the use of the ISS Copy business service, or “Copy Service.” This chapter is organized as follows:
About Copy Service
Siebel order management copies data from one document type to another as a transaction progresses. Example transactions for which data is copied from one document type to another include the following:
Quote-to-Agreement
Opportunity-to-Quote
Order-to-Agreement
Agreement-to-Order
In earlier releases, the mapping between objects was either hard-coded (as in Quote-to-Agreement) or inconsistently defined (such as with business component user properties or SIS OM PMT mappings). In this release, all mappings between objects are defined in the Administration - Application screen, then the Data Map Administration views of the run-time client.
Using the Administration - Data views and the ISS Copy business service, you can create new mappings and update existing mappings. A mapping can support one or more business components from a business object (for example, quote, quote line item, and quote payments).
The ISS Copy business service (or “Copy service”), provides a mechanism for copying data from one business object to another. Use the Administration - Application screen, then the Data Map Administration views to define the business components and fields to be copied in a given situation.
Configuring Copy Maps
For information about configuring copy maps, see the topics about creating and validating data maps in Business Processes and Rules: Siebel Enterprise Application Integration.
Components of the Copy Service mechanism are shown in the following figure.
![Copy Service Components. In this image, UI Event or Script is connected by one-way arrow to Signal Map. Signal Map is connected by one-way arrow to Copy Service. Copy Service is connected by two-way arrow to Siebel Database. Data Map Administration View is connected by two-way arrow to Data Map. Data Map is connected to Copy Service.](images/CopyService_Components_V.gif)
Data maps are cached in the Object Manager. Copy Service uses batched SQL updates for optimum throughput.
Copy Service Methods
The Copy Service includes the following methods, which can be called from script or signals:
GetFieldValueFromInstance Method
This method retrieves the business component field value from the instance.
Arguments
Argument | Description |
---|---|
InstanceName |
[in] ISS business component instance name. |
FieldName |
[in] Business component field name. |
BusCompName |
[in] Used to specify a business component other than the instance business component, if necessary. (Optional) |
FieldValue |
[out] The field value. |
SearchSpec |
[out] A search specification of the following format: [FieldName] = "FieldValue" |
LoadInstanceFromBC Method
The method loads the instance from the business component and pushes it into an instance. If SourceInstance is specified, the new instance is created by cloning the source instance and positioning it on the same row ID. Alternatively, BusObj, BusComp, and a search specification can be used to define the new instance.
The instance business component loaded must not have a parent defined in the BusObj.
Arguments
Argument | Description |
---|---|
SourceInstance |
[in] The source ISS instance name. If specified, the new instance is constructed by positioning it on the same row ID as the source instance. (Optional) |
InstanceName |
[in] Required if SourceInstance is specified. Otherwise, optional default to “TheInstance”. (Optional) |
BusObjName |
[in] Business object name. (Optional) |
BusCompName |
[in] Business component name. (Optional) |
SearchSpec |
[in] Search specification on the business component. (Optional) |
InsertOnly |
[in] If set to Y, ???? (Optional) |
SetFieldValueFromInstance Method
The method sets the field value to an instance.
Arguments
Argument | Description |
---|---|
InstanceName |
[in] ISS business component instance name. |
FieldName |
[in] business component field name |
BusCompName |
[in] Used to specify a business component other than the instance business component, if necessary. (Optional) |
FieldValue |
[in] Field value. |
GetLOVValue |
[in] LOV Type. If defined, the FieldValue is the LOV language-independent code. The actual field value will be the language-dependent display value as defined by LOV Type or Language independent code. (Optional) |
PopAndReleaseInstance Method
This method pops out and releases the instances.
Arguments
Argument | Description |
---|---|
InstanceName |
[in] The ISS instance name. |
Copy Method
The method copies the source instance to the destination instance based on the defined copy map.
Arguments
Argument | Description |
---|---|
SourceInstance |
[in] Source instance name. |
DestinationInstance |
[in] Destination instance name. |
MapName |
[in] Data map name. |
CachedUpdate |
[in] Y or N. Performance option to allow for cached updates. All SQL generated in the operation is issued to the database in one batch. Therefore, a SQL in the block cannot depend on a previous SQL being committed to the database. (Optional) |
Release |
[in] Source, Destination, or All. If defined, the corresponding instance(s) is popped up and released after the operation. (Optional) |
RefreshBCFromInstance Method
The method refreshes the instance business component. If defined in the input argument, the line item business component is also refreshed.
Arguments
Argument | Description |
---|---|
InstanceName |
[in] ISS business component instance name. |
BusCompName |
[in] Used to specify a buscomp other than the instance buscomp, if necessary. (Optional |
BusCompLineItemName |
[in] Line item buscomp name. (Optional) |
CleanupEAI Method
CleanupEAI frees the memory used by the EAI data structure.
Syntax
Cleanup EAI <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
InstanceCollectionName |
A string indicating the name of the instance collection |
Usage
CleanupEAI frees the memory used by the EAI data structure. The name of collection is passed in as the InstanceCollectionName property.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.
CleanupInstance Method
CleanupInstance frees the memory used by the CxObj data structure.
Syntax
Cleanup Instance <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
InstanceName |
A string indicating the name of the instance |
Usage
CleanupInstance frees the memory used by the CxObj data structure. The name of instance is passed in as the InstanceName property.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.
LoadEAI Method
LoadEAI loads the product line item data structure through EAI and creates the CxObj memory structure for it.
Syntax
Load EAI <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
ParentObjectId |
The Quote Id or Order Id or Agreement Id or parent Asset Id |
IntegrationObjectName |
The integration object name to use to load the object through EAI |
SearchSpec |
The search spec to apply when loading the object through EAI. Format: [Header.Id] = 'QuoteId' AND [Line Item.Root Id] = 'RootId' (ex. "[Header.Id] = '2-4YOXR' AND [Line Item.Root Id] = '2-4YOXX'") |
InstanceCollectionName [optional] |
A string indicating the name of the instance collection. Defaults to "TheInstanceCollection" |
InstanceName [optional] |
A string indicating the name of the instance. Defaults to "TheInstance" |
RootId [optional] |
The row ID of the root product. If empty, then a new row is created using the Product Id property. This is used during Validation of a product. |
ProductId [optional] |
Only used if RootId is empty. A dummy memory structure is created using the Product Id. |
Output Arguments
Input Argument | Description |
---|---|
RootId |
The row ID for the root product. |
Usage
LoadEAI loads the product line item data structure through EAI and creates the CxObj memory structure for it. The CxObj structure is cached for use later by Configurator UI service and Configurator Service and also by Eligibility & Compatibility.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.
SetupLineNumbers Method
SetupLineNumbers updates the line numbers for the Line Item being customized corresponding to the CxObj.
Syntax
SetupLineNumbers <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
HeaderIntCompName |
Header Integration Component Name |
Integration Object Name |
The integration object name to use to load the object through EAI |
InstanceCollectionName |
A string indicating the name of the instance collection |
InstanceName |
A string indicating the name of the instance |
Line Number Field |
Line number field |
LineItemIntCompName |
Line Item Integration Component Name |
Row Id |
Line Item Id |
Usage
SetupLineNumbers updates the line numbers for the Line Item being customized corresponding to the CxObj.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.
SetupSyncUpsert Method
SetupSyncUpsert updates EAI operations on CxObj nodes for better performance during the subsequent sync using EAI.
Syntax
SetupSyncUpsert <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
InstanceCollectionName |
A string indicating the name of the instance collection |
Usage
SetupSyncUpsert updates EAI operations on CxObj nodes for better performance during the subsequent sync using EAI.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.
StoreEAI Method
StoreEAI updates the line item by storing the CxObj structure using EAI.
Syntax
Store EAI <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
IntegrationObjectName |
The integration object name to use to load the object through EAI |
InstanceCollectionName [optional] |
A string indicating the name of the instance collection. Defaults to "TheInstanceCollection". |
ParentObjId |
Quote Id, Order Id, Agreement Id, or Asset Id |
Usage
StoreEAI updates the line item by storing the CxObj structure using EAI.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.
CheckEligibilityHelper Method
Raises the GetEligibility signal on a configurator instance.
Syntax
CheckEligibilityHelper <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
InstanceName |
Name of instance |
Mode |
Quote, Order, Asset or Agreement |
Output Arguments
Output Argument | Description |
---|---|
Status |
SUCCESS or ERROR |
Error Message |
(Optional) Error message, if any |
Usage
Raises the GetEligibility signal on a configurator instance. This is invoked from the Batch Validate workflow. The workflow can be modified to skip this step if needed.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.
CalculatePriceHelper Method
Raises the CalculatePrice signal on a configurator instance.
Syntax
CalculatePriceHelper <inputArgs>, <outputArgs>
Input Arguments
Input Argument | Description |
---|---|
InstanceName |
Name of instance |
Mode |
Quote, Order, Asset or Agreement |
Output Arguments
Output Argument | Description |
---|---|
Status |
SUCCESS or ERROR |
Error Number |
(Optional) Error code, if any |
Error Message |
(Optional) Error message, if any |
Usage
Raises the CalculatePrice signal on a configurator instance. This is invoked from the Batch Validate workflow. The workflow can be modified to skip this step if needed.
Invoked From
Browser Script, COM Data Control, COM Data Server, Server Script, Java Data Bean, Siebel Mobile Web Client Automation Server.