Siebel Data Mapping

25
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;

Transcript of Siebel Data Mapping

Page 1: 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;

Page 2: Siebel Data Mapping

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.

Page 3: Siebel Data Mapping

Creating a Data Map

use the Siebel Data Mapper to create a data map that transforms an externalNorthwind customer record into an internal Siebel account record. You will use the two integrationobjects you created earlier in the course. Make sure the NWD Account and NWD_CustomersQueryintegration objects have been created and compiled into the sample srf file.

Page 4: Siebel Data Mapping
Page 5: Siebel Data Mapping
Page 6: Siebel Data Mapping

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.

Page 7: Siebel Data Mapping
Page 8: Siebel Data Mapping
Page 9: Siebel Data Mapping
Page 10: Siebel Data Mapping
Page 11: Siebel Data Mapping

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 IntegrationObject… 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

Page 12: Siebel Data Mapping

For the Contact integration component, make the following fields active:Contact Integration Component Fields

Page 13: Siebel Data Mapping

Note that you have added Account Integration Id as an integration component. Itserves as the foreign key field to the parent account record. In addition, you have alsoadded the Person UId field. You will use this field as part of a user key in the next

Page 14: Siebel Data Mapping

step.

Specify the integration component key and integration component key fields for the integrationobject.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 setto inactive.

Page 15: Siebel Data Mapping

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 TestSource Business Object: ContactDestination 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 UpdateSource Business Component: ContactDestination Business Component: Service Request

Page 16: Siebel Data Mapping

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 basedon our requirement:

Field: BC fieldParameter: Input argument to business serviceExpression: 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 writerecord. 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

Page 17: Siebel Data Mapping

InitBO - Contact : Initiator BOInitBC - Contact : Initiator BCDataMapObj - 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.

Page 18: Siebel Data Mapping
Page 19: Siebel Data Mapping
Page 20: Siebel Data Mapping
Page 21: Siebel Data Mapping
Page 22: Siebel Data Mapping
Page 23: Siebel Data Mapping
Page 24: Siebel Data Mapping