siebel data mapping

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

Upload: venuram

Post on 29-Oct-2014

246 views

Category:

Documents


0 download

TRANSCRIPT

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 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.

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

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. 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

Page 14: Siebel Data Mapping

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.

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

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

Page 17: Siebel Data Mapping

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.

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