You are here: Reference > Rule types > Properties > Property form - Completing the Advanced tab

Property form - Completing the Advanced tab

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

Optional. Complete this tab to:

The format and contents of this tab depend on the Property Mode value selected on the General tab.

Basics

Field

Description

Max length

Optional. This field is visible only for Value mode properties of type Password, Text, or Identifier. You can restrict the value to a specific maximum number of characters in internal storage.

Enter the number here. If a user or activity attempts to assign a longer value to the property, the clipboard does contain the longer value, but also has an associated message.

If you leave this blank, Pega Platform does not limit the length of values of the property. However, operational considerations and system performance considerations might apply. For example, database software supporting the PegaRULES database might limit the size of the column to no more than 255 characters, or 1023 characters, or another value; this applies if the property is to be exposed. Even when the property is not exposed as a database column, sizes larger than 1,000 bytes could adversely add to the memory demands on the server and JVMs, depending on how many instances contain the large property and how often they are accessed on requestor clipboards.

When updating or overriding a property that has a Max Length defined, you can enter a smaller Max Length value but not a larger value.

Expected length

Optional. Enter the typical length in characters expected for the property being defined, as entered into a form. This does not affect the number of characters that can be stored internally in the property value.

If you associate the standard control FixedSizeForInput with this property, the system uses this value to define the size of HTML input textboxes. Use the similar FixedSize control to apply this limit to both input and display presentations of the property.

This field is visible only for Value mode properties.

Override sort function

Optional. Use to this field in special situations, to compare and sort values of this property in ways other than the natural sort sequence for the Type. If you leave this blank, the system uses a built-in sort order based on the Type.

Identify here a function rule in the Pega-RULES:Sort library or a custom function in a custom Sort library. For a custom function, enter the ruleset name, a colon, and the sort function name.

This field is visible only for Single Value mode properties.

Access when

Optional. This field is meaningful only when the Type is TextEncrypted and the mode is Single Value.

Identify the second key part of an access when rule (Rule-Access-When rule type) that controls whether or not the clear-text or encrypted value appears in reports and forms. Design the access when rule to be true for those operators, situations, and times when the clear text of the property value is to appear, and false otherwise. See Implementing and using the TextEncrypted type.

Edit input

Optional. To convert data entered by a user into another format, identify an edit input rule to perform the conversion. This field is visible only for Value mode properties.

If this property is to hold text that is composed using the RichTextControl control and so might contain HTML markup such as <b> or <h2>, select pxFilterRichText. This standard edit input rule deletes potentially insecure markup from the input value while retaining the legitimate display markup.

Use validate

Optional. Validation of a Value mode property always includes testing its value against the formats allowed by the Type and its maximum length. To provide stronger validation for this property, identify an edit validate rule.

When users complete and submit a form containing a value for this property, the system first applies the edit input rule. This rule may transform the input text. Next, it applies the edit validate rule, which may cause a message to be added to the property indicating that the property value has failed validation.

To restrict this value to a (Pega Platform) Java identifier, enter JavaIdentifier.

Many standard edit validate rules are emulated by an equivalent JavaScript function that can be run on the client workstation before users submit a user form or flow action form. See client-side validation.

This field is visible only for Value mode properties.

Column inclusion

Optional. If this Single Value property is to belong to a top-level object (not to an embedded page) in any concrete class, indicate whether this property is to appear in the Database Class Mappings gadget and Modify Schema wizard as a candidate for an exposed column:

  • Leave blank if you do not anticipate any benefit in making this property an exposed column.
  • Choose Required or Recommended to record your intent that a database administrator extend a database table schema to expose this property. These choices cause this property to appear as a candidate for column exposure in the Database Class Mappings gadget and Modify Database Schema wizard.

The other choice Optional is equivalent to blank.

Your choice in this field only conveys advice to a database administrator; it does not cause the schema to change. You can update a property to revise this selection at any time. Using the Database Class Mappings gadget, you can compare the values in this field with the current schema, identifying properties marked as Required which are not exposed. To start this gadget, select Designer Studio> Data Model > Classes and Properties > Database Class Mappings.

See Property optimization using the Property Optimization tool and Data Model category — Classes and Properties landing page.

