Organization Columns  

Posted by Rajesh

The EIM_ type interface tables use the xxx_BU/xxx_BI column pairs to map organizations. For
example, the CON_BU/CON_BI column in the EIM_CONTACT interface table is mapped to the BU_ID column in the S_CONTACT base table.

In order for organizations to be resolved properly, you need to populate the xxx_BU column with the organization name and leave the xxx_BI column empty. Do not populate the xxx_BU column with the organization ROW_ID. EIM looks up the ROW_ID for the organization in xxx_BU and puts it in the corresponding xxx_BI column.

File Attachment Columns  

Posted by Rajesh

Three EIM table columns must be populated in order to import file attachments. Table describes these columns and uses the attachment file budget99.doc as an example.

Table . File Attachment Columns
This column requires the root filename of the file
attachment. (ex FILE_NAME=.budget99.)
FILE_EXT: This column requires the extension type of the file attachment (DOC, XLS, or TXT). (ex FILE_EXT="doc")
FILE_SRC_TYPE: This column requires the value "FILE" or the rows
cannot be imported. (ex FILE_SRC_TYPE="FILE")

You can also use these columns to define hyperlinks,.
Defining Hyperlinks With File Attachment Columns
Column Setting
FILE_NAME Set to actual URL

Temporary columns.  

Posted by Rajesh

EIM uses temporary columns to manipulate data during processing. For example, EIM might store the ROW_ID value for a Siebel base table in a temporary column. These column names begin with T_ and indicate the table or column for which they are used. Because EIM uses these columns internally during processing, do not manipulate these columns in the EIM tables.

Mandatory Columns for EIM Processing  

Posted by Rajesh

ROW_ID. For an EIM table row to be eligible for processing, you must initialize its ROW_ID. The ROW_ID, in combination with the value of IF_ROW_BATCH_NUM, must yield a unique value. The ROW_ID values in the EIM tables are not the ROW_ID values that are assigned to the row when it is loaded into the base table. An EIM-generated ROW_ID has a ##-###-### format. A regular row ID that is assigned to the row has a #-## format.

IF_ROW_BATCH_NUM. You must set the values in this column to the same integer, greater than or equal to 0, as an identifying number for all rows to be processed as a batch. The maximum value is 2147483647. Use this column as the first key of any new indexes created on an EIM table.

IF_ROW_MERGE_ID. You can set this column to one of two values:
■ NULL: This value identifies the surviving or merged-into-row.
■ROW_ID:This value identifies the ROW_ID number in the EIM table where the row will be

IF_ROW_STAT. EIM updates this column after processing the row to indicate the status of the record. The IF_ROW_STAT column is not used by EIM when determining which rows to process. When populating the EIM tables, you can set this column to any value except NULL. You can initially set this value to FOR_IMPORT to indicate that the row has not been imported. After processing, if certain rows were not imported due to a data error, you should change:
■ IF_ROW_BATCH_NUM value for the rows that require reimporting
■ BATCH line in the configuration file
If EIM updates this column to NOT_ALLOWED after processing a row, EIM has attempted to insert a new row but the action is not allowed. In such cases, the INSERT ROWS parameter may have been set to FALSE.

IF_ROW_STAT_NUM. After processing, this column contains a zero (0) if a row was successfully processed to completion. If processing failed, this column contains the pass number where the pass failed.

EIM Table Columns  

Posted by Rajesh

Running EIM is an iterative process, with each step accomplishing specific tasks and moving toward successful completion of the entire process. To process on a row-by-row basis, EIM uses several columns common to every EIM table. These columns are described in this section.
Several columns are mandatory. Others are conditionally mandatory, depending on the conditions of your import. To determine mandatory columns, use Siebel Tools to view each column in an EIM table and the EIM table.s target base table columns.
By following the recommended import sequence, you make sure that the appropriate data
dependencies are established.

NOTE: For import and merge processes, you must populate the ROW_ID, IF_ROW_STAT, and IF_ROW_BATCH_NUM columns in the EIM tables. This also must be done for delete processes when you run DELETE EXACT. For merge processes, you also need to populate the IF_ROW_MERGE_ID column. Do not populate these required columns with spaces because a space does not equal a NULL value.

EIM Table Naming Conventions  

Posted by Rajesh

EIM tables in the Siebel database use a three-part naming convention; the syntax is:
PREFIX_NAME_SUFFIX. These three parts are described as follows:

■PREFIX. All interface tables used by EIM have the prefix EIM_ (such as EIM_ACCOUNT). These EIM tables support Organizations, so they can be used for all EIM processes.
NOTE: Previous versions of EIM used a different set of EIM (interface) tables, identified by the
prefix S_ and the suffix _IF. These tables still appear in the Siebel database, but are inactive.
These tables will not be included in the Siebel database in future versions. If you need these
tables activated temporarily, contact Siebel Expert Services.

■ NAME. A unique table name that is generally composed of an abbreviation of an entity type
name. If more than one EIM table is required to fully support an entity, a sequential number may be added to the name of each table after the first one.

■ SUFFIX. A supertype name may be followed by a suffix that indicates the types of data
supported by the EIM table or to distinguish it as an EIM table.

EIM Tables Overview  

Posted by Rajesh

Siebel EIM tables are intermediate database tables that act as a staging area between the base
tables in the Siebel database and other databases. EIM tables are designed to be simple and
straightforward so they can be loaded or read by way of external programs.This section provides an overview of how EIM works with these EIM tables and how table names are derived.

EIM Functions  

Posted by Rajesh

1 Import Data into Siebel Base Tables:
The EIM import function can be used in several different ways:

  • When initially implementing a Siebel application, load the Siebel database tables with data and file attachments created by external applications. For example, you can import information about product lines and products from an inventory control database into the Products entity in the Siebel database.
  • As part of maintaining the Siebel database, you can use EIM for data archival. This not only provides customers with a Siebel database that is optimally using the resources available to it, but also streamlines the implementation of a corporate data archival strategy.
  • As part of maintaining a non-Siebel database, you can update it with information from the Siebel database. For example, you might add new customers to an accounting database from the Siebel database.

2 Export Data from Siebel Base Tables:
The data contained within a Siebel application is available for transfer to non-Siebel applications by using EIM. When implementing a non-Siebel application, you can export data from the Siebel
database tables for use by that application. For example, you can export employee information to a corporate sales commission application.

3 Delete Data from Siebel Base Tables:
As part of maintaining the Siebel database, you can identify rows to be deleted from a table and its associated child and intersection tables. For example, you might delete an obsolete product line and its associated products.

4 Merge Data in Siebel Base Tables:

In response to such external events as corporate mergers, you can merge two or more database rows into a single row. For example, you might merge the Frame, Inc. account information into the Adobe Corp. account.

Process Flow Between EIM and Other Database  

Posted by Rajesh

Figure., illustrates the following processes:
■ How a non-Siebel database uses an SQL ancillary program utility to receive or send data to Siebel EIM tables.
■ How Siebel EIM is used to move data between Siebel EIM tables and Siebel base tables.

For each EIM process, you need to complete the following sequence of steps.

1 Prepare the EIM tables. For delete, merge, or import operations, the EIM tables require loading with representative data that allows EIM to identify the specific Siebel base table on which to operate. You can use either an SQL ancillary program utility or native SQL to perform this function. The structure of the EIM tables has the required mappings for the primary (or target) base table and other base tables that are serviced by the EIM table. The EIM export processes require minimal preparation of the EIM tables. When an export operation takes place, the EIM tables are populated with data from the Siebel base tables. Therefore, you can use either an SQL ancillary program or native SQL to transfer data from the Siebel application to a non-Siebel application...

2 Edit the EIM configuration file. An ASCII or Unicode (binary) text file of extension type .IFB that resides in the Siebel Server/admin directory allows you to define the type of EIM processes to be performed: Export, Delete, Merge, or Import.

3 Run EIM. EIM is submitted as a Siebel Server batch component task either from the
Administration - Server Management views or from the Server Manager command line interface.

4 Check results. The EIM component task produces a log file, which provides tracing information about the process. The tracing information produced is variable dependent upon the EIM component task parameters used and the Siebel Server event logging deployed for the EIM component. As always, during testing operations you should check the EIM processes using
increased tracing information, and then reduce tracing when the process is deployed to

Siebel EIM  

Posted by Rajesh

Siebel Enterprise Integration Manager (EIM) is a server component in the Siebel eAI component group that transfers data between the Siebel database and other corporate data sources. This exchange of information is accomplished through intermediary tables called EIM tables. (In earlier releases, EIM tables were known as interface tables.) The EIM tables act as a staging area between the Siebel application database and other data sources.

EIM is your primary method of loading mass quantities of data into the Siebel database. You should use EIM to perform bulk imports, updates, merges, and deletes of data. Examples of each of the main EIM functions (import, export, update, and delete) are provided in .EIM Functions..
In the Siebel application database, there are application tables (known as base tables), which Siebel applications use. For data to come from other corporate data sources (external databases) into Siebel application tables, the data must go through EIM tables. So the data exchanges between the Siebel database and external databases occurs in two parts:
1 Load data into EIM tables.
2 Run Siebel EIM to import the data from the EIM tables into the Siebel base tables.

NOTE: While the first part of this data-exchange process involves the intermediary tables that are called EIM tables, only the second part of the process involves the functionality of Siebel EIM.

When data is entered through the Siebel user interface, the application references properties set at the business component object type. However, when data is entered into Siebel base tables through EIM, EIM references properties set at the table object type.