Skip to main content

Posts

Showing posts with the label EAI Siebel Adapter

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

Unable to Add Attachment in Siebel SBL-UIF-00229

Issue Steps (Siebel UI): Go to Contact Screen and Contact List. Drilldown Contact Name and Attachment Detail View. Click on New Button in Attachment applet, select file. Step off, or click on save button. Siebel Return an error. Error Details: [1]Error occurred while creating file in filesystem. Please contact your system administrator. (SBL-SVC-00184) [2]Error occurred while opening file 'S_CONTACT_ATT_ROWID.SAF'.(SBL-UIF-00229) Issue Steps (Siebel Workflow): Invoke workflow which is trying to add attachment using EAI Siebel Adapter. Error Details: [1]Error Invoking service 'EAI Siebel Adapter', method 'Upsert' at step 'Upsert Attachment'.(SBL-BPR-00162) [2]Method 'New Record' of business component 'Email Attachments' (integration component 'Email Attachments') for record search specification '[Parent Id] IS NULL' returned the following error: "Error occurred while opening file 'S_CONTACT_ATT_ROWID.SAF'.(SBL-...

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

Date out of range when inserting date in Siebel

Issue:  Receiving below error when trying to insert data using EAI Siebel Adapter service in workflow: Error invoking service 'EAI Siebel Adapter', method 'Upsert' at step 'upsert PP data'.(SBL-BPR-00162)--Method 'SetFieldValue' of business component 'Profile BC' (integration component 'Profile BC') for record with search specification '[Identity Number] = "1234567890"' returned the following error:"Date out of range.  Valid range is January 1, 1753 to December 31, 4712 .(SBL-DAT-00374)"(SBL-EAI-04451) (SBL-BPR-00162)--(SBL-DAT-00374) Reason: On further investigation found that  date value was 01-01-0001 in Siebel message against date field. Which Siebel was not accepting as minimum date can be added in Siebel is 01-01-1753. Solution: Corrected the date input.

There were more rows than could be returned Siebel SBL-EAI-04376

Steps: IO with two ICs as parent child,  trying to query using business service "EAI Siebel Adapter" method "Query" in child IC. Behavior: Workflow keep executing until application crashed. Reason: This usually occurs when try to query in Child IC and exclude the Parent IC in search spec. Error: Error invoking service 'EAI Siebel Adapter', method 'Query' at step 'Query IO'.(SBL-BPR-00162)--Method 'NextRecord' of business component 'Child BC' (integration component 'Child IC') returned the following error:"There were more rows than could be returned.  Please refine your query to bring back fewer rows(SBL-DAT-00500)"(SBL-EAI-04376)  Solution: Added parent IC in serarch spec as well. "[ParentIC.Case Num] = '" + [&CaseNumber] + "' AND [ChildIC.Id] = '" + [&RowNum] + "'"

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 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] +"'...