New Wizards to create Multi-value Groups (MVG) and Pick List in Web Tools (New in 23.10)

The Siebel CRM 23.10 Update introduces two new object wizards to Web Tools. The wizards create an MVG or a Pick List. This keeps developers using Web Tools and saves them time because they do not have to use Siebel Tools to create and edit MVGs and Pick Lists.

 

Expert tips for MVGs (Performance)

A Multi-value Group in Siebel CRM is a grouping of Multi-value Fields (MVF). Each field is backed by a Multi-value Link (MVL). With an MVL, performance can be immediately hampered by not specifying a Primary Id Field or setting the Use Primary Join property to False.

  • Specify a Primary Id Field. This field will hold the row id of the primary child record.
  • Set Use Primary Join property of the Link to True.
  • Set Check No Match property of the Link to False.

Primary Id Field

This field holds the row id of the child record that has been designated as the primary child record. This allows the primary child record to be joined in to the query of the parent record without issuing a separate query.

Use Primary Join property

For each record where an MVF is shown in the user interface, queried in a script, Workflow Process, or is active in some way in a Business Component (Force Active is True for example) and Use Primary Join is False, a secondary query will be issued to supply the record’s data. Many rows (think List Applet) mean many extra queries. Use Primary Join = True means the primary child record is joined in along with the parent Business Component. No extra queries.

Check No Match property

If, for a primary child record, the application could not find the record, the Primary Id field will be updated with No Match Row Id. The application has given itself a hint for the future for this parent record. The next time that this parent record is queried, the application sees No Match Row Id, and leaves the MVFs blank and does not try to query for a child record. When you set Check No Match to True, the application ignores the advice it gave itself with No Match Row Id and begins querying for child records even though they may not exist. This, again, could cause many sub queries to find a child record.