Configuring Siebel Business Applications > Reusing Predefined Objects > Process of Determining If You Can Reuse a Predefined Object >
Determining If You Can Reuse a Predefined Table Column
This task is a step in Process of Determining If You Can Reuse a Predefined Object.
This topic describes the factors you must evaluate when you consider reusing a predefined table column. Reusing a predefined table column if there is not a good technical or functional fit can lead to a poor result. In this situation, it is better to create a new, custom field or column. For more information, see Options to Customize the Data Objects Layer.
To determine if you can reuse a predefined table column
- Consider table columns that Siebel Remote uses:
- Do not use a field or column that controls Siebel Remote behavior.
Siebel Remote uses the ENTERPRISE_FLG column to implement visibility on records that use normal visibility constraints. Siebel Remote might use other columns to control download behavior, such as the RTE_CONTACTS_FLG or RTE_PRSP_CONS_FLG column on the S_SRC table. For more information, see Configuring Dock Objects for Siebel Remote.
- Choose the Flat tab in Siebel Tools, and then submit one of the following queries to determine if a dock object visibility rule uses a particular column:
- Query the SQL Statement and DBX SQL Statement properties of the Dock Object Visibility Rule object for the column you are considering.
- Query the Filter Sql Statement property of the Dock Object Table object for the column you are considering.
Note that you must display the dock object type and child object types of the dock object. For more information, see Displaying Object Types You Use to Configure Siebel CRM.
For more information, see Siebel Remote and Replication Manager Administration Guide. If you are in doubt about how a column might affect Siebel Remote, then see Getting Help from Oracle.
- To reuse a table column or business component field that references a LOV (list of values) bounded column, make sure you use a bounded list that uses the same LOV type as the column object.
If the LOV Bounded property of the column is TRUE, then Enterprise Integration Manager enters data into the column only if the corresponding LOV type and value exist in the S_LST_OF_VAL table. For more information, see Creating a List of Values.
- Consider the column type and size.
In most situations, you must not change the type or size of the column. An exception is DB2 for OS/390 and z/OS operating systems, because these systems store the maximum size of a VARCHAR column in an index. For more information, see Implementing Siebel Business Applications on DB2 for z/OS.
- Make sure a column you use is not obsolete.
Examine the Comments property of the column to determine if the column is obsolete. You must not use an obsolete column because it might be deleted in a future release.
- Examine the Foreign Key Table property of the Column object to determine if the correct foreign key relationship exists:
- Use a one-to-one ATTRIB column.
If no other suitable field or column exists, then some one-to-one tables contain generic ATTRIB columns that you can use. For example, the S_CONTACT_X table. If you use an ATTRIB column, make sure you do the following:
- Extend a base table with a custom extension column instead of using an ATTRIB column in the following situations:
- For foreign keys and the Primary ID Field. For more information, see About the Primary ID Field.
- For a column that Siebel CRM frequently queries or is always present in the result set. For example, a field that is in the initial list view of a screen, or a field whose Force Active or Link Specification property is TRUE.
- If you reuse a predefined ATTRIB column, then make sure another field does not use it. If another field does use it, then choose another unused ATTRIB column.
For more information, see Options to Use a Predefined One-to-One Extension Table.
- Reuse an unused column for a new business component field.
You must verify that another field on the same business component does not already use the column. If more than one field references the same table column, then you might encounter a duplicate column insert error during a copy operation. In this situation, you must use the original Siebel field that references the desired column. Otherwise, use another appropriate column, such as a custom extension column or an unused ATTRIB column.
- Use a user key column.
Note the following:
Guidelines for Considering a Foreign Key Relationship
You must not reuse a table only because it contains the necessary foreign key relationship. Instead, to add the required foreign key columns, you can do one of the following:
- Customize the database.
- Use the Siebel Dock Object Wizard.
- Use the EIM Table Mapping Wizard.
Do not use a predefined column that is not a foreign key to store a custom foreign key. Doing so can affect Siebel Remote and Enterprise Integration Manager. This situation can cause problems when Siebel CRM generates EIM mappings or routes data to the user.