Skip to main content

Posts

Showing posts with the label Integration Object

No user key can be used for the Integration Component instance 'IO Name' error in Siebel

Error: Error invoking service 'EAI Siebel Adapter', method 'Update' at step 'Workflow Step Name'.(SBL-BPR-00162)--No user key can be used for the Integration Component instance 'Integration Component Name'.(SBL-EAI-04397) Steps to Reproduce: Created new Integration Component in Siebel Tools and set Id field (system default) as the Integration Component User Key. Created Data map in Siebel Client. Added a query step in workflow and get the response in Siebel Message process property. (EAI Siebel Adapter, Query) Added Data Map step and used above response. (EAI Data Transformation Engine,Execute) Added Update step and used the response of Data Map step. (EAI Siebel Adapter, Update) Deployed the workflow and run. On Run received the above error. Reason & Solution: From the Workflow instance logs got the Siebel Message value (from Step 3 and 4) and on inspection found out that Id tag was missing. When checked and compare the Id field in Integration compo...

Error Although All The User Key Fields Are Present In The Integration Component SBL-EAI-04397

Error: No user key can be used for Integration Component instance 'IC NAME'.(SBL-EAI-04397) Cause: In this case the behavior was encountered on Siebel CRM 8.1 release, where customer had another definition of the same IO deployed in the run time database. The IO deployed in the run time database was later amended to incorporate some changes in the user key fields. Next 'EAI Siebel Adapter' was invoked with a SiebelMessage corresponding to the amended/latest IO definition, which was compiled in the srf but not re-deployed in the runtime database. Since in version 8.1, IOs are first read from the cache and then from the SRF, this made 'EAI Siebel Adapter' to ignore the amended IO definition and throw the user key error. From experience gathered, it is seen that similar incidents can often arise when the "Deploy the Integration Object" checkbox is selected while creating an IO (using the EAI Siebel Wizard). In order to avoid such incidents due to inconsis...

How to create Integration Object in Siebel through Object Wizard

 Integration Objects: Integration objects are logical representations of Siebel business objects or external application data, such as externally defined XML documents. An integration object is metadata stored in the Siebel Repository. One integration object can be mapped to another integration object. Instances of integration objects are used in integration processes for data exchange. About the Structure of Integration Objects: The Siebel integration object provides a hierarchical structure that represents a complex data type. Most specifically, prebuilt EAI integration objects describe the structure of Siebel business objects, SAP IDOCs, SAP BAPIs, XML, and external data. Most integration projects require the use of an integration object that describes Siebel business objects, either in an outbound direction such as a query operation against a Siebel integration object, or in an inbound direction such as a synchronize operation against a Siebel integration object. An integration...

Error while mapping file attachment: SBL-EAI-04058: Source expression generated attachment ID '...' but the corresponding attachment cannot be found. (Doc ID 972381.1)

APPLIES TO: Siebel CRM - Version 7.8.2 [19213] and later Information in this document applies to any platform. SYMPTOMS Following error will be reported by EAI Data Transformation Engine (Intgeraiton Object Declarative Data Mapper) when mapping file attachment (copying file content) from improperly configured / provided source Integration Component Field; SBL-EAI-04058: Source expression generated attachment ID '...' but the corresponding attachment cannot be found. CAUSE The field type of the source (and also traget) Integration Component that (the field) provide the file attachment content has to be "DTYPE_ATTACHMENT". The error occurs if it is set  to  "DTYPE_TEXT" (that may be default setting provided while creating  the Integration Object from XSD schema using Siebel Tools Wizard. Also there are alo following requirements for the text (VALUE) of the XML element in the input XML document where the source integration object is instantiated ...

How to Query Page in Integration Object IO and get desired number of records using EAI Siebel Adapter business service in Siebel Workflow

Why Pagination in Siebel Inbound Web Service? When creating Inbound Web Services in Siebel for external system consumption data might be huge and web service either take time or timeout when invoking. So in this scenario we need to introduce the pagination. When calling the web service external system will request the page size meaning number of rows in one request. Prerequisite: IO must be compiled on SRF (EAI, SIA) and Deployed to run time data base for which you want to execute query in Siebel Workflow. Process: Add new Business Service step in Siebel Workflow, set its properties as below: Business Service Name: EAI Siebel Adapter Business Service Method: QueryPage Set the values of Input Arguments as below: Input Argument: OutputIntObjectName Type: Literal Value: IO Name Input Argument: SearchSpec Type: Expression Value: "[IC Name.Field Name] = '" + [&Process Property Name] + "'" Sample Expression: "[IC Name.Field Name] ...

How to upsert data in Integration Object IO using EAI Siebel Adapter business service in Siebel Workflow

Why Integration Component: We use IO in Siebel for inbound and outbound integration. But we can use IO for normal use as well. For example you have requirement to move data (rows) from one business component to an other. Looping is the long way you can make IO and do this in one go. Just query, use data map if you need to modify the data or destination business component have different fields name and insert or upsert the data in other business component or in the same if only data modification is required. Upsert method is interesting choice because on defined user keys in IO you can update the data if no key matches siebel will insert new row. Below is the process of using "Upsert" method of "EAI Siebel Adapter" business service using workflow business service step. Procedure: IO must be compiled on SRF (EAI, SIA) and Deployed to run time data base for which you want to upsert (insert/ update) data in Siebel using Workflow and we have to prepare SiebelMessage befo...

How to prepare Datamap using EAI Data Transformation Engine business service in Siebel Workflow

What is Data map? Data maps usually use to process data in bulk. Data map is based on Source and Destination integration objects. And then we map the integration components and after that their fields source and destination. Source field can be expression or integration component field coming from the SiebelMessage.   Below is process of invoking data map using business service step in Siebel workflow.   Procedure: Add new Business Service step in Siebel Workflow, set its properties as below: Business Service Name: EAI Data Transformation Engine Business Service Method: Execute Set the values of Input Arguments as below: Input Argument: MapName Type: Literal Value: Data Map Name Input Argument: OutputIntObjectName Type: Literal Value: IO Name Input Argument: SiebelMessage Type: Process Property Property Name:  SiebMessage Note: SiebMessage cloud be repose from Query in IO or from Web Service input and it should be based on above "IO Name" and ...

How to query in Integration Object IO using EAI Siebel Adapter business service in Siebel Workflow

IO must be compiled on SRF (EAI, SIA) and Deployed to run time data base for which you want to execute query in Siebel Workflow. Add new Business Service step in Siebel Workflow, set its properties as below: Business Service Name:  EAI Siebel Adapter Business Service Method:  Query Set the values of Input Arguments as below: Input Argument: OutputIntObjectName Type: Literal Value: IO Name Input Argument: SearchSpec Type: Expression Value: "[IC Name.Field Name] = '" + [&Process Property Name] + "'" Set the values of Output Arguments as below: Property Name: SiebelMsg  Type: Output Argument Output Argument: SiebelMessage SiebelMsg is a process property with type hierarchical. Below are some SearchSpec expressions: "[IC Name.Field Name] = Today() AND [IC Name.Field Name] = '"+LookupValue("LOV_TYPE","Value")+"'" "[Id]= '"+[&Object Id] +"'...