This chapter covers the following topics:
All Model structure nodes have attributes called Properties. An end user cannot select or modify Properties in a runtime Oracle Configurator, but Properties and their values can be used when defining rules or to create runtime UI captions for Model structure nodes.
For more information about how you can use Properties when building a configuration model, see:
There are two types of Properties:
You can create User Properties in Configurator Developer, or they may be created in either Oracle Inventory or Oracle Advanced Product Catalog (APC) and then added to the CZ schema by importing a BOM Model. Examples of User Properties include Size, Weight, Length, Diameter, and Color.
In Configurator Developer, User Properties appear in:
The Main area of Repository
For more information, see The Main Area of the Repository Hierarchical Table.
The details page of an Item or Item Type
In a Model node’s details page
By default, all imported User Properties appear in the Main area of the Repository, in the root Folder. You can also manually create User Properties in this area, or in any user-created Folder. In this area, you can delete a User Property that was created in Configurator Developer, or modify its Name, Description, or Default Value. Imported User Properties can be modified or deleted only in the application in which they were created. That is, in Oracle Inventory or Oracle Advanced Product Catalog (APC). Changes to any imported Properties do not appear in Configurator Developer until you refresh the BOM Model to which they are associated.
You can add User Properties to Item Types in the Item Master area of the Repository, and to Model nodes when editing a Model in the Structure area of the Workbench. You can also modify Property values when working on these objects, with some restrictions. For more information about User Properties, see:
For the portions of your Model that you create in Oracle Configurator Developer, you can add, remove, and edit User Properties directly on nodes of the Model, or add User Properties to Items in the Item Master. Adding or removing a User Property assigned to a Model node affects only the selected node. In other words, User Properties that you add directly to a Model’s structure do not affect the Item Master. However, adding User Properties to or removing them from an Item Type affects all of its child Items.
For example, when you add a Property to an Item Type, Configurator Developer automatically assigns the Property to all of its Items. If a Model contains structure created from the Item Type, repopulating the Model adds the Property to all of the nodes originally created by the Populator. Similarly, removing a Property from an Item Type removes the Property from all of its child Items.
For more information, see:
In Configurator Developer, you can assign User Properties to imported nodes, including BOM Models, BOM Option Classes, and BOM Standard Items. This is described in Adding User Properties to a Model Node.
However, you cannot add Properties to a BOM Model Reference node or to any of the nodes within the referenced Model’s structure.
When modifying an imported BOM node, you can edit a User Property’s value or remove the Property’s association with the node if it was added to the node in Configurator Developer. This is true even if the Property itself was imported from Oracle Bills of Material. You can also edit a User Property’s value or remove the Property’s association with an Item if the Property was added to the node in Configurator Developer.
Removing a Property’s association with a Model node or an Item Type does not delete the Property from the CZ schema. (You can delete non-imported Properties only from the Main area of the Repository.)
For more information, see Limitations when Modifying Imported BOM Items, Item Types, and Properties.
The details page for Model nodes, Item Types, and Items contains a table listing all Properties associated with the selected object. This table lists each Property’s name, data type, and value. The table in a Model node’s details page also contains the Imported and Inherited columns. A check mark in the Imported column indicates that a Property was imported from Oracle Bills of Material, even though it may have been assigned to the selected node in Configurator Developer.
A check mark in the Inherited column indicates that the node is associated with an Item in the Item Master that has that Property; in other words, the Property association is inherited from the Item. All Properties that were imported with a BOM node are marked as both imported and inherited, because BOM nodes have corresponding Items in the Item Master.
When you create Model structure by selecting "Item-based Nodes" in the Create Nodes page or by running a Populator, the new nodes reflect all of the Properties and Property values of the source data in the Item Master.
For more information about creating Model structure from Items or Item Types, see:
For more information on working with Properties, see:
System Properties are implicit attributes of both BOM and non-BOM Model nodes that vary based on the node’s type. Examples of System Properties include Name, Description, Quantity, and Value.
You can use System Properties when defining:
Logic, Numeric, and Comparison Rules
See Introduction to Rules, Node Types, and System Properties .
The source for a UI element’s caption
A runtime condition
When you select a Property from a list in Configurator Developer (for example, when defining a rule), an open and closed parenthesis is appended to each System Property.
For example:
Name() Description() MinInstances() MaxInstances() Weight Length Diameter
In this example, Name, Description, MinInstances, and MaxInstances are System Properties, while Weight, Length, and Diameter are User Properties.
System Properties lists all System Properties and indicates how each can be used.
System Property | Description | Node Type(s) | Returns | Use |
---|---|---|---|---|
DisplayName | Default UI caption for Model structure nodes (specified in the General area of the Workbench) | All nodes | Text | Caption text and runtime conditions |
DisplayNamePath | Path of default node UI captions from the Model root | All nodes | Text | Caption text and runtime conditions |
Name | Node name | All nodes | Text | Caption text and runtime conditions |
Description | Node description | All nodes | Text | Caption text and runtime conditions |
InstanceName | Instance name | Instantiable Model References and Components | Text | Caption text and runtime conditions |
InstanceNumber | Instance number | Instantiable Model References and Components | Integer | Caption text and runtime conditions |
InstanceCount | Number of runtime instances | Instantiable Model References and Components | Integer | Rules, caption text, and runtime conditions |
Quantity | Node quantity | BOM Option Classes and BOM Standard Items, Options, Count Features | Integer | Rules, Caption text, and runtime conditions |
BaselineQuantity | Quantity restored from Oracle Install Base Used only when reconfiguring installed instances. For more information, see the Oracle Telecommunications Service Ordering Process Guide. |
All BOM nodes | Integer | Caption text and runtime conditions |
DeltaQuantity | Difference between current quantity and quantity restored from Oracle Install Base. Used only when reconfiguring installed instances. For more information, see the Oracle Telecommunications Service Ordering Process Guide. |
All BOM nodes | Integer | Caption text and runtime conditions |
Value | Integer value | Totals, Resources, Text Features, Integer Features, Decimal Features, Text Features | Decimal, for Totals, Resources, and Decimal Features Integer for Integer Features Text for Text Features True or False for Boolean Features |
Can be used for caption text and runtime conditions (regardless of node type). When node type is Decimal Feature, Integer Feature, or Boolean Feature, can be used only in rules. |
SelectionState | An option’s runtime selection state (Selected, Selectable, or Excluded) See Selection State. |
BOM Models, BOM Option Classes, Option Features that have Maximum Selections set to 1 | StateQuantityNode | Caption text and runtime conditions |
DetailedSelectionState | An option’s detailed runtime selection state For details, see Selection State |
All BOM nodes, all types of Features, and Options | User Selected, User Declined, System Selected, System Excluded, or Selectable | Caption text and runtime conditions |
LogicState | Node logic state (User True, Logic True, and so on) For more information, see Configuration Rules and Logic State. |
All BOM nodes, Options, Option Features, Boolean Features, Count Features | User True, User False, Logic True, Logic False, Unknown | Rules |
NodeUnsatisfied | Returns True when the node is unsatisfied (that is, a selection or input is required) For more information, see Configuration Rules and Logic State. |
All nodes | True or False | Caption text and runtime conditions |
SubtreeUnsatisfied | Returns True when the node or any of its descendants is unsatisfied (that is, a selection or input is required) | All nodes | True or False | Caption text and runtime conditions |
Valid | Is the value entered for the node valid (that is, within the specified range) | All nodes | True or False | Caption text and runtime conditions |
ListPrice | Item list price | All BOM nodes | Decimal | Caption text and runtime conditions |
SellingPrice | Item selling price | All BOM nodes | Decimal | Caption text and runtime conditions |
ExtendedPrice | Quantity multiplied by the item selling price | All BOM nodes | Decimal | Caption text and runtime conditions |
ATP | Available-to-promise date | All BOM nodes | Date | Caption text and runtime conditions |
MinQuantity | Minimum quantity | All BOM nodes, Count Features | Decimal | Caption text and runtime conditions |
MaxQuantity | Maximum quantity | All BOM nodes, Count Features | Decimal | Caption text and runtime conditions |
MinValue | Maximum integer or decimal value | Integer Features, Decimal Features | Integer | Caption text and runtime conditions |
MaxValue | Maximum integer or decimal value | Integer Features, Decimal Features | Integer | Caption text and runtime conditions |
MinSelected | Minimum number of options selected | BOM Models, BOM Option Classes, Option Features | Integer | Caption text and runtime conditions |
MaxSelected | Maximum number of options selected | BOM Models, BOM Option Classes, Option Features | Integer | Caption text and runtime conditions |
MinInstances | Minimum instances | Instantiable Model References and Components | Integer | Rules, Caption text, and runtime conditions |
MaxInstances | Maximum instances | Instantiable Model References and Components | Integer | Rules, Caption text, and runtime conditions |
HasChildren | Node has children | All nodes | True or False | Caption text and runtime conditions |
TargetDisplayName | Display name of target instance | Connectors | Text | Caption text and runtime conditions |
TargetDisplayNamePath | Display name path of target instance | Connectors | Text | Caption text and runtime conditions |
LineType | The line type as set by a Functional Companion or Configurator Extension Rule Used only when reconfiguring installed instances. For details, see the Oracle Telecommunications Service Ordering Process Guide. |
All BOM nodes | Text | Caption text and runtime conditions |
Location | Item location as set by a Configurator Extension Rule Used only when reconfiguring installed instances. For details, see the Oracle Telecommunications Service Ordering Process Guide. |
All BOM nodes | Integer | Caption text and runtime conditions |
IBNodeChanged | Item modified relative its state in Oracle Install Base. Used only when reconfiguring installed instances. For details, see the Oracle Telecommunications Service Ordering Process Guide. |
All BOM nodes | True or False | Caption text and runtime conditions |
IBSubtreeChanged | True if item or one of its descendants has changed relative to Oracle Install Base. Used only when reconfiguring installed instances. For details, see the Oracle Telecommunications Service Ordering Process Guide. |
All BOM nodes | True or False | Caption text and runtime conditions |
Options | Children (options) of parent node | BOM Models, BOM Option Classes, Option Features | StateQuantityNode | Rules |
Parent | Parent node | All nodes | Node | Rules |
Selection | Currently selected node | BOM Models, BOM Option Classes, | Node | Rules |
Children | Returns a collection containing the current node’s children | All nodes | Collection of iRuntimenode | Configurator Extension argument bindings |
SelectableChildren | Node has selectable children | Component, BOM Models, BOM Option Classes, Option Features | Option (yes/no) | Rules |
SummaryChildren | Returns a collection containing the child nodes of the current node that can be displayed in the Configuration Summary page | All nodes | Collection of iRuntime node | Configurator Extension argument bindings |
Target | Target instance of the connection | Connectors | Component | Configurator Extension argument bindings |
Eligible Targets | Eligible target instances of the connection | Connectors | Collection of components | Configurator Extension argument bindings |
UserStr01 | The text value set during the configuration session by a Configurator Extension. For information on using this property, see the Oracle Configurator Extensions and Interface Object Developer's Guide. | All nodes | Text | Dynamic association of text with nodes at runtime. |
UserStr02 | Same as UserStr01 | Same as UserStr01 | Same as UserStr01 | Same as UserStr01 |
UserStr03 | Same as UserStr01 | Same as UserStr01 | Same as UserStr01 | Same as UserStr01 |
UserStr04 | Same as UserStr01 | Same as UserStr01 | Same as UserStr01 | Same as UserStr01 |
Before reading this section, you should understand the term "logic state." For details, see Configuration Rules and Logic State.
The DetailedSelectionState System Property refers to an option’s runtime selection state. A runtime Oracle Configurator checks an option’s DetailedSelectionState System Property to determine how to display its status. Depending on the value of this System Property, the UI Master Template you used to generate the UI determines which indicator or control image to display (see Images Section). For example, you may want to display a status icon next to a standard HTML check box or radio button, or use an Enhanced Check Box or Enhanced Radio Button to indicate each option’s selection state. An option’s current DetailedSelectionState value also appears in the runtime UI when an end user places the cursor over an indicator or control image.
The SelectionState System Property is a simplification of DetailedSelectionState. It has only three values: Selected, Selectable, and Excluded. Therefore, SelectionState is not used to indicate whether an option’s state is set by a user’s action or by a configuration rule. This System Property is useful primarily for specifying runtime conditions, in which how an option is selected or excluded is less important than whether to hide or disable a UI element. See Runtime Conditions and User Interface Elements.
Logic State, Selection State, and Detailed Selection State Values lists each logic state and their corresponding detailed selection states.
Logic State | Selection State | Detailed Selection State |
---|---|---|
Unknown | Selectable | Not Selected |
User True | Selected | Selected |
Logic True | Selected | Auto-Selected |
Logic False | Excluded | Auto-Excluded |
User False | Selectable | Declined |
The Not Selected state indicates that no decision has yet been made about an option, and it can be selected. An option has the Selected state when an end user selects it. Options selected by the propagation of a rule have a status of Auto-Selected, while options that are excluded from the configuration by a rule are Auto-Excluded. An option has the Declined state when an end user deselects an option that was previously selected by a rule (that is, its logic state was Logic True).
In some situations, the runtime Oracle Configurator displays options that have a logic state of Logic False (Auto-Excluded) as Unknown (Not Selected).
For example, a BOM Option Class contains 5 mutually exclusive options (BOM Standard Items). When an end user selects an option, the remaining options become Logic False, but the runtime UI displays them as Unknown (that is, using the image specified in your UI Master Template for "Not Selected"). This behavior is considered preferable to displaying options with a logic state of Logic False as "excluded" because an end user might incorrectly assume that an excluded option cannot be selected. For more information, see Things to Consider.
The icons used to display each logic state at runtime are shown in Status Indicator Images.
Note: The Model Debugger always displays options that are Logic False as Auto-Excluded, not as Unknown. For more information about the Model Debugger, see The Model Debugger.
Configuration session properties are distinct from User and System Properties because they refer to the state of a runtime configuration session, and are not associated with Model structure nodes.
You can use a configuration session property when defining:
The source for a UI element’s caption
A runtime condition
Configuration Session Properties describes each configuration session property and indicates how each can be used.
Property | Description | Returns | Use |
---|---|---|---|
ModelQuantity | Model quantity | Integer | Caption text and runtime conditions |
CurrencyCode | Currency | Text (currency string, such as USD) | Caption text and runtime conditions |
TotalListPrice | Total list price for all selected items | Decimal | Caption text and runtime conditions |
TotalSellingPrice | Total selling price for all selected items | Decimal | Caption text and runtime conditions |
ATPRollup | ATP Date for the entire configuration | Text (date format) | Caption text and runtime conditions |
Valid | The configuration is valid | True or False | Caption text and runtime conditions |
Unsatisfied | Returns True when the configuration is unsatisfied (that is, a selection or input is still required) | True or False | Caption text and runtime conditions |
PricingEnabled | The configuration session is set up to display list prices or selling prices. | True or False | Caption text and runtime conditions |
ListPriceEnabled | The configuration session is set up to display item list prices. | True or False | Caption text and runtime conditions |
SellingPriceEnabled | The configuration session is set up to display item selling prices. | True or False | Caption text and runtime conditions |
ATPEnabled | The configuration session is set up to display Available to Promise (ATP) information for selected items. | True or False | Caption text and runtime conditions |
PriceAndATPDisabled | The configuration session is not set up to display item prices or ATP data. | True or False | Caption text and runtime conditions |
InNestedTransaction | Returns True when the end user is configuring a nested transaction. Returns False when nested transactions are disabled. The Transaction Management setting is described in Pagination and Layout Section. See Defining Custom Pagination and Layout. |
True or False | Caption text and runtime conditions |
InSingleTransactionDrilldown | Returns True when nested transactions are disabled for the configuration session and the end user drills down into a subcomponent by activating a button, image, or link. Returns False in all other cases. The Transaction Management setting is described in Pagination and Layout Section. |
True or False | Caption text and runtime conditions |
IsContainerModel | Returns True if configuring a Model that has Connectors. For more information, see the Oracle Telecommunications Service Ordering Process Guide. |
True or False | Caption text and runtime conditions |
HasInstalledRevisions | Returns True if the configuration has one or more instances with installed revisions. For more information, see the Oracle Telecommunications Service Ordering Process Guide. |
True or False | Caption text and runtime conditions |
ConfigHeaderID | Configuration header ID number | Integer | Caption text and runtime conditions |
ConfigRevisionNumber | Configuration revision number | Integer | Caption text and runtime conditions |
All User Properties have a data type that cannot be changed in Configurator Developer, regardless of whether the Property was imported or created in Configurator Developer. The data type determines what you can enter for a Property’s value (for non-imported Properties) and how the Property can be used in a configuration rule. For example, a Property-based Compatibility Rule defines an expression that compares the User Property values of two nodes. Combinations of Properties that render the expression 'true' are considered compatible.
Following are the available User Property data types:
Integer (for example, 21)
Decimal Number (for example, 11.34)
True/False
Text: For example: Property Name = Size, Property Value = Large. You may want to use this type if, for example, you use Property values to generate the default UI captions for Model structure nodes. For details, see Runtime Display Names.
User Properties with a data type of Text can be used only in Comparison Rules.
Translatable Text: Select this type if you plan to implement Multiple Language Support (MLS) in the runtime Oracle Configurator and intend to display the Property’s value in the UI. For more information about MLS, see Introduction to Multiple Language Support .
Using Properties with this data type in rules is not recommended, as the rule may become invalid when the text (the Property’s value) is translated.
For more information, see: