Siebel Data Mapping
Transcript of Siebel Data Mapping
I am doing Data Mapping using E-Sript,
I have read the EAI pdfs.I am getting the following error:
ObjMgrBusServiceLog Error 1 0 2006-04-08 17:46:07 (dtescriptsvc.cpp (103)) SBL-EAI-04088: Data Transform Error. EAIExecuteMap: Invalid Map
Function Argument Type: ''
ObjMgrLog Error 1 0 2006-04-08 17:46:07 (stepexec.cpp (768)) SBL-BPR-00162: Error invoking service 'objDataMaps', method 'Execute' at step
'DataMaps'.
I am using this sample Script:
function ObjOutBoundMap1(ObjectIn, ObjectOut)
{
/* It is an example of business service Script for the Map developement.
* Input Objects' Integration Components
* Integration Account Object
*
* Output Object's Integration Components:
* Customer Data to be written in the file
*/
var IIntObj;
var EIntObj;
var IPIntComp;
var EPIntComp;
IIntObj= ObjectIn.GetIntObj("ObjAccountIntegration");
EIntObj=ObjectOut.CreateIntObj("customer12");
while(IIntObj.NextInstance())
{
EIntObj.NewInstance();
var EIntCmp = EIntObj.CreatePrimaryIntComp("customer");
var IIntcmp = IIntObj.GetPrimaryIntComp("Account");
while(IIntcmp.NextRecord())
{
EIntCmp.NewRecord();
EIntCmp.SetSource(IIntCmp);
EIntcmp.CopyFieldValue("Id","id");
EIntcmp.CopyFieldValue("Id","Name");
}
}
}
I have created the workflow and given the Business Service name and the map function name. I have tried changes different properties of the
BS.
Creating a Data Map
use the Siebel Data Mapper to create a data map that transforms an external
Northwind customer record into an internal Siebel account record. You will use the two integration
objects you created earlier in the course. Make sure the NWD Account and NWD_CustomersQuery
integration objects have been created and compiled into the sample srf file.
Using a Data Map in a Workflow
add a data mapping step to a workflow to import a Northwind Customer record.
The record must be transformed using the data map you created in the previous lab.
Integration objects
Specify parameters for the new integration object.
a. Select NWD Account as the Project.
b. Select EAI Siebel Wizard from the Specify the source system of the new Integration
Object… drop-down list.
For the Account integration component, make the following fields active:
(Hint: Use columns displayed to reposition the Inactive column) Account Integration Component Fields
For the Contact integration component, make the following fields active: Contact Integration Component Fields
Note
that you have added Account Integration Id as an integration component. It
serves as the foreign key field to the parent account record. In addition, you have also
added the Person UId field. You will use this field as part of a user key in the next
step.
Specify the integration component key and integration component key fields for the integration
object.
a. Set the active integration component keys, and the active integration component key fields,
using the table below. Only the items listed below should remain active. Integration Component Integration Component Key Integration Component Key Field
Make sure that the V77 Wizard-Generated User Key:1 for Account_Business Address is set
to inactive.
FINS Data Transfer Utilities
The best thing while working on siebel is you are never short of options. Recently we had requirement of updating a Service request
from contact. Finally we did that using "EAI Siebel Adapter" business service. However during that time i came across another
business service "FINS Data Transfer Utilities" popularly known as DTU business service. As i was not having prior knowledge of it
going by the rule of not learning swimming lessons while drowning i decided not to go for it. Lately i have tried to explore this service
and trust me it can do wonders.
Here is a sample example update of Service Request from contact. We need to follow below steps in order to understand strength of
this business service.
1 - Navigate to Site Map. Go to Administration - Application -> Data Map Administration tab. Create a new Record with following
options:
Name: Service Request Test
Source Business Object: Contact
Destination Business Object: Service Request
Here the source business object specifies where data should come and Destination busobject specifies where data should go.
2 -In Data Map Component we specify mapping of the child business component. There needs to be one root business component and
other child business component in the map. This is really handy while creating quotes and quote line items from Opportunity. Or any
other instance where multiple BC's are under scanner.
Name: SR Update
Source Business Component: Contact
Destination Business Component: Service Request
3 - In Data Map field we specify field to field mapping, data from which source field should go to which destination field. However
source/destination field could be of following types based
on our requirement:
Field: BC field
Parameter: Input argument to business service
Expression: combination of BC field or Parameters
The most important thing here is the Key field, which helps in matching source record with destination record during update
operation. More of this is given in "siebel finance bookshelf".
4 - Once data map is done, our job is very simple. We need to write a workflow which can call this business service and invoke that
workflow on contact write
record. Sample workflow should look like.
Method Invoked is: DataTransfer
Parameters which we have passed are:
Operation - Update : It specifies which operation we need to perform. Values are Insert,Update,Delete and Upsert
InitBO - Contact : Initiator BO
InitBC - Contact : Initiator BC
DataMapObj - Service Request Test : Name of the Data Map
&Status - Closed : Status value we need to set for SR
&SRId - '288-70710' : SR Number for which we need to set status. This could be process property. I have hard coded for testing
purpose.
5 - Create a runtime event which invokes this workflow on writerecord of Contact BC. Once reload is done try to see the magic.
This business service is of immense help if used efficiently and can be of real help in scenarios involving update/insert of multiple
business components.