Record List Control Settings

Add a control from which the Request participant can insert several values in a list.

Control Description

The Record List control functions differently in Form- and Display-type Screens:

This control is available for the following Screen types:

See Screen Types.

Form-Type Screen Usage

Configuration Description

In the Form-type Screen, the Record List control records a record list. The record list is composed of multiple records, of which the Request participant enters data components for each record. The controls used to record each record's data components are designed in a second page of the same Screen containing the Record List control. The page that records the data components of each record cannot be on the same page as the Record List control.

When configuring the Record List control, specify how the record list displays information after the control has recorded each record for the list:

  • Column Headers: Specify each column header that represents the data components for each record. For example, label a column header First Name to indicate that this data component displays each person's first name for each record in the list.

  • Values: For each specified column header, reference the Variable Name setting value for the control on the second page that receives a data component for each record corresponding with each column header. For example, use a Line Input control with a Variable Name setting value of LineInputFirstName to receive each person's first name for each record in the list, and then associate that LineInputFirstName value with the First Name column.

After configuring the columns for the record list, sort the order in which they are to display in the record list.

Alternatively, use JSON format to configure the columns and their corresponding Variable Name setting values in their respective order to display in the Record List control.

Optionally, values can be edited after the Request participant initially enters the record(s) in the record list. However, after the Request participant submits the Screen, the record list cannot be changed.

Experience Description

Expect a similar experience as a Request participant when using a properly configured Record List control during a Request as follows:

  1. Enter information for each data component for the record.

  2. Click the OK button and ignore the Submit control.

  3. Submit the Screen to save the record list in the Request. After the Task is submitted, the record list cannot be changed.

Display-Type Screen Usage

Configuration Description

In the Display-type Screen, the Record List control displays a record list previously entered into a Form-type Screen in a previous Task of that Request.

When configuring the Record List control, specify how the record list displays information in the Display-type Screen:

  • Column Headers: Specify each column header that represents the data components for each record in the list. For example, if the record list had recorded first names, then label a column header First Name.

  • Values: For each specified column header, reference the Variable Name setting value for the control that corresponds with that specified column header's record data component. To do so, open the Screen that contains the Record List control that recorded the list, then locate the control that corresponds with the specified column header's record data component. For example, if a Line Input control with a Variable Name setting value of LineInputFirstName is used to record each person's first name for each record in the list, associate that LineInputFirstName with the specified First Name column header.

  • Repeat this procedure for each column header and its corresponding control that received a record data component for the record list. Make note of each control's Variable Name setting value, as you must provide this same value when configuring each column header in the record list.

After configuring the column headers for the record list, sort the order in which they are to display in the record list.

Alternatively, use JSON format to configure the column headers and their corresponding Variable Name setting values in their respective order to display in the Record List control.

Experience Description

After opening a Task or Manual Task with a Display-type Screen using a Record List control, the record list displays each record as entered in a Form-type Screen in a previous Task of that Request.

Use the _parent JSON Key to Reference Request Data from Controls in a Record List Control

The Record List control uses a unique JSON key available to any control placed into the secondary page from which the Record List control references its values so that those controls can reference Request data. Controls that are placed into that secondary page function within a container and may only access another control's data that is in the same secondary page. Use the _parent JSON key in a control's settings placed into the secondary page to reference Request data outside of that Record List control.

The _parent JSON key only applies to controls placed into a Record List control or Loop control.

Consider the following examples:

  • A Line Input control placed into the secondary page requires a default value to display from another Line Input control used during that Request of which its Variable Name setting is Line_Input_Data. From the Line Input control placed into the secondary page, enter the following into the Default Value setting: {{ _parent.Line_Input_Data }}.

  • A Select List control placed within the secondary page requires its options to display from another Select List control's options used during that Request of which its Variable Name setting is Select_List_Options. While configuring the Select List control placed into the secondary page to use Request data as its data source, enter the following into the Options Variable setting: {{ _parent.Select_List_Options }}.

Permissions Required

