You are here: Reference > Rule types > Properties > Properties - Completing the New or Save As form

Properties
Completing the Create, Save As, or Specialization form

  1. About 
  2. New 
  3. General 
  4. Advanced 
  5. History 
  6. More... 

Records can be created in various ways. You can add a new record to your application or copy an existing one. You can specialize existing rules by creating a copy in a specific ruleset, against a different class or (in some cases) with a set of circumstance definitions. You can copy data instances but they do not support specialization because they are not versioned.

Based on your use case, you use the Create, Save As, or Specialization form to create the record. The number of fields and available options varies by record type. Start by familiarizing yourself with the generic layout of these forms and their common fields:

This information identifies the key parts and options that apply to the record type that you are creating.

Create a new property by selecting Property from the Data Model category.

Notes:

Key parts:

A property has two key parts:

Field

Description

Apply to

Select the name of the class in which you are creating the property.

For a property of mode Java Property, enter Embed-Java- or a class derived from Embed-Java-.

The list of available class names depends on the ruleset you select. Each class can restrict applying rules to an explicit set of rulesets as specified on the Advanced tab of the class form.

Identifier

Enter a name that starts with a letter, and use only letters, numbers, and hyphens, forming a Java identifier. See How to enter a Java identifier.

Avoiding duplicate names

As a best practice for good runtime performance, choose property names that are distinct and unique throughout your application. For technical reasons, having several properties named Amount in one inheritance path, even if these have different RuleSets, can slow the initial assembly of rules that reference Amount. Choosing more explicit names — such as PrincipalAmount, AmountAtRisk, TotalOrderAmount — will both prevent this performance impact and also help ensure that developers use the appropriate property.
When you click Create and open or Save As, and a property of the same name already exists in the inheritance path, a warning message appears asking if you want to create the property anyway. Properties that are duplicates of other property instances have an effect on caching, which can have a negative effect on system performance.

Notes on names

Property names may contain up to 64 characters. However, if this property is of mode Single Value and may prove useful for searching and selection in your application, choose a name not longer than the maximum column name length allowed by the database software supporting the PegaRULES database. This avoids issues that may arise later if the property is to become exposed as a database column. See exposed property.

Except when overriding a standard rule in an upwards-compatible way, choose a name that does not start with px or py. Property names that start with these letters are reserved. In your application, however, use of standard properties with names starting with px and py is encouraged. Your application can set and test values in these properties.

The pz prefix identifies standard properties that support the Pega Platform internal operations. Do not directly alter these in your application.

Don't choose a name that matches a reserved page name or keyword, such as Top, Parent, Local, Param, or Primary. See Understanding page names and reserved pages.

Additional creation options

Referred to as Quick Create options, the fields presented in this area of the Create form are optional. Selections made here can be used as a starting point for the rule you are creating:

Field

Description

Data Type

Select a data type to create a Single Value property and accept default values for all fields except Type.

Access When

Select a when rule if you are creating a TextEncrypted property type. The access when rule test and automatic encryption (or decryption) occur only as users interact with a form. In all other cases, your application must explicitly call the functions.

Reporting

If you are creating a top-level Single Value property in a concrete class, you can choose to optimize ("expose") the property as a database column now, before the system contains any values for the property.

If you are uncertain, leave these blank; you can expose the property as a column, and populate the column with values later. (This feature is available only on systems with a production level of 1 or 2, requires specific database account capabilities, and requires that you hold the SchemaPropertyOptimization privilege. See Platform generated schema changes.)

Field

Description

Optimize this Property for
reporting on (class)

Select the top check box to expose the property for the Apply to class only.

Optimize this Property for reporting on (class) and its descendent classes

Select the second check box to expose the property for the Apply to class and all classes derived from this class.

Rule resolution

When searching for rules of this type, the system:

Time-qualified and circumstance-qualified rule resolution features are not available for this rule type.