If the property is not a Single Value property, or is not at the top level of an instance of any concrete class, this field is not meaningful.

If this is a transient property (the Transient Property check box is selected), select Optional or leave this field blank. A transient property cannot be exposed ("optimized").

Do not save property data

Select to cause the value of this property to be omitted (equivalently, set to null) when any clipboard page containing this property is committed to the PegaRULES database. Similarly, the property has no value when an instance containing this property is opened to the clipboard from the PegaRULES database.

Marking a property as transient, when appropriate, improves performance by reducing the size of the Storage Stream property value (the pzPVStream property and column). While on the clipboard, the property can have values of any length.

Select only for properties — Single Value or aggregate — that have values thatdo not need to be saved in the database.

If you mark a property as transient, but saved instances of objects already exist in the PegaRULES database, the values of this property are removed only when and if those objects are later opened and then recommitted.

The value of a transient property is not deleted when a requestor session containing a clipboard value for a transient property is passivated. The current value of the property is included in the saved passivation record, and restored when the requestor session is later activated.

You cannot expose a transient property as a database column. Because all values of the column would be empty, this is not useful. Similarly, you cannot mark a property as transient if Pega Platform determines that it is part of an external database table.

Optimized for classes

A list of the classes containing this property that have values as an exposed column in the PegaRULES database. This read-only list appears only for Single Value properties that have been exposed through the Property Optimization tool. See Property optimization using the Property Optimization tool.

Cannot be declarative target

Select to prevent this property from being the target of a Declare Expression rule.

This restriction applies to Declare Expression rules created after you save the Property form; it is not applied retroactively.

This restriction is meaningful only for Single Value, Page, or Java Property properties.

Cannot be included as input field

Select to turn on the pySpecial restriction for this rule. If selected, users cannot directly enter a value for this property on an HTML form. This restriction improves system security and reduces the chance of errors that can occur when one property is in some cases computed and in other cases directly input.

Such properties are sometimes called special properties.

Choose a naming convention for special properties, to help everyone on your team remember them. (Standard special properties have a property name starting with the letters px.)

Allow use as reference property in activities

Select to make this property a reference property, a property that can link to a source property. Reference properties can reduce the need for duplicating data values on multiple pages or objects, and can simplify lengthy property references. Use the Property-Ref method in an activity to establish the contents of a reference property.

If this property is of mode Page or Page List and the Page Class is a concrete class, you can in some cases use auto-population rather than use the Property-Ref method.

Cannot be localized in UI controls Select to exclude this property from being localized if the property will not appear in the UI nor have a field value. Excluding such properties increases localization performance.

Property Qualifiers

Optional. Complete this array to associate one or more property qualifier rules (Rule-Obj-Property-Qualifier rule type) with this property.

Each property qualifier you list here provides additional information at runtime about the property, and may alter the behavior in computations or presentation of the property.

You can provide a value for the qualifier on this tab, thereby defining a permanent value. Or when desired, you can leave the value blank and use Java methods in the PublicAPI to set or test values dynamically. For details, see More about Property Qualifier rules.

If you update an existing property that references the pyDecimalPrecision qualifier, additional steps could be necessary. See Revalidation is necessary after certain property updates in More about Properties.

Field

Description

Qualifier

Optional. For a permanent qualifier, enter the value in a pop-up dialog box:

  • For the standard qualifier pyDecimalPrecision, enter a literal constant integer such as 2 to indicate how many decimal places are to be presented when this property value appears at runtime. (Use pyDecimalPrecision only with properties with a Decimal type.)
  • For the standard qualifier pyMinimumLength, enter a literal constant minimum length, such as 10.
  • For the standard qualifiers pyUnits and pyCurrency, identify an application property (found at runtime on the same page as this property) that holds the units or currency code applicable to this property.

To allow the value of a qualifier to be set dynamically and temporarily at runtime, leave this field blank.

Property Explorer

Click Explore after you save the form if you completed the Table Type field on the General tab and want to preview the presentation of choices for this property when presented in input mode. This display also identifies any Declare Expression rules that reference the property, and dependencies among expressions. See Properties — Working with the Explore Window.