Configuring Siebel Business Applications > About Business Components, Fields, Joins, and Links > About Business Component Fields >
How a Business Component Field Calculates a Value
A calculated field is a type of business component field that obtains values from other fields in the same business component, or from the parent business component in an active link in which the current business component is the child business component. The Calculated property of a calculated field contains a check mark and the Calculated Value property contains a value that is not empty.
The Calculated Value property contains an expression built from field names, predefined functions, and string, numeric, and logical operators. For example, the Full Name field in the Contact business component includes the following value in the Calculated Value property:
IIf (Language () = "JPN", [Last Name] + ' ' + [First Name],
[First Name] + ' ' + [Last Name])
The natural language translation for this expression is as follows:
- If the active client language is Japanese, then construct the Full Name from the Last Name, an empty space, and the First Name.
- If the active client language is not Japanese, then construct the Full Name from the First Name, an empty space, and the Last Name.
If you create a calculated field, then consider the following:
- By default, if the calculated value of a field changes, then Siebel CRM does not automatically refresh the calculated field. Siebel CRM only refreshes a calculated field after Siebel CRM commits the record. You can make sure the Immediate Post Changes property of the field contains a check mark to refresh the field immediately after Siebel CRM changes the field.
- A calculated field cannot reference itself in the Calculated Value property. For example, you cannot use Last Name in a calculation expression for the Last Name field.
- If the Cache Data property of the business component contains a check mark, then Siebel CRM does not support a query on a calculated field in that business component.
- You cannot use a script on a calculated field.
For more information, see Siebel Developer's Reference.