Search This Blog

SBL-EAI-04381: For instance of Integration Component '%1', using user key '%2', a record with identical values already exists in the Siebel database

Applies to: Siebel System Software - Version: 7.8.2.3 [19221] and later [Release: V7 and later ]
z*OBSOLETE: Microsoft Windows Server 2003
Product Release: V7 (Enterprise)
Version: 7.8.2.3 [19221]
Database: Microsoft SQL Server 2000
Application Server OS: Microsoft Windows 2003 Server SP1
Database Server OS: Microsoft Windows 2003 Server SP1

This document was previously published as Siebel SR 38-3440380493.
***Checked for relevance on 25-FEB-2011***
SymptomsSBL-EAI-04381
The EAI Siebel Adapter, Upsert method, is called via in inbound web service. While updating some records, an error is sometimes (intermittently) reported saying that the record already exists, and no inserts are allowed. This is not expected behaviour as the upsert method in this case should do an update of the record. The log files gives us the following errors:

DBCLog DBCLogError SQLError: [23000],[Microsoft][ODBC SQL Server Driver][SQL Server]Cannot insert duplicate key row in object 'dbo.S_ORG_EXT' with unique index 'S_ORG_EXT_U1'.

ObjMgrLog Error (adptutils.cpp (5137)) SBL-EAI-04381: For instance of Integration Component 'Account For TEAM', using user key '[CSN] = "10017918"', a record with identical values already exists in the Siebel database.
CauseThe user key was the CSN field, and the value 10017918 did already exist. With detailed logging, the SQL used by the EAI Siebel Adapter to check for the presence of the Account was seen to include an inner join from S_ADDR_ORG.ROW_ID to S_ORG_EXT.PR_ADDR_ID :

INNER JOIN dbo.S_ADDR_ORG T3 ON T2.PR_ADDR_ID = T3.ROW_ID

This was due to the configuration of the custom Business Component ('Account For TEAM'), where a join to S_ADDR_ORG was indeed set as a inner join (so if no address was present, no row could be returned for the BusComp).
SolutionWith the join marked as an outer join, the query generated through the EAI Siebel Adapter could return a row, and the existing Account could be updated.









Applies to: Siebel Call Center - Version: 8.1.1.2 and later [Release: V8 and later ]
Information in this document applies to any platform.
SymptomsThe EAI Siebel Adapter is used to upsert Account / Address data. The user key field (Street Address) of the child component (Account_Business Address) includes special characters, like hex 0A (linefeed) or 0C (carriage return).

In the first call of the EAI Siebel Adapter upsert, IO is Account > Account_Business Address, and the user key on Account_Business Address includes a field (e.g. Street Address), which may contain hex 0A, all data in created fine.

On second call (upsert) with exactly the same data, EAI Siebel Adapter does not recognize that the address already exists, and tries to create again. So it fails, because the address already exists, with error :-

SBL-DAT-00381: A record that contains identical values to the record you have created already exists.

If you would like to enter a new record, please ensure that the field values are unique.

SBL-EAI-04381: For instance of Integration Component 'Account_Business Address', using user key '[Street Address] = "1234 Bognor Street" AND [City] = "Bognor" AND [State] = "CA"', a record with identical values already exists in the Siebel database.

Please ensure that the field values in the input message are unique.
CauseThis is due to presence of special characters in user key fields (EAI Siebel Adapter is not recognizing the same values exist, and tries to re-create).

The following change request is logged :-

Bug 10600277 - SBL-EAI-04381 when user key contains special character (e.g. linefeed hex 0A)
SolutionTo avoid this situation, ensure the user key fields do not contain these special characters.









Applies to: Siebel System Software - Version: 7.5.3.5 SIA [16183] and later [Release: V7 and later ]
z*OBSOLETE: Microsoft Windows 2000
Product Release: V7 (Enterprise)
Version: 7.5.3.5 [16183] SVE Fin Svcs
Database: Microsoft SQL Server 2000 SP3
Application Server OS: Microsoft Windows 2000 Advanced Server SP 3
Database Server OS: Microsoft Windows 2000 Server SP 3

This document was previously published as Siebel SR 38-1618255191.
***Checked for relevance on 11-JAN-20111***
SymptomsWhile trying to create a new Integration Object in Siebel Tools,the following errors are seen:

Error occurred during wizard processing. Please press the "Next Error" button to determine the cause of failure.(SBL-DEV-00380)

For instance of Integration Component 'Repository Integration Component Field', using user key '[External Name]="Id"', a record with identical values already exists in the Siebel database.

Please ensure that the field values in the input message are unique.(SBL-EAI-04381)

CauseIt was possible to create the Integration Object on the Server database and it was also possible in Sample using the same Business Object definition.

This meant the local database was somehow corrupt.
SolutionGenerate a new local database to get rid of the corruption and successfully create the integration object.









Applies to: Siebel Campaigns - Version: 7.8.2 SIA [19213] to 8.0.0.9 SIA[20433] - Release: V7 to V8
z*OBSOLETE: Microsoft Windows 2000
Product Release: V7 (Enterprise)
Version: 7.8.2 [19213]
Database: IBM DB2 8.2
Application Server OS: Microsoft Windows 2000 Server SP 2
Database Server OS: IBM AIX 5L 5.3

