Expressions — How to reference parts of aggregate properties |
A property of mode Page
, Value List
, Page List
, Value Group
, or Page Group
is known as an aggregate property. You can access a portion of an aggregate property to obtain a value or to set (assign) a new value. For example, for a Value List
property, you can copy or alter the value of the tenth element. For a Page List
property, you can add a new page at the end of the existing list of pages.
Use these notations and keywords to identify parts of aggregate properties. You can use these in reference directives, reference JSP tags, as parameters to the Property-Set method, and in data transforms. A few keywords such as <INSERT>
are only valid in destinations — target property references.
Referencing parts of a Page property
Use the standard dot notation to reference the value of a property on a page:
pagename.propertyname
This notation works for both getting a value and setting a value.
Referencing parts of lists and groups
For Value List and Page List properties, the index is a number starting with 1. To reference a single element of the list, use an expression that evaluates to a positive integer value.
For example, you can set the first two elements of the Value List
property named Months
using a data transform's Set action or using the Property-Set method as follows:
Numeric indexes work similarly for a Page List property. The LoanApplications Page List
property contains a Single Value
property named LoanAmount:
Each element of a Value Group
or Page Group
property is identified by a unique value that must be a Java identifier. You can enter a constant string as the index, such as Mother or Massachusetts:
You can also enter an expression that evaluates to a string value. The result must be a valid Java identifier.
On the Clipboard tool display, Value Group
values appear on the right panel:
Symbolic indexes — APPEND, CURRENT, INSERT, LAST, and PREPEND
Use keywords to identify certain elements of aggregate properties.
To add an element to the end (highest index value) a Value List
or Page List
property, use the <APPEND>
index keyword:
This keyword is meaningful only in target property references, not expressions.
To set or retrieve an element value from the end (highest index value) a Value List
or Page List
property, use the <LAST>
index keyword.
For example, this sets the value of the highest numbered element in the Month Value List
property:
Similarly, this sets the LoanAmount value in the highest-numbered LoanApplication page:
Use the <INSERT>
keyword followed by an integer to insert a new element and its value into a Value List
or Page List
property at a numeric index position. Any elements with the same or higher index value are "pushed down" by one.
This keyword can only be used in target property references, not expressions. You can use a literal number for the index:
or a numeric property reference for the index:
If the integer is equal to the size of the list, or greater by one, PRPC inserts the new value as a new last element. If the integer is larger than the size of the list by 2 or more, PRPC creates an exception.
Use the <PREPEND>
keyword insert a new element and its value into a Value List
or Page List
property as the first element. All existing elements are "pushed down" by one.
This keyword can only be used in target property references, not expressions.
Within a single activity step, you can set up an iteration that performs a repeated computation over a collection, such as all the elements in a Value List
property. In that context, the <CURRENT>
index identifies the index value for the current iteration.
aggregate property, expression, Java identifier | |
How to enter property references in expressions |