Your user account or group membership must have the following permissions to design a Screen unless your user account has the Make this user a Super Admin setting selected:

  • Screens: Edit Screens

  • Screens: View Screens

See the Screens permissions or ask your Administrator for assistance.

Add the Control to a Screen

Follow these steps to add this control to the Screen:

  1. View the Screen page to which to add the control.

  2. Drag the Record List icon into the Screen Builder canvas. Existing controls on the Screen Builder canvas adjust positioning based on where you drag the control.

  3. Place into the Screen Builder canvas where you want the control to display on the Screen.

  4. Do one of the following depending on whether you are using the Record List control on a Form- or Display-type Screen:

    Form-type Screen:

    1. Create a new page in this Screen. Use this page to design how the Request participant enters data that the Record List control records. The page that records the submitted records cannot be on the same page as the Record List control. See Add a New Page to a Screen.

    2. On the new page, design the form using controls from which the Request participant enters the data component that the Record List control receives for each record. In each of the controls that receive a data component for each record, make note of the Variable Name setting values for each control; these values correspond with how the Record List control displays the record list in the Value parameter for each column. Do not place a Submit Button control on the new page; otherwise, the Task cannot be submitted during a Request.

    3. Configure each of the controls placed on the new page. If a control placed into this page requires to use Request data, use the parent JSON key. See Use the parent JSON Key to Reference Request Data from Controls in a Loop Control.

    4. Return to the page that the Record List control is placed, and then configure the Record List control. See Settings. Ensure to add a Submit Button or Page Navigation control on the page containing the Record List control so that the Task can be submitted after all records have been added to the record list during a Request.

    Display-type Screen:

    1. Configure the Record List control. See Settings.

  5. Validate that the control is configured correctly. See Validate Your Screen.

Move the Control on the Page

After adding a control to a Screen page, you may move it to another location on that page such that it is above or below other controls placed on that page. Consider when moving this control that it contains the set of records during in-progress Requests. A control cannot be moved to another Screen page.

Follow these steps to move a control to another location on that Screen page:

  1. Place the control at the location on the page you want it. The other control(s) on the page automatically adjust position.

Copy the Control with its Settings

Copying a control also copies the current settings of that control. The copied control displays below other controls placed on that Screen page.

Follow these steps to copy a control:

  1. Select the control to be copied.

As a best practice, after copying a control, change the Variable Name setting value for the copied control to its own unique variable value. Otherwise, in-progress Requests that use this Screen read from and send data to both controls.

Delete the Control from a Screen

Deleting a control also deletes configuration for that control. If you add another control, it will have default settings.

Follow these steps to delete a control from a Screen page:

  1. Select the control to be deleted.

Example

Consider the following example how to use a Record List control in a Form-type Screen. Configure a Record List control to record the following data components about registrars for a conference. The table below shows how the Record List control displays the record list. Configuring each column and the Variable Name setting value for each control that records the data component that displays in that column is the same for both Form- and Display-type Screens.

On a second page in the same Screen, use Screen controls for Request participants to enter data components for each record. Ensure the following:

  • The Record List control references the specified controls on the second page. The controls that receive the record data components cannot be on the same page as the Record List control.

  • In each of the controls that receives a data component for each record, make note of the Variable Name setting values for each control; these values correspond with how the Record List control displays the record list in the Value parameter for each column. This setting is in the Columns panel. See Settings.

The following table outlines how to configure the Column Header and Value settings for each column in the Record List control for this example.

Control Type

Control's "Variable Name" Value

Record List "Column Header" Value

Record List "Value" Value

What It Represents

Line Input

firstname

First Name

firstname

Registrar's first name

Line Input

lastname

Last Name

lastname

Registrar's last name

Line Input

email

Email Address

email

Registrar's email address

Select

confirmation

Confirmation

confirmation

Attendance confirmation

The following image shows the Column Header and Value setting values in the Record List control to reference the Line Input control with the Variable Name setting value of firstname.

The following image shows the column configuration for the Record List control. See Settings for the Record List control setting descriptions.