This document was previously published as Siebel SR 38-3450613081.
SymptomsSBL-DAT-00382, SBL-EAI-04451
The following error shows when we importing "Marketing Campaign Load" workflow after adding a wait step :

*******
Error Message:
For instance of Integration Component 'Repository WF Step I/O Argument', using user key '[Input Flag] = "O" AND [Name] = "O:Update Schedule Activity1'", a record with identical values already exists in the Siebel database.

Please ensure that the field values in the input message are unique. (SBL-EAI-04381).
*******

CauseOutput argument "Recurring Request" at step "Update Schedule Activity" is defined twice. On deleting the duplicate argument import process is ran successfully.
SolutionMessage 1For the benefit of other users:
This behavior is experienced when using Siebel Industry Applications.

The defect was identified in the standard workflow process (WFP) in Siebel Tools for v7.8.2.x SIA, and v8.0.x.x SIA connected to Sample DB v7.8.2.2 SIA:
WFP: Marketing Campaign Load
WF Step: Update Schedule Activity
WF Step I/O Arguments:
Campaign Id (Process Property)
O:Update Schedule Activity1 (Output Argument: Recurring Request)
O:Update Schedule Activity2 (Output Argument: Recurring Request)
Activity Id (Process Property)

A similar configuration exists in the following standard workflow process:
WFP: Marketing Stage Execution
WF Step: Update Schedule Activity
WF Step I/O Arguments:
Stage Id (Process Property)
O:Update Schedule Activity1 (Output Argument: Recurring Request)
O:Update Schedule Activity2 (Output Argument: Recurring Request)
Activity Id (Process Property)

Change Request 12-1L4KJYZ has been created to request that these two WFPs be changed in a future version of the Siebel application.

The solution fr this issue is to delete the duplicate argument.

Additional Keywords: workflow process step I/O argument, BS: Campaign Execution, Stage Execution, Method: UpdateActivity









Applies to: Siebel CRM - Version: 8.1.1.1 [21211] and later [Release: V8 and later ]
Information in this document applies to any platform.
Symptoms
Comments
--------
error when importing PublicReportService_v11.wsdl

For instance of Integration Component 'Repository Operation', using user key '[Operation Name] = "impersonate", a record with identical values already exists in the Siebel database.

Please enure that the field values in the input message are unique. (SBL-EAI-04381)
Cause
It was verified that during the WSDL file import process the INSERT operation on the S_WS_OPERATION table violated the INDEX (SIEBEL.S_WS_OPERATION_U1)

Error message:

(oracon.cpp (3211)) SBL-DBC-00111: An error has occurred writing to a record.

ORA-00001: unique constraint (SIEBEL.S_WS_OPERATION_U1) violated
ORA-06512: at line 6

SBL-DAT-00381: A record that contains identical values to the record you have created already exists.

SBL-DAT-00382: The same values for 'Operation Name, ProxyName' already exist.

SBL-EAI-04381: For instance of Integration Component 'Repository Operation', using user key '[Operation Name] = "impersonate"', a record with identical values already exists in the Siebel database.

Please ensure that the field values in the input message are unique.


SolutionIn order to avoid this issue:


1) Delete the business service PublicReportService and all related integration objects prior to running the WSDL wizard per Reports Bookshelf

Using Siebel Tools, delete the PublicReportService outbound Web service and related integrated objects by doing the following:

a Log in to Siebel Tools.
b Query for the PublicReportService business service, and then remove this object.
c Select Integration Object, query for the XMLP Integration project, and then remove all selected objects.

2) Also delete the old PublicReportService web service declaration in the Siebel GUI (Outbound Web Services) and importing the new one from the xml file generated in Tools.

3) The following SQL example can be used to identify orphaned records in the DB.


SELECT
T4.ROW_ID
T4.NAME ,
T4.INBOUND_FLG

FROM

SIEBEL.S_WS_PORT_OPER T1,
SIEBEL.S_WS_OPERATION T2,
SIEBEL.S_WS_PORT T3,
SIEBEL.S_WS_WEBSERVICE T4
WHERE
T1.OPERATION_ID = T2.ROW_ID AND T1.PORT_ID = T3.ROW_ID AND T3.WEB_SERVICE_ID = T4.ROW_ID AND
(T2.NAME = 'impersonate' AND T2.PROXY_NAME ='PublicReportService');


After deleting the old objects the WSDL was imported.










Applies to: Siebel System Software - Version: 7.7.1 [18306] and later [Release: V7 and later ]
Oracle Solaris on SPARC (64-bit)
Product Release: V7 (Enterprise)
Version: 7.7.1 [18306]
Database: Oracle 9.2.0.4
Application Server OS: Sun Solaris 8
Database Server OS: Sun Solaris 8

This document was previously published as Siebel SR 38-1448301541.
SymptomsHello,

We are having a problem importing iHelp item definitions in Siebel 7.7.1

To test this I carried out the following steps:

Connecting to the Client in a Vanilla instance of Siebel I navigated to Administration > iHelp.
There was one existing iHelp record called 'Create an iHelp item'. I copied this to create another record (right click Copy Record) and named the second record test1.

Next I exported the 'test1' record by selecting the 'Export iHelp Item Definition' option from the menu. When this had successfully exported I deleted the 'test1' record from the GUI and then tried to import the test1.xml file using the 'Import iHelp Item Definition' option from the menu.

On doing this I recieved an error "Method Write Record of business component Task Application (integration component Task Application) for record with search spec [Application] IS NULL returned the following error. An error has occurred writing to a record. Please continue or ask your Systems Administrator to check your application configuration if the problem persists."

What should we be doing to stop this happening?
CauseSBL-DBC-00111, SBL-EAI-04451, SBL-EAI-04381
SolutionFor the benefit of the readers,

Symptoms:

Customer experienced a failed import of the copy of the seed iHelp "Create an iHelp Item”

Resolution:

The error message SBL-EAI-04451 indicated a failed import due to a NULL value.

By reviewing the data of the XML file generated, it appears that among the field Application Multi Value Group (MVG), none of the value of the seed data "Create an iHelp Item” matched the current Application Name.

If a new record is created, you will notice that the current Application Name will be defaulted and by opening this MVG, you will notice that none of the value of the seed data "Create an iHelp Item" can be selected.

It was verified that the export/import was working as expected on any other records.

To circumvent this behavior, the XML was manually corrected.

Change Request (12-O1WMXL) has been created to request the update of the seed data in a future release.


Likelihood of Occurrence:
7.7.1











Applies to: Siebel Universal Customer Master - Version: 8.1.1 SIA [21111] and later [Release: V8 and later ]
Information in this document applies to any platform.
GoalDuring Link & Update operations by data stewards in the Incoming Duplicates screen in Siebel UCM (on the same records, simultaneously), following errors occurred :-
SBL-DAT-00523 - The selected record has been modified by another user since it was retrieved.
SBL-EAI-04381 - For instance of Integration Component 'Contact_INS_Personal_Address' using user key "xxxx", a record with identical values already exists in the Siebel database.
Simularly, when two users simultaneously click Create New button on the same record, one user receives an error :-
SBL-IAI-00449 - UCM BC Dedup Search failed to return results from no rows from UCM Contact Source Data and History
How can these errors be avoided ?
SolutionCurrently, there is no provided functionality to avoid these errors if multiple data stewards are processing the same records simultaneously. Therefore, an enhancement change request has been logged :-

BUG 10602140 - UCM - Incoming Duplicates, Link and Update, Create New, conflict with other users

Aside from ensuring no two data stewards are accessing the same record at the same time, one possibility would be custom logic through configuration and scripting, to allow a data steward to 'lock' a target record before the link or create operation.
ReferencesBUG:10602140 - UCM - INCOMING DUPLICATES, LINK AND UPDATE, CREATE NEW, CONFLICT WITH OTHER USERS









Applies to: Product Release: V7 (Enterprise)
Version: 7.7.2 [18325] Com/Med
Database: Oracle 9.2.0.5
Application Server OS: Microsoft Windows 2003 Server SP1
Database Server OS: IBM AIX 5L 5.2

This document was previously published as Siebel SR 38-2417173111.
SymptomsSBL-EAI-04381
We have a production environment where an order is raised against a billing account.Once the order is sucessfully submitted to EAI after that we receive a inbound message from EAI.The inbound process involves creation of Asset against the service account.

The creation of Asset is happening using the siebel OOB workflow "SIS OM Apply Completed Service Order Line Item to Service Profile".

The step in the WF "Sync Asset" is giving an error "For instance of Integration Component 'Line Item', using user key '[Integration Id] = "1-NZ5O1Y"', a record with identical values already exists in the Siebel database." We tried searching the database with the above integration id but there were no records found in the S_ASSET table.

We tried simulating the WF by giving the inputs Asset Integration Id(Root Order Item's Integration Id),Order Header Id(Order Row Id),Object Id(Root Order Line Item Id),Root Id(Root Order Item Id) but we encountered the same error.

We tried changing the User Key:2 for the integration object "SIS OM Asset" for Integration Component "Asset Mgmt - Asset" from Integration Id to Id and Integration Id to Order Integration Id but could not get rid of the error, hence we have reverted back.

The SQL Log while simulating the WF and the screen shot are attached with this SR.
The sample XML message before the step SYNCH asset is also attached with this mail.

Regards
SolutionMessage 1For the benefits of other user:

The issue was determined with some of the triggers, generated for the workflow policies. After inactivating these policy, this issue does not occur.

Keywords: EAI, EAI Siebel Adapter, Execute

Show Related InformationRelated


Products


Siebel > Customer Relationship Management > CRM - Enterprise Edition > Siebel Workflow

Errors



SBL-IAI-00449; SBL-DAT-00523; SBL-EAI-04381

No comments:

Post a Comment