EIM Process
EIM Process
EIM Process
EIM is used to export the bulk data from External Data Loads like SAP, Main Frames etc to Siebel base
tables.
1. Data will come from any third party database either from Main Frames or SAP or Excel etc is usually sent
in the form of excel (XL) sheet and it is called as Flat file. The below mentioned excel sheet is of contact
data that need to import into the Siebel base tables.
C:\Documents and
Settings\181919\Desktop\EIM Case Study\Data Mapping Sheet.xls
To update:
Alter table tablename modify column datatype.
5. Create a control file with .ctl extension (e.g.: xyz.ctl) to load data into staging table. In this file, data.csv
and bad files names is passed as an inputs .Place it in the Folder which you have created in the C Drive
E.g.: EIM
C:\Documents and
Settings\181919\Desktop\EIM Case Study\Load_Contact.ctl
6. Go to Command Prompt and mention the path where you have created your folder as EIM i.e., Go to C
DriveEIM in command prompt
3
Skip is used to delete the first row in the flat file as that describes the name of the columns in the XL
sheet eg: column names in the first row.
Log file gives the detailed explanation of rows that were not successfully processed and the reason.
Go to flat file i.e., external data as they have mention as contact data then
Login to Siebel tools Go to Contact Business Component field Copy the column names
in the flat file query with that column names in the tools find out from which base table the column is
coming from.
For the above mention data, all the columns are from S_CONTACT
Then find out which EIM table is mapped to S_CONTACT and which EIM Column is mapped to
the corresponding Siebel base Column.
The following steps is find out which base table is mapped to which EIM table
Login to Siebel tools Object ExplorerFLAT EIM Table mapping e.g.: Query with
S_CONTACT in Name column for the given case study.
From above query you will find out many tables that are mapped to S_CONTACT .First Prefer
EIM_CONTACT .If you do not find any of the columns specified in the flat file then go to EIM_CONTACT1,
EIM_CONTACT2, EIM_CONTACT3……………….
4
Login to Siebel tools Object ExplorerTypesEIM Interface Table Query for EIM_CONTACT
table which you have selected earlier EIM Table Mapping
5
Query for the required Columns of the base table in the Base Table Attribute Column and get the
corresponding EIM Columns of the Interface Table.
Now you know that your base table is S_CONTACT .But for populating this base table you need to
populate the corresponding base tables S_CONTACT_BU and S_POSTN_CON also.(Ref Doc : ITR.pdf)
All user key and required columns for S_PARTY, S_CONTACT and also populate the column which are
been sent through the flat file.
Assign Default values for the user key and required columns.
User Key which is not required is not necessary to populate into the EIM Columns and Siebel base
Columns.
Map all Siebel required columns to the corresponding EIM Columns as shown in doc
C:\Documents and
Settings\181919\Desktop\EIM Case Study\Data Mapping Sheet.xls
In Case of joins, go to foreign key table and populate that column and the required columns for the joined
table Eg:
6
In Case of Multivalued Fields, Go to Siebel base column search for the MVL link and destination field
name Go to the MVL find the Destination BC Drill down to that BC query with the destination field
and get the column name
Find the table from which the column is coming from and populate all the required columns for that table
and map the columns to the corresponding columns in the EIM table.
While inserting a record into the EIM table through procedure these three columns are mandatory.
I. ROW_ID: This column will be any sequence that should be the unique.(in procedure you can
create any sequence ).
II. IF_ROW_BATCH_NUM: For 5000 records a single batch number is preferable
III IF_ROW_STAT: When populating the interface 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 to be
imported. After processing, if certain rows were not imported due to a data error, you should
change the values.
C:\Documents and
Settings\181919\Desktop\Procedure Insert.doc
Now data has been transfer into EIM Tables. Use the below query to verify the data has loaded into the
EIM tables correctly or not
We have to run server task to populate data from EIM tables to Siebel base tables using Configuration
file with extension as .ifb.
This configuration file .ifb file which basically tells which column from the Siebel interface table is
mapped to which corresponding column in the base table.
7
Ensure that configuration file should be placed in server/admin folder in server. If configuration
file is not found in the above path, Server Manager will take the default ifb file.
Create a new record with name as Enterprise Integration Manager in the Applet name ‘Job’ then scroll the
screen.
Then you will see one more applet with name as ‘Job Parameters’ and fill the parameters as mention
in the above picture.
If there is more than one process in your ifb file then mention the process name that you want to run and
mention the ifb file as shown in the above picture.
Setting the Error Flags, SQL Trace Flag and Trace Flag parameters which create a log file in the
severe \admin\log which gives the detailed explanation of rows that were not successfully processed.
Use the below Query to check whether all the records are imported correctly or not into the Siebel
database.
Select * from Siebel.s_contact;
If data is not imported then use below query to check the IF_ROW_STAT (status) of the EIM Table
If the column IF_ROW_STAT is IMPORTED then yours records are loaded successfully.
If the column IF_ROW_STAT is PARTIALLY IMPORTED then only the base table records are loaded
successfully not the extension columns.
If the column IF_ROW_STAT is NOT IMPORTED then yours records are not loaded successfully as some user
key and required column are not populated.
So check your default values once again and make sure that all the user key and required columns should be
populated