Below is the secondary page in Preview mode for each conference attendee to enter a record.

Form-Type Screen Settings

The Record List control has the following panels that contain settings for Form-type Screens:

Variable Panel Settings

Click the control while in Design mode, and then click the Variable panel that is on the right-side of the Screen Builder canvas.

Below are settings for the Record List control in the Variable panel:

Variable Name

Use the Variable Name setting value in the following ways:

  • Reference this control by its Variable Name setting's value.

  • Reference this control's value in a different Screen Builder control. To do so, use mustache syntax and reference this control's Variable Name value in the target control. Example: {{ RecordListControl }}.

  • Reference this value in Visibility Rule setting expressions.

See best practices when editing a Request variable name.

List Label

Configuration Panel Settings

Click the control while in Design mode, and then click the Configuration panel that is on the right-side of the Screen Builder canvas.

Below are settings for the Record List control in the Configuration panel:

Editable?

Record Form

The following message displays if no additional pages exist in this Screen from which to reference other controls: No Data Available.

Columns Panel Settings

Click the control while in Design mode, and then click the Columns panel that is on the right-side of the Screen Builder canvas.

See the following procedures how to configure the column header(s) that display the record list data and from which control(s) on the additional page in this Screen to reference data components of each record for this control.

Add a Column to This Record List Control

Follow these steps to add a column to this control:

  1. Ensure that the Edit as Options List option displays. If the Edit as JSON option displays, click the Edit as Option List option.

  2. In the Column Header setting, enter the column header label that displays in the record list. This column header represents a data component for each record in the record list.

  3. In the Value setting, enter the Variable Name setting value for the control on the second page of this Screen that receives a data component for each record that corresponds with this column header. For example, use a Line Input control with a Variable Name setting value of LineInputFirstName to receive each person's first name for each record in the list, and then associate that LineInputFirstName value with a column header labeled First Name.

Edit a Column Configuration in This Record List control

Follow these steps to add a column to this control:

  1. Ensure that the Column list label displays. If the JSON Data option displays, click the Edit as Option List option.

  2. In the Column Header setting, edit the column header label that displays in the record list as necessary. This column header represents a data component for each record in the record list.

  3. In the Value setting, edit the Variable Name setting value for the control on the second page of this Screen that receives a data component for each record that corresponds with this column header as necessary. For example, use a Line Input control with a Variable Name setting value of LineInputFirstName to receive each person's first name for each record in the list, and then associate that LineInputFirstName value with a column header labeled First Name.

  4. Click Update. The edited column displays below the Column list label.

Delete a Column from This Record List Control

Follow these steps to delete a column from in this control:

  1. Ensure that the Column list label displays. If the JSON Data option displays, click the Edit as Option List option.

  2. Click Delete.

Sort the Order of the Options

Follow these steps to sort the order of the columns that display in this control:

  1. Ensure that the Column list label displays. If the JSON Data option displays, click the Edit as Option List option.

Design Panel Settings

Click the control while in Design mode, and then click the Design panel that is on the right-side of the Screen Builder canvas.

Below are settings for the Record List control in the Design panel:

Text Color

Background Color

Advanced Panel Settings

Click the control while in Design mode, and then click the Advanced panel that is on the right-side of the Screen Builder canvas.

Below are settings for the Record List control in the Advanced panel:

Visibility Rule

Do not to use visibility rules with Email-type Screens. Some email clients that do not render natively from a web browser, such as Microsoft Outlook or Mozilla Thunderbird for the desktop, alter the HTML during rendering and may break visibility rules.

Note the following regarding how to use visibility rules:

CSS Selector Name

See the following best practices regarding custom CSS in Screens:

Display-Type Screen Settings

The Record List control has the following panels that contain settings for Display-type Screens:

Variable Panel Settings

Click the control while in Design mode, and then click the Variable panel that is on the right-side of the Screen Builder canvas.

Below are settings for the Record List control in the Variable panel:

Variable Name

Use the Variable Name setting value in the following ways:

  • Reference this control by its Variable Name setting's value.

  • Reference this control's value in a different Screen Builder control. To do so, use mustache syntax and reference this control's Variable Name value in the target control. Example: {{ RecordListControl }}.

  • Reference this value in Visibility Rule setting expressions.

See best practices when editing a Request variable name.

List Label

Columns Panel Settings

Follow these steps before configuring columns in this Record List control:

  1. Save setting configurations in this Record List control if necessary.

  2. While in Design mode, open the Screen that contains the Record List control that recorded the list.

  3. Locate each control that corresponds with each specified column header. Each of these controls received a record data component when the record list was recorded in a Request. Make note of each control's Variable Name setting value, as you must provide this same value when configuring each column header in this Record List control.

Click the control while in Design mode, and then click the Columns panel that is on the right-side of the Screen Builder canvas.

See the following procedures how to configure the column header(s) that display the record list data and from which control(s) on the additional page in this Screen to reference data components of each record for this control.

Add a Column to This Record List Control

Follow these steps to add a column to this control:

  1. Ensure that the Column list label displays. If the JSON Data option displays, click the Edit as Option List option.

  2. In the Column Header setting, enter the column header label that displays in the record list. This column header represents a data component for each record in the record list.

  3. In the Value setting, enter the Variable Name setting value for the control on the second page of this Screen that receives a data component for each record that corresponds with this column header. For example, use a Line Input control with a Variable Name setting value of LineInputFirstName to receive each person's first name for each record in the list, and then associate that LineInputFirstName value with a column header labeled First Name.

Edit a Column Configuration in This Record List control

Follow these steps to add a column to this control:

  1. Ensure that the Column list label displays. If the JSON Data option displays, click the Edit as Option List option.

  2. In the Column Header setting, edit the column header label that displays in the record list as necessary. This column header represents a data component for each record in the record list.

  3. In the Value setting, edit the Variable Name setting value for the control on the second page of this Screen that receives a data component for each record that corresponds with this column header as necessary. For example, use a Line Input control with a Variable Name setting value of LineInputFirstName to receive each person's first name for each record in the list, and then associate that LineInputFirstName value with a column header labeled First Name.

  4. Click Update. The edited column displays below the Column list label.

Delete a Column from This Record List Control

Follow these steps to delete a column from in this control:

  1. Ensure that the Column list label displays. If the JSON Data option displays, click the Edit as Option List option.

  2. Click Delete.

Sort the Order of the Options

Follow these steps to sort the order of the columns that display in this control:

  1. Ensure that the Column list label displays. If the JSON Data option displays, click the Edit as Option List option.

Design Panel Settings

Click the control while in Design mode, and then click the Design panel that is on the right-side of the Screen Builder canvas.

Below are settings for the Record List control in the Design panel:

Text Color

Background Color

Advanced Panel Settings

Click the control while in Design mode, and then click the Advanced panel that is on the right-side of the Screen Builder canvas.

Below are settings for the Record List control in the Advanced panel:

Visibility Rule

Note the following regarding how to use visibility rules:

CSS Selector Name

See the following best practices regarding custom CSS in Screens:

pageScreen TypespageScreen Builder ModespageValidate Your ScreenpageEdit Your ScreenpageCheckbox Control SettingspageDate Picker Control SettingspageFile Download Control SettingspageFile Preview Control SettingspageFile Upload Control SettingspageGoogle Places Control SettingspageImage Control SettingspageLine Input Control SettingspageLoop Control SettingspageMulticolumn / Table Control SettingspageNested Screen Control SettingspagePage Navigation Control SettingspageRich Text Control SettingspageSelect List Control SettingspageSignature Control SettingspageSubmit Button Control SettingspageTextarea Control SettingspageExpression Syntax ComponentspageValidation Rules for "Validation Rules" SettingspageReference Magic Variables in ProcessMaker Platform Assets

Last updated

© Copyright 2000-2024 ProcessMaker Inc. All rights reserved.