Product Administration Guide > Configuration Rule Assembly Language >

Creating Rules Using the Advanced Rule Template

The Advanced Rule template is similar to the Assisted Advanced Rule Template. You can create rules using Rule Assembly Language with either template. The Advanced Rule template does not provide a dialog box for picking products, resources, or links. It also does not provide a list of operators.

The Advanced Rule Template is intended primarily for upgrade users who want to edit the rules in models created in release 6.x.

You must manually enter the path to items when using this template. Table 35 provides examples of paths.

When you create a rule and save it using this template, the Rule Designer displays the rule syntax in the Rule field. The Rule Designer capitalizes the first letter of operator names in the rule for display purposes only. Operator names are case-sensitive, and the Rule Designer stores them in the correct, format.

Table 35.  Examples of Paths

@.[Relationship A]([Product SubClass])

All the products in SubClass in Relationship A.

@.[Relationship A]([Product 1]).[Color]

The color attribute of all the instances of Product 1 in Relationship A.

@.[Relationship A].[Color]

The Color attribute of all the products in Relationship 1.

$.[Resource 1]

Resource 1.

$.[Link 1]

Link 1.

Observe the following guidelines when writing paths:

  • The @ sign specifies the instance of the product or group of products on which the rule is defined. Use the @ sign at the beginning of paths that refer to items inside the structure of a customizable product.
  • The $ refers to a special object called the basket that is associated with each customizable product. This object maintains a non-hierarchical, flat view of the whole customizable product. Use the $ at the beginning of a path to specify links and resources. Since links and resources are defined for the whole customizable product, they are stored in the basket.

    Upgrade Users. Users upgrading from release 6.x will have rules containing paths that include syntax such as $.[product]. These paths should function normally. However, you should avoid using this syntax to create new rules. This syntax can cause solutions that contain unintended instances of products.

  • Use periods (.) to specify the next property in the path. A property can be a relationship name or attribute name. Do not put spaces before or after the period.
  • Use parentheses immediately after a relationship name to specify a subset of the items in a relationship. Parentheses act as a filter. The most common use for parentheses is to specify a subclass within the relationship. Do not put a period before the parentheses. For example @.[P]([X]).[Color] refers to the Color attribute of all the products in subclass X within relationship P.
  • Enter names exactly as they are displayed in the lists where they were defined. Do not use display names. You can use subclass names to filter products within a relationship even though the subclass names do not display in the Product Designer.
  • The path syntax always refers to the actual set of items specified in the path, however many instances are present. For example, @.[X]. [Color] refers to the color attribute of all the instances of products actually present in relationship X in a given configuration. A path only refers to actual instances, not the possible instances as defined by cardinality settings.
  • If you create a rule containing a path to location that contains no items, the rule is ignored until items are present.
  • All paths you specify in rules must be unique and unambiguous. For example, if you have multiple relationships with the same name, paths to them may be ambiguous. If this occurs, use the Assisted Advanced Rule template to write rules. This template uses underlying, unique identifiers to identify items.
  • The maximum length of a rule is 900 characters. The UI allows rules that are longer, but they cannot be stored in the database. Using Siebel Tools, you can revise the UI to enforce the 900 character limit. See Enforcing the Field Length for Entering Advanced Rules.

When you create a rule, a record describing the rule displays in the Rule Manager Rules List. This record has the following fields:

  • Name. Enter a name for the rule. Consider using a naming convention that helps you easily identify and sort rules. Rule names must be unique. If you do not enter a name, this field remains blank in the Rule Designer list.
  • Explanation. Enter a description of the rule. The description must contain the operator names used in the rule. If you leave this field blank, the Rule Statement in the form is displayed in this field in the Rule Designer list.
  • Start Date/End Date. Click the Calendar select button and choose the date when you want the rule to become effective (Start Date), the date you want the rule to stop being effective (End Date), or both. Review the section on setting effective dates for rules for more information. Use a consistent approach to setting start and end dates. This makes troubleshooting product behavior problems easier.
  • Inactive. Click the Inactive check box if you want the rule to be inactive. The rule remains part of the product but will not be used to compute solutions. To activate a rule for a product that has been released, you must change the rule's status to active, save the rule, and release the product again. To activate the rule in the current work space, you must change the rule's status to active and save the rule.

To create a rule using the Advanced Rule template

  1. Navigate to Product Administration.
  2. Select and lock the desired customizable product.

    If you omit this step, the most recently released version of the customizable product is loaded in the Rule Designer, and you cannot create rules.

  3. Click the Configuration Designer tab.

    The Rule Designer Rules List appears. It lists all the configuration rules that have been created for this customizable product.

  4. Click New Rule.

    The "Pick a rule" tab appears and lists the rule templates available for creating rules.

  5. Select the Advanced Rule template in "Pick a rule", and click Continue.

    The Rule Statement and "Insert a" tabs appear. The Rule Statement tab contains the rule template you selected.

    To exit and return to the Rules List, click Cancel.

  6. Enter the configuration rule into the template using Rule Assembly Language.
  7. Click Save Rule to save the rule.

    The Save Rule form appears.

  8. Fill out the fields in the Save Rule form. Then click Save. All fields are optional.

    After you click Save, the Rules List appears. The list contains a record for the new rule.

  9. Open the Rules List menu and click Validate.

    This starts a configuration session. Verify that the new rule works correctly.

Product Administration Guide