31
1 of 31 Running Enterprise Integration Manager Siebel 8.0 Essentials

Module 51 Running Enterprise Integration Manager

Embed Size (px)

Citation preview

Page 1: Module 51 Running Enterprise Integration Manager

1 of 31Running Enterprise Integration Manager

Siebel 8.0 Essentials

Page 2: Module 51 Running Enterprise Integration Manager

Module 49: Running Enterprise Integration Manager

Page 3: Module 51 Running Enterprise Integration Manager

3 of 31Running Enterprise Integration Manager

Module Objectives

• To know the process of importing external data successfully into Siebel database

• To understand the steps required for importing data through EIM– Populate interface (EIM) tables for imports– Modify configuration (.ifb) files for imports– Invoke an Enterprise Integration Manager (EIM) server task– Modify configuration (.ifb) files to optimize imports

Page 4: Module 51 Running Enterprise Integration Manager

4 of 31Running Enterprise Integration Manager

Interface Table• All interface tables have three required columns:

– IF_ROW_BATCH_NUM and ROW_ID are set by the user to uniquely designate a record

– IF_ROW_STAT is used by EIM to return status after an EIM run

• For import and merge processes, you must populate the ROW_ID, IF_ROW_STAT, and IF_ROW_BATCH_NUM columns

• For merge processes, you also need to populate the IF_ROW_MERGE_ID column

– Must be done for delete processes when you run DELETE EXACT

Page 5: Module 51 Running Enterprise Integration Manager

5 of 31Running Enterprise Integration Manager

Running an EIM Task for Data Imports

• 1. Populate EIM tables• 2. Determine Processing Order• 3. Run an EIM Task• 4. Verify EIM Task Results• 5. Remove Data from EIM Tables

Page 6: Module 51 Running Enterprise Integration Manager

6 of 31Running Enterprise Integration Manager

1. Populate EIM tables

• Populate source data into EIM tables using a non-Siebel process– Use database vendor utilities to load data from flat files– Use SELECT INTO to pull data from other SQL databases– Use direct SQL insert, update, or delete statements to update columns in

EIM tables– Use SQL queries to verify that EIM tables populated correctly

External Data

Interface Table

Non-Siebel Process

Page 7: Module 51 Running Enterprise Integration Manager

7 of 31Running Enterprise Integration Manager

2. Determine Processing Order• Edit the EIM configuration file (default.ifb) to determine the correct

processing order for EIM tables. – Customizes the behavior of EIM by defining the data you will import and

identifying the batch number to use– When importing, tables referenced via foreign key must be loaded first

Page 8: Module 51 Running Enterprise Integration Manager

8 of 31Running Enterprise Integration Manager

3. Run an EIM Task

• Creates an operating system (OS) process that reads the .ifb file, loads the dictionary, executes EIM steps, and writes log entries

• Direct the execution of an EIM task using a configuration (.ifb) file– Specifies the batch, order, and type of processing– Use default.ifb as a template

Page 9: Module 51 Running Enterprise Integration Manager

9 of 31Running Enterprise Integration Manager

Turn Off Transaction Logging

• Siebel Remote logs transactions to allow synchronization of mobile clients

• Transaction logging reduces EIM performance– Before initial loads, turn off logging• Navigate to Administration – Siebel Remote > Remote System

Preferences– After initial loads, turn on logging to support mobile clients• Turning off transaction logging in a running production system will require

subsequent re-extraction of all mobile user databases

Logging disabled during Initial Loads

Page 10: Module 51 Running Enterprise Integration Manager

10 of 31Running Enterprise Integration Manager

Create and Run an EIM Job

• Navigate to Administration - Server Management > Jobs

Page 11: Module 51 Running Enterprise Integration Manager

11 of 31Running Enterprise Integration Manager

Monitor the EIM Task

• Navigate to Administration - Server Management > Tasks– Query to view progress– Review Task Information Log

Page 12: Module 51 Running Enterprise Integration Manager

12 of 31Running Enterprise Integration Manager

4. Verify EIM Task Results

• Run SQL SELECT statements to verify the table data

Page 13: Module 51 Running Enterprise Integration Manager

13 of 31Running Enterprise Integration Manager

4. Verify EIM Task Results…

• After import, IF_ROW_STAT will contain a value that describes• the status of each imported row

Page 14: Module 51 Running Enterprise Integration Manager

14 of 31Running Enterprise Integration Manager

4. Verify EIM Task Results…

• Verify imported data in the application using appropriate views• Example: Products > Internal Product List

Page 15: Module 51 Running Enterprise Integration Manager

15 of 31Running Enterprise Integration Manager

4. Verify EIM Task Results…

• For troubleshooting:– Navigate to Administration – Server Management > Tasks– Find task number for EIM task– Examine log file in Siebel server log directory

Page 16: Module 51 Running Enterprise Integration Manager

16 of 31Running Enterprise Integration Manager

4. Verify EIM Task Results…

• Job parameters can override component-level event logging to create additional information in the log

– Trace Flags = 1• Records processing steps

– SQL Trace Flags = 8• Records summary SQL• Should only be done in test environment• Dramatically impedes EIM performance and generates large log file

– Error Flags = 1• Records details regarding failed rows

EIM Logging tasks used for troubleshooting

Page 17: Module 51 Running Enterprise Integration Manager

17 of 31Running Enterprise Integration Manager

5. Remove Data from EIM Tables

• You are responsible for removing records from the EIM tables• Use SQL to delete EIM table records once they have been successfully

processed

Page 18: Module 51 Running Enterprise Integration Manager

18 of 31Running Enterprise Integration Manager

Required Configuration (.ifb) Parameters

• Header Section Parameters– Should use the reserved name [Siebel Interface Manager]– CONNECT– PASSWORD– PROCESS– USERNAME

• USERNAME and PASSWORD can be specified as EIM Server component parameters also

• Process Section Parameters– BATCH– TABLE– TYPE

Page 19: Module 51 Running Enterprise Integration Manager

19 of 31Running Enterprise Integration Manager

Additional Configuration (.ifb) Parameters – Process Options

• Explicitly include or exclude tables and columns to avoid unnecessary processing

– Use ONLY BASE TABLES, ONLY BASE COLUMNS

or– Use IGNORE BASE TABLES, IGNORE BASE COLUMNS

Directs task to process only these target tables

Page 20: Module 51 Running Enterprise Integration Manager

20 of 31Running Enterprise Integration Manager

Process Options…

• Set options to control processing and enhance performance– Set USING SYNONYMS to FALSE to avoid unnecessary processing– USING SYNONYMS applies to accounts only

• Use SHELL to process multiple EIM tables/sections in a single run

Page 21: Module 51 Running Enterprise Integration Manager

21 of 31Running Enterprise Integration Manager

Additional Configuration (.ifb) Parameters –Import Options

• Set options to preprocess EIM rows and columns– Use FILTER QUERY to select a subset of EIM rows for processing– Use DEFAULT COLUMN or FIXED COLUMN to set values for EIM

columns

Page 22: Module 51 Running Enterprise Integration Manager

22 of 31Running Enterprise Integration Manager

Import Options …

• INSERT ROWS and UPDATE ROWS Parameters both have the default value is TRUE.

– To change this for all tables, use this syntax:• INSERT ROWS = FALSE

– To change only one table, specify the table name • UPDATE ROWS = S_PROD_INT, FALSE

– To change multiple tables, specify each table in a separate line• INSERT ROWS = S_PROD_INT, FALSE• INSERT ROWS = S_ADDR_ORG, FALSE

– If you need the parameter to be FALSE for most tables, and TRUE for only a few, use this method:

• UPDATE ROWS = FALSE• UPDATE ROWS = S_PROD_INT, TRUE• UPDATE ROWS = S_ADDR_ORG, TRUE

Page 23: Module 51 Running Enterprise Integration Manager

23 of 31Running Enterprise Integration Manager

• Setting TYPE = DELETE automatically sets DELETE ROWS = TRUE

• DELETE EXACT parameter specifies the base table rows to delete by using user key values specified in the EIM table.

– By default, DELETE EXACT = FALSE. – DELETE EXACT = TRUE must use the ONLY BASE TABLES parameter in

conjunction to identify the base tables.

Additional Configuration (.ifb) Parameters –Delete Options

To prevent deletion of rows from a specified table

Page 24: Module 51 Running Enterprise Integration Manager

24 of 31Running Enterprise Integration Manager

• DELETE MATCHES parameter specifies a WHERE clause expression for filtering base table rows.

– The value is in two parts: the Siebel base table name and the filter expression that goes against the target base table.

– Filter expression is a self-contained WHERE clause expression • Should use only literal values or column names

Delete Options…

Page 25: Module 51 Running Enterprise Integration Manager

25 of 31Running Enterprise Integration Manager

• At least one process should be defined with TYPE = EXPORT.• EXPORT ALL ROWS used to export all rows from the tables that are

mapped in an EIM table

Additional Configuration (.ifb) Parameters –Export Options

Example: To define an export process from the S_PARTY table and its extension tables

Page 26: Module 51 Running Enterprise Integration Manager

26 of 31Running Enterprise Integration Manager

Primaries

• Improve performance by eliminating sub-queries when displaying data from parent and child tables

• If primaries are not used, a new query needs to be executed to identify any child records each time a parent record is displayed

• Two types of Primary settings:– Explicit Primary– Implicit Primary

Page 27: Module 51 Running Enterprise Integration Manager

27 of 31Running Enterprise Integration Manager

Explicit Primary• Use the Primary flag to set explicit primaries through EIM

– Use when the external system knows which child should be primary

• If you always want to use explicit primaries, use MISC SQL parameter:

– Ex: MISC SQL = EXPR_S_PROD_INT_TNTX_PR_CATEGORY_ID

Page 28: Module 51 Running Enterprise Integration Manager

28 of 31Running Enterprise Integration Manager

Implicit Primary

• Allow EIM to implicitly set primaries– Use when the external system does not know the primary– Sets the primary to be the child with the lowest ROW_ID– Mimics auto primary in the application

• If you always want to use implicit primaries, use MISC SQL parameter– MISC SQL = IMPR_ S_PROD_INT_TNTX_PR_CATEGORY_ID

Page 29: Module 51 Running Enterprise Integration Manager

29 of 31Running Enterprise Integration Manager

Using EIM with Database Modifications

• To populate base table extension columns through EIM:– Add an extension column to the EIM table– Map the EIM column to the base column– Test the mapping by running EIM on the server

• Use the Interface Table Mapping Wizard

Base Table

Base table Extension Column

EIM Extension Column

EIM Table

Page 30: Module 51 Running Enterprise Integration Manager

30 of 31Running Enterprise Integration Manager

Using EIM with Database Modifications…

• Update EIM table mappings to include columns or tables you have added using the Interface Table Mapping Wizard

• Select the table in Tools, right-click, select EIM Table Mapping… and complete the wizard

Page 31: Module 51 Running Enterprise Integration Manager

31 of 31Running Enterprise Integration Manager

Module Highlights

• Three required columns are there in an EIM table are:– IF_ROW_BATCH_NUM– ROW_ID– IF_ROW_STAT

• EIM import steps are:– Populate EIM tables– Create an EIM configuration file (.ifb)– Run an EIM job– Verify job results– Remove EIM table records

• Parameters that can speed EIM processing:– No transaction logging– Process and import options in .ifb file

• Can set primaries during EIM import