User Key Generation Algorithm

The Integration Object Builder wizard computes the user keys by traversing several Siebel objects, including the business object, business component, table, and link. This is because not every table user key meets the requirements to be used as the basis for integration object user keys.

To understand how the Integration Object Builder wizard determines valid integration component keys, you can simulate the process of validating the user keys. For example, you can determine the table on which your business component is based by looking in Siebel Tools.

To find the user keys for a table

  1. Select the Business Component object in the Object Explorer.

    The Business Components list appears in the Object List Editor.

  2. Select a business component.

  3. Click the link in the Table column.

    The Tables list appears, displaying the table associated with the business component (for example S_CONTACT).

  4. Expand the Tables object in the Object Explorer, and then select User Key.

    The User Keys list displays the user keys defined for that table.

For example, as shown in the following figure. the table S_CONTACT has several user keys.


User Keys for Table S_CONTACT. This image is described in surrounding text.

Not every user key will necessarily be valid for a given business component. Multiple business components can map to the same underlying table; therefore, it is possible that a table’s user key is not valid for a particular business component, but is specific to another business component

Each User Key Column child object defined for a given user key must be exposed to the business component in which you are interested. For example, the following figure shows three user key columns for the user key S_CONTACT_U1.


User Key Columns for the S_CONTACT_U1 User Key. This image is described in surrounding text.

If the columns of the user key are exposed in the business component, and those columns are not foreign keys, then the Integration Object Builder wizard creates an integration component key based on the table’s user key. The Integration Object Builder wizard also defines one integration component key field corresponding to each of the table’s user key columns.

The Integration Object Builder wizard builds the integration component keys based on these table user keys. As illustrated in the following figure, the wizard defines one integration component key for each table user key column.


Integration Component Keys for Each Table User Key Column. This image is described in surrounding text.

Each valid integration component key contains fields. For example, as shown in the following figure, for the Contact integration component, User Key 3 is made up of five fields: CSN, First Name, Last Name, Middle Name, and Personal Contact.

Caution: Only modify user keys if you have a good understanding of the business component and integration logic.

Contact Integration Component Key Fields. This image is described in surrounding text.

When the Integration Object Builder wizard creates these integration component keys, it attempts to use the appropriate table user keys, that is the user keys that help to uniquely identify a given record. In some cases, you might find that certain integration component keys created by the Integration Object Builder wizard are not useful for your particular needs. In that case, you can manually inactivate the keys you do not want to use by checking the Inactive flag on that particular user key in Siebel Tools. You can also inactivate user key fields within a given user key.

Note: For ease of maintenance and upgrade, inactivate unnecessary generated user keys and user key fields instead of deleting them.