This section describes the controls you can add to a form.
Table 5-5 Control Types and Supported Data Types
Control Type |
Data Types |
||||||
---|---|---|---|---|---|---|---|
Boolean |
Date |
Decimal |
DN |
Integer |
String |
Time |
|
x |
x |
x |
x |
x |
|||
x |
|||||||
x |
|||||||
x |
|||||||
x |
|||||||
x |
|||||||
x |
|||||||
x |
|||||||
x |
|||||||
|
|
|
|
|
x |
|
|
x |
x |
x |
x |
||||
x |
x |
x |
x |
||||
x |
x |
x |
x |
||||
x |
x |
x |
x |
||||
x |
x |
x |
x |
||||
x |
|||||||
x |
|||||||
x |
|||||||
x |
Designer supports a specialized form control called nrfRequestDN of data type Role Request. The control type is Text. It is defined by default when you create a copy of the standard roles based provisioning request definitions. It represents the Role Request object.
Designer supports a special internal control you can add to a form to allow users to add comments to a workflow or to view previously entered comments. Comments are required on forms that use
or . The comments are not part of the workflow data so you cannot access them via the flowdata object. The comments are special data items stored in the afcomment table of the workflow database. The comments are persisted as long as the row for the requestid in the afprocess table exists.To create a form that supports user comments:
Add a control to your form. Select Comment as the data type. The Form Field name is automatically defined as apwaComment and the Control Type is TextArea. A single form can contain only one comment field.
Add a
or to the form.For more information, see Section 5.4, Action Reference.
The properties in the following table are available for each control.
Table 5-6 General Properties
List-based controls sort content alphabetically. For DN-based lists, the sort order is alphabetical based on the Display expression property result. For all other types, the sort order is based on the display label.
Use the CheckBoxPickList control to allow users to view and choose one or more values from a dynamically generated list of choices displayed as check boxes.
When the associated data type is a DN retrieved from the Identity Vault, you can display the checkbox label as the fully qualified DN or use the Display expression property to specify the attributes to display instead.
Figure 5-10 Sample CheckBoxPickList Control
Table 5-7 CheckboxPickList Properties
Property Name |
Description |
---|---|
|
When you populate this control with a DN retrieved from the Identity Vault and you want that value to display in a user-friendly fashion, you should choose an entity from the drop-down list and specify a set of attributes in the Display expression property. Leave this value blank if you want to display the full DN or CN value retrieved from the Identity Vault. The entity you choose must have the directory abstraction layer View property set to True and be the entity whose DN you are retrieving from the Identity Vault. |
|
Required when you specify an . Choose the attributes to display as the check box labels. For example, to display the user entity’s first and last name attributes, construct an expression like this: FirstName LastName.The attribute’s directory abstraction layer properties for View, Read, Search, and Required must be set to True. |
|
When set to True, users can select more than one entry. |
|
When set to Ttrue, sorts results in ascending order. For details, see Sort Order. |
Use this control for display and entry of a date and time. This allows users to choose a date from a pop-up calendar or type a date in a text field. At runtime, the form automatically validates the date by using the format for the user’s locale and time zone. If the user enters an incorrect format, the form displays an error message. The DatePicker control’s tooltip displays the valid date format. The default DatePicker control looks like this:
Figure 5-11 Sample DatePicker Control
When the Show date picker property is True, the form displays the date field along with a button. When the user clicks the button, the form launches a calendar for the user to select the date. The calendar pop-up is shown here:
Figure 5-12 Sample Calendar Control
Table 5-8 DatePicker Control Properties
Use this control for display and entry of a date and time for a Time data type. This allows users to choose a date and time from a pop-up calendar or type a value in a text field. At runtime, the form automatically validates the date and time by using the format for the user’s locale and time zone. If the user enters an incorrect format, the form displays an error message. The DateTimePicker tooltip displays the valid date format. The default control looks like this:
Figure 5-13 Sample DateTimePicker Control
When the
property is set to True, the form displays a text field followed by a calendar button. When the user clicks the calendar button, the form launches a calendar control for the user to select the date and time values. The calendar pop-up is shown here:Figure 5-14 DateTimePicker Calendar Control
Table 5-9 DateTimePicker Control Properties
Use this control to allow users to select a container object from within the root container that you specify. You can use this control to limit the user to a subtree of a container. This is a specialized version of the DNLookup control.
Figure 5-15 DNContainer Control With Root Container Specified
Table 5-10 DNContainer Control Properties
Use this control to display a read-only DN. You populate the control from flowdata. The control can display the full DN or a set of attributes associated with the DN depending on the properties you set. The DNDisplay control cannot be modified by the workflow engine. For this reason, it is not available for post activity mapping.
Figure 5-16 Sample DNDisplay
Figure 5-17 Sample DNDisplay with Display Expression Specified
Table 5-11 DNDisplay Control Properties
Property name |
Description |
---|---|
|
Leave this value blank if you want to display the full DN or CN value. If you want to mask the DN by displaying attributes instead, launch the expression builder and select the desired attributes from the list. (You must first specify an .)For example, to show the user entity’s first and last name attributes, construct an expression like this: FirstName LastName. Make sure the attribute’s View, Read, Search, and Required properties are set to True in the directory abstraction layer. See Section 3.7.2, Attribute Properties. |
|
Leave this value blank if you want to display the full DN or CN value retrieved from the Identity Vault. If you want to mask the DN or CN by displaying attributes instead, choose the entity from the drop-down list and specify a set of attributes in the property.The entity you choose must:
For more information, see Section 5.6, Working with Distinguished Names. |
Use this control to allow users to search and retrieve DNs from the Identity Vault. You can initialize the control with a DN from the flowdata. You set properties to control the entities and containers that the user can search and the format of the DN.
Figure 5-18 Sample DNLookup Control
The buttons associated with the DNLookup control are described in Table 5-12.
Table 5-12 DNLookup Control Buttons
Table 5-13 DNLookup Control Properties
Property Name |
Description |
---|---|
|
This property only applies when you initialize the control from flowdata. Leave this value blank if you want to display the full DN or CN value. If you want to mask the DN by displaying attributes instead, launch the expression builder and select the desired attributes from the list. (You must first specify an .)For example, to show the user entity’s first and last name attributes, construct an expression like this: FirstName LastName. Make sure the attribute’s View, Read, Search, and Required properties are set to True in the directory abstraction layer. See Section 3.7.2, Attribute Properties. |
|
This property only applies when you initialize the control from flowdata. Leave this value blank if you want to display the full DN or CN value retrieved from the Identity Vault. If you want to mask the DN or CN by displaying attributes instead, choose the entity from the drop-down list, then specify a set of attributes in the property.The entity you choose must:
For more information, Section 5.6, Working with Distinguished Names. |
|
Determines whether the object selector dialog box performs an Object Lookup or a Container Lookup. The following is an example of an Object Lookup: : Causes the object selector dialog to perform an object lookup. You specify the lookup criteria via the property. : Causes the object selector dialog to display one or more containers for selection. The containers for searching are determined by the property, which is specified in the directory abstraction layer for the entity named in the required property. For example, if the property is Group, the search container is set to %group-root% by default. If no search container is used, the search root specified during the User Application installation is used. |
|
Use this field to configure the field’s visible width on the form. The default is 200 pixels. |
|
If set to True, the form displays the button. |
|
If set to True, the form displays the button. |
|
If set to True, the form displays the button. |
Use this control to allow users to construct a DN value by specifying a naming value and choosing a container.
Figure 5-19 Sample DNMaker Control
Table 5-14 DNMaker Control Buttons
Table 5-15 DNMaker Control Properties
DNQuery is a specialized version of the DNLookup control. Like DNLookup, DNQuery allows users to search and retrieve DNs from the Identity Vault; however, with the DNQuery, the object selector content can be driven by the result of a directory abstraction layer Queries object rather than from properties.
Table 5-16 DNQuery Control Properties
Property name |
Description |
---|---|
|
Specifies the key of the DAL Queries object you want executed. You can select it from the Event Action Expression Builder. For more information about using DAL queries, see Section 5.7, Using DAL Queries in Forms. For more information about defining DAL queries, see Section 3.4, Working with Queries. |
|
Specifies the value for the query parameters. For example, this passes the String Sales to the Queries parameter called groupname: (function (){return {"groupname":"Sales"}})(); |
|
When you populate the control with initial data from a Data Item Mapping value, use this property to specify the attributes to display. |
|
This property only applies when you initialize the control from flowdata. Leave this value blank if you want to display the full DN or CN value retrieved from the Identity Vault. If you want to mask the DN or CN by displaying attributes instead, choose the entity from the drop-down list, then specify a set of attributes in the property.The entity you choose must:
For more information, Section 5.6, Working with Distinguished Names. |
|
Use this field to configure the field’s visible width on the form. The default is 200 pixels. |
|
If set to True, the form displays the button |
|
If set to True, the form displays the button. When a DAL global query is specified, the object history button is not shown. |
|
If set to True, the form displays the button. |
Use this control to allow users to select a single entry from a drop-down list. The contents of the list are defined in a directory abstraction layer global list element.
Figure 5-20 Sample Global List Control
Table 5-17 Global List Properties
Property Name |
Description |
---|---|
|
Specifies the unique identifier of the global list. This must correspond to the key specified in the directory abstraction layer. |
For more information about global lists, see Section 3.3, Working with Lists.
Use this control to add HTML fragments to the Form Detail. You can do this by specifying the HTML fragments in the HTML content property. In addition, you can conditionally add the HTML fragment via an event on the form control. In either case, specify the HTML through the use of an anonymous function, such as: ( function() { return "<yourTag yourAttr='your attr value' />"; } ) ();
For example:
(function(){ return "<table bgcolor='#C0C0C0'><th colspan='3' align='center'>Table Header Goes Here</th><tr><td>Value 1.1</td><td>Value 1.2</td></tr><tr><td>Value 2.1</td><td>Value 2.2</td></tr></table>"; })()
Use this control to display a set of labeled check boxes. You specify the label and its associated values through the List item property. A sample MVCheckbox control is shown below.
Figure 5-21 Sample MVCheckbox Control
Table 5-18 MVCheckbox Control Properties
Property Name |
Description |
---|---|
|
Allows you to define a set of static values that comprise the check box labels and values. Click the button to launch the list value dialog box shown here: |
HINT:To retrieve user-entered values for this control, use flowdata.getObject() and not flowdata.get(). If you use flowdata.get(), you get only the first value.
For more information on preselecting values, see the Section 9.2.3, Form Control Examples.
Use this control to allow users to display, edit, or add multiple values in a drop-down list box. You can load the data dynamically from the Identity Vault, or allow users to enter the values.
The control’s appearance varies depending on the data type of the control and the properties that you specify. For example, if the data type is a DN, you can set properties that displays specific attributes related to the DN. You can also enable an object selector button that allows users to search and select values by setting the
property.There are also properties that let you specify a DAL Global Query to execute or specify a root DN to drive the object picker.
Table 5-19 MVEditor with Object Selector Properties Set Control Buttons
Button |
Description |
---|---|
Launches a search dialog box called an object selector. The object selector dialog box looks like this: The user can select a value from the list to populate the control. The attribute displayed in the drop-down list (Attribute UI Control Properties. The availability of this button is controlled by the property. in the above example) is specified in the directory abstraction layer. You specify it in the attribute’s UIControl property. See |
|
Allows users to view the history of objects that they have searched. They can select from this list or clear its contents. The availability of this button is controlled by the property. |
|
. Deletes the field contents. The availability of this button is controlled by the property. |
If you do not set the object lookup properties, the MVEditor displays a simple edit control.
Figure 5-22 Sample MVEditor without Object Lookup Properties Set
Table 5-20 MVEditor Control Buttons
Button |
Description |
---|---|
Adds an item to the end of the list. |
|
Deletes the selected list item. |
|
Edits the selected list item. |
HINT:When the MVEditor control’s Editable property is set to False, this control is read-only and the form does not display any MVEditor control buttons.
Table 5-21 MVEditor Control Properties
Property Name |
Description |
---|---|
|
When set to True and there is a single row of data (and the data is not a DN), the control displays a data entry text field. The text field is displayed when the field is empty or contains only one value. Otherwise, the drop-down list is displayed. If more than one row of data exists, then the drop-down list always displays. |
|
Specify this value if you want the control populated by the results of the Global Query that you specify. You specify the key name. You can select it from the Event Action Expression Builder. For more information about using queries in forms, see Section 5.7, Using DAL Queries in Forms. For information about defining queries, see Section 3.4, Working with Queries. |
|
Specifies the value for the query parameters. For example, this passes the String Sales to the queries parameter called groupname. (function (){return {"groupname":"Sales"}})(); |
|
Leave this value blank if you want to display the full DN or CN value. If you want to mask the DN or CN by displaying attributes instead, launch the expression builder and select the desired attributes from the list. (You must first specify an .)For example, to show the user entity’s first and last name attributes, construct an expression like this: FirstName LastName. Make sure the attribute’s View, Read, Search, and Required properties are set to True in the directory abstraction layer. See Section 3.7.2, Attribute Properties. |
|
Forces user-entered list items to be unique. |
|
Leave this value blank if you want to display the full DN or CN value retrieved from the Identity Vault. If you want to mask the DN or CN by displaying attributes instead, choose the entity from the drop-down list and specify a set of attributes in the property.The entity you choose must
See Section 5.6, Working with Distinguished Names for more information. |
|
Use this field to configure the field’s visible width on the form. The default is 200 pixels. |
|
If set to True, ignore case when enforcing uniqueness. |
|
Minimum integer or decimal value. |
|
Maximum number of characters for string values. The control blocks input when this value is reached. |
|
Minimum number of characters for string values. The control validates that the user enters at least this number of characters. |
|
The number of lines displayed by the control. This is not the number of records retrieved or displayed, but the vertical size of the control. If you set this number to 10 and there are only 5 records to display, the control size is still 10 lines. You can set the number of lines to 1 or to 3 or greater. You cannot set it to 2 because it does not leave enough space for the browser to display scroll bars. If you set it to 2, Designer generates a warning in the Project Checker view and resets it to 3. |
|
If set to True, only numbers can be entered. |
|
Determines whether the object selector dialog box performs an Object Lookup or a Container Lookup. The following is an example of an Object Lookup: : Causes the object selector dialog box to perform an object lookup. You specify the lookup criteria via the Entity key for DN expression lookup property. : Causes the object selector to display one or more containers for selection. The containers for searching are determined by the property, which is specified in the directory abstraction layer for the entity named in the property. For example, if the property is Group, the search container is set to %group-root% by default. If no search container is used, the search root specified during the User Application installation is used. |
|
When set to False, the DN is displayed rather than the Display expression. Consider using this when you expect a large number of DNs to be returned, and you are concerned about performance. |
|
Specify a root container for lookups when users click the object selector button. If you specify an entity key and a root container, the entity key takes precedence. |
|
When set to True, displays the button next to the control. |
|
When set to True, displays the button next to the control. |
|
When set to True, sorts the results in ascending order. For details, see Sort Order. |
|
The maximum numeric value users can enter. |
HINT:To retrieve user-entered values for this control, use flowdata.getObject() and not flowdata.get(). If you use flowdata.get(), you get only the first value.
For more information about preselecting items, see Section 9.0, Working with ECMA Expressions.
Use the PickList control to allow users to view and choose one or more values from a dynamically generated list of choices. The list items are DN or CN values retrieved from the Identity Vault. You can display the full DN or CN or use the PickList properties to specify the attributes to display instead.
Figure 5-23 Sample PickList Control without DN Masking
Figure 5-24 Sample PickList Control with DN Masking
Table 5-22 PickList Control Properties
Property Name |
Description |
---|---|
|
When set to True, the user can select more than one list value using their platform-specific multi-select keys. When set to True, the control displays a minimum of three lines regardless of the value specified in the Number of lines displayed property. If this value is False, the Number of lines displayed property is used. |
|
Leave this value blank if you want to display the full DN or CN value. If you want to format the DN or CN by displaying attributes instead, launch the expression builder and select the desired attributes from the list. (You must first specify an .)For example, to show the user entity’s first and last name attributes, construct an expression like this: FirstName LastName. Make sure the attribute’s View, Read, Search, and Required properties are set to True in the directory abstraction layer. See Section 3.7.2, Attribute Properties. |
|
Leave this value blank if you want to display the full DN or CN value retrieved from the Identity Vault. If you want to mask the DN or CN by displaying attributes instead, choose the entity from the drop-down list and specify a set of attributes in the property.The entity you choose must:
|
|
Use this field to configure the field’s visible width on the form. The default is 200 pixels. |
|
The number of lines displayed by the control. This is not the number of records retrieved or displayed, but the vertical size of the control. If you set this number to 10 and there are only 5 records to display, the control size is still 10 lines. The number of lines displayed is related to the Allow multiple selections setting. When Allow multiple selections is set to True, the number of lines displayed is always 3 (or more). When is set to False, you can set the number of lines to 1 or to 3 or greater. You cannot set it to 2 because it does not leave enough space for the browser to display scroll bars. If you set it to 2, Designer generates a warning in the Project Checker view and resets it to 3. |
|
When set to True, two lists are displayed. A list on the left displays the unselected values, and the list on the right displays the selected values. The Allow multiple selections property must be set to True. If set to false is ignored. |
|
When set to True, sorts results in ascending order. For details, see Sort Order. |
HINT:To retrieve user-entered values for this control, use flowdata.getObject() and not flowdata.get(). If you use flowdata.get(), you get only the first value.
For more information on displaying the control with a preselected option, see Section 9.2.3, Form Control Examples.
Use this control to display a list of items in a drop-down list from which users can select a single item. The list items are static and are stored with the provisioning request definition. The text “Click here to select” only appears if the field is not set to Required.
Figure 5-25 Sample Static List Control
Table 5-23 Static List Properties
Use the Text control for data display or user input. User input is validated depending on the control’s data type.
Figure 5-26 Sample Text Control
Table 5-24 Text Control Properties
Property Name |
Description |
---|---|
|
Use this field to configure the field’s visible width on the form. The default is 200 pixels. |
|
The lowest number allowed for decimal or integer values. |
|
The maximum length for string values. Blocks input when this length is reached. |
|
The minimum length for string values. Validates that the user enters a string at least this long. |
|
Specifies the number of characters a user is allowed to enter. This is related to Field width in pixels. |
|
The highest number allowed for decimal or integer values. |
|
An expression used for validating the field’s data. Designer provides a default set of validation masks by default. You must enable them through Section 2.3, Setting Provisioning View Preferences. . For more information, see |
Use this control to display or accept input of multi-line data. Users can select multiple lines of data using the multi-select key combination for their platform.
Figure 5-27 Sample Text Area Control
Use this read-only control to label your form or provide instructions.
Use this control to display a choice of True or False as a set of radio buttons.
Figure 5-28 Sample TrueFalseRadioButtons Control
This control has no custom properties.
Use this control to display a choice of True or False in a drop-down list. The text “Click here to select a value” displays only when the field is not required.
Figure 5-29 Sample TrueFalseSelectBox Control