Siebel EIM >  SBL-EIM-00999 Internal failure, see preceding message for more details

SBL-EIM-00999 Internal failure, see preceding message for more details

EIM Import to Populate Custom Fkey ( Foreign Key ) Fail with SBL-EIM-00205, Error SBL-EIM-00999: IF Table has Cyclic Dependencies

 

This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.


APPLIES TO:
Siebel CRM - Version 8.1.1.14.13 [IP2014] and later
Information in this document applies to any platform.
SYMPTOMS
On : 8.1.1.14.13 [IP2014] version, EIM

ACTUAL BEHAVIOR
---------------
Unable to load data in table S_WRNTY_CLAIM

We are unable to load the data in S_WRNTY_CLAIM siebel base table through EIM. We are getting error "Failed to load the application dictionary". We have generated detailed log file by increasing EIM Component log level to 5 and setting the below flags while triggering IFB:

Error Flags: 1
Trace Flags: 1
SQL Trace Flags: 8

This error started happening after we used the EIM Table Mapping Wizard to automatically add new column mappings for custom S_WRNTY_CLAIM extension columns that are defined as foreign key columns to S_WRNTY_CLM_IT.

Why is this error happening? What does the "cyclic dependencies" error mean?

Note, that if EIM_WRNTY_CLM does not have custom mappings created by the EIM Table Mapping Wizard, this error does not happen.

Our business requirements need to populate the custom S_WRNTY_CLAIM fkey columns to the child S_WRNTY_CLM_IT table.

The detailed log file shows the error below..

"Error SBL-EIM-00999: IF table EIM_WRNTY_CLM has cyclic dependencies (at S_WRNTY_CLAIM)!
Error SBL-EIM-00205: Failed to load the application dictionary."

 

EIMError EIMErrorSubEvent 0 00000006570315e8:0 2016-04-05 16:50:44 Error SBL-EIM-00999: IF table EIM_WRNTY_CLM has cyclic dependencies (at

EIMError EIMErrorSubEvent 0 00000006570315e8:0 2016-04-05 16:50:44 S_WRNTY_CLAIM)!

EIMError EIMErrorSubEvent 0 00000006570315e8:0 2016-04-05 16:50:51

EIMError EIMErrorSubEvent 0 00000006570315e8:0 2016-04-05 16:50:51 Error SBL-EIM-00205: Failed to load the application dictionary.

GenericLog GenericError 1 00000006570315e8:0 2016-04-05 16:50:51 (compmain.cpp (1565) err=65741 sys=0) SBL-EIM-00205: Failed to load the application dictionary.

GenericLog GenericError 1 00000006570315e8:0 2016-04-05 16:50:51 (smisched.cpp (923) err=65741 sys=0) SBL-EIM-00205: Failed to load the application dictionary.

CAUSE
Testing with the "out of the box" EIM table completed without "cyclic dependencies" error.
Therefore, it must be an issue with the custom EIM table mappings that were added for extension columns.


Now, your custom FKey columns are saying that there are "Additional" relationships between S_WRNTY_CLAIM and S_WRNTY_CLM_IT using your custom X S_WRNTY_CLAIM extension foreign keys..
Ca

SOLUTION
The following discussion explains why EIM is failing with the "cyclic dependencies" EIM error when EIM_WRNTY_CLM has custom mappings to a child table where it already has an "out of the box" relationship defined for that child table.

The "out of the box" EIM_WRNTY_CLM eim table has a mapping to the target base table, S_WRNTY_CLAIM.
EIM_WRNTY_CLM also has a mapping to the child table S_WRNTY_CLM_IT table with the "out of the box" parent child 1:M relationship.
The standard "vanilla" relationship between S_WRNTY_CLAIM and S_WRNTY_CLM_IT uses a vanilla fkey column that points to the parent record. EIM_WRNTY_CLM table definition understands this Parent Child relationship between S_WRNTY_CLAIM and S_WRNTY_CLM_IT. The custom FKey columns are saying that there are "Additional" relationships between S_WRNTY_CLAIM and S_WRNTY_CLM_IT using the custom S_WRNTY_CLAIM extension column foreign keys.

The "cyclic dependency" is caused by the fact that EIM_WRNTY_CLAIM already understands the out of the box 1:M parent/child relationship between S_WRNTY_CLAIM and S_WRNTY_CLM_IT,but the new mappings are defining additional different relationships between S_WRNTY_CLAIM and S_WRNTY_CLM_IT.

In this case' the customer was able to use EIM_WRNTCLMDTL to populate the custom fkey columns to S_WRNTY_CLM_IT. The standard EIM_WRNTCLMDTL table does not an "out of the box" mapping to S_WRNTY_CLM_IT, so it is possible to use the EIM Table Mapping wizard on this eim table for these custom fkey columns.