Configuring Siebel Business Applications > About Business Components, Fields, Joins, and Links > About Multi-Value Links >

How Siebel CRM Constructs an Indirect Multi-Value Link


An indirect multi-value link is a type of multi-value link where a join relates the business component on which the multi-value link is defined to the parent business component. The source field of an indirect multi-value link references a column that is joined from another table and not a column in the base table.

Figure 19 illustrates how Siebel CRM constructs an indirect multi-value link.

Figure 19. How Siebel CRM Constructs an Indirect Multi-Value Link

Siebel CRM uses the following objects to construct an indirect multi-value link:

  1. Joined business component. Fulfills the child role in a parent-child relationship with the parent business component in the link. Siebel CRM establishes the indirect multi-value link as a child of the join business component.
  2. Multi-value fields. For more information, see About the Multi-Value Field.
  3. Multi-Value link. The multi-value link uses the following properties to create the relationship between the link and fields in the parent business component:
    • Primary Id Field property. Identifies the field from the business component to which the multi-value link belongs. For more information, see About the Primary ID Field.
    • Destination Business Component property. Identifies the child business component.
    • Destination Link property. Identifies the link.
  4. Joined field. In a multi-value link, the Source Field property of the multi-value link is empty. In an indirect multi-value link, the Source Field property defines a joined field in the same business component as the multi-value link. The joined field represents the ROW_ID column from the base table of the parent business component. Siebel CRM obtains the ROW_ID column through a join.

    NOTE:  Do not use a column other than ROW_ID. If you use a column other than ROW_ID, then you might experience unpredictable application behavior.

  5. Join and join specification. Provides a way to bring data into the joined field. For more information, see About Joins.
  6. Foreign key field in the joined business component. Represents a foreign key column in the base table. The foreign key field references rows in the joined table. In this situation, this table is the base table of the parent business component. Siebel CRM uses the foreign key field to create the join.
  7. Base table. The join, join specification, and foreign key field in the join business component access the base table of the parent business component. This makes possible a join relationship that provides a parent business component record and, indirectly, a set of child business component records for each join business component record.
  8. Child business component. Supplies the child records in the parent-child relationship.
  9. Primary ID Field. Identifies the foreign key field in the parent business component. For more information, see About the Primary ID Field.
  10. Foreign key field in the child business component. Contains row ID values that reference back to records in the parent business component. These row ID values uniquely identify the parent for each record in the child business component.
  11. Link. Specifies the parent-child relationship between the parent business component and the child business component.
  12. Parent business component. The parent in the parent-child relationship that is defined in the link.
  13. Key field. The primary key for the parent business component.

Example of How Siebel CRM Constructs an Indirect Multi-Value Link

Table 15 describes some of the objects that Siebel CRM uses to construct an indirect multi-value link that involves the Business Address in the Contact business component. The Contact business component and the Account business component each contain the Business Address multi-value link.

Table 15. Example of How Siebel CRM Constructs an Indirect Multi-Value Link
Object
Name of Object Definition

Joined Business Component

Contact

Multi Value Link

Business Address

Joined Field

Joined Account Id

Join

S_ORG_EXT

Join Specification

Account Id

Foreign Key Field

Account Id

Base Table

S_ORG_EXT

Child Business Component

Business Address

Link

Account Address

Parent Business Component

Account

How Siebel CRM Uses the Source Field Property

The Source Field property in a multi-value link is empty, which instructs Siebel CRM to use the Id field in the current business component. This field corresponds to the ROW_ID in the base table. However, in the indirect multi-value link for the Contact business component, the Source Field property specifies the Joined Account ID field that resides in the S_ORG_EXT table. The Joined Account ID field provides the Account Id of the Account that corresponds to the current Contact.

The parent business component of a multi-value link is usually the same as the business component in which the multi-value link is defined. However, you can use the Source Field property of the link to create a multi-value link whose parent business component is related to the current business component indirectly through a join or another multi-value link.

How a Multi-Value Link References a Link

A link defines a one-to-many relationship between two business components. Typically, the business component in which the multi-value link is defined is the same as the parent business component of the underlying link that the multi-value link references.

For example, Table 16 lists some of the properties that are defined for the Business Address multi-value link in the Account business component.

Table 16. Properties of the Business Address Multi-Value Link in the Account Business Component
Property
Value

Destination Business Component

Business Address

Destination Link

Account/Business Address

Primary Id Field

Primary Address Id

Check No Match

TRUE

Popup Update Only

TRUE

The Destination Link property indicates that this multi-value link references the Account/Business Address link. Table 17 lists some of the properties that are defined for the Account/Business Address link.

Table 17. Properties of the Account/Business Address Link
Property
Value

Name

Account/Business Address

Parent Business Component

Account

Child Business Component

Business Address

Destination Field

Account Id

Cascade Delete

Delete

The parent business component of the Account/Business Address link is the Account business component, which is also the business component in which the multi-value link is defined. To update the multi-value group applet, Siebel CRM uses data from the children business address records for the account record that is currently chosen in the Account business component.

Usage of a Predefined Indirect Multi-Value Link

If there is a predefined link that is appropriate for use in a multi-value link, and if the originating business component is different from the parent business component, then you can use an indirect multi-value link instead of a conventional multi-value link. If a predefined join exists that joins the desired parent business component to the parent business component of the link, then you can use the predefined link in the multi-value link.

Configuring Siebel Business Applications Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Legal Notices.