What's New?
As of March 5, 2025
- Making table cells mandatory You can now set specific table cells as mandatory , ensuring users provide required information before submitting the form. This is helpful for use cases, like Conflict of Interest, where the user needs to fill in some or all information about Board Membership, Side businesses, etc.
- Configure Minimum Number of Rows When the ‘User can add rows’ option is toggled on, you can now specify a required minimum number of rows. This is useful, for example, if users must provide details for at least two parties involved in a contract or compliance scenario.
SKIP AHEAD TO
Why would you use a TABLE block?
How to configure your TABLE block
Making Cells Mandatory
Configure Minimum Number of Rows
How to create a dynamic table
How to create automated calculations in TABLE blocks
Limitations of Tables & Workarounds
Why would you use a TABLE block?
The TABLE block creates a page in the Assessment that displays a table where end users can enter their inputs into and perform automated calculations.
TABLE blocks can typically be used for (but not limited to):
- Expense calculations
- Collecting personal information (name, age, gender, DOB etc)
How to configure your TABLE block
- Click on your Table block then click "Open Table Builder"
- [Optional] You can use the "Disable BACK button" toggle to prevent users from accessing any pages before this block. Turning this toggle ON will hide the "BACK" button on this page, as well as prevent the end-user from navigating back via the transcript. Any route backs returning to pages before this block will continue to work.
Disabling the back button is useful in the following cases:
- You have an integration before this block, and you want to prevent users from accidentally triggering it twice
- You have email(s) before this block, and you want to prevent users from accidentally triggering it twice
- You're presenting some outcome to the end-user, and want to prevent them from returning to previous pages and changing their answers
- You've reached the end of the app, and would like to prevent the user from modifying their submission
An example of the "Disable BACK button" toggle on a FORM block. This feature is also available on the List, Yes/No, Table, Transcript, Doc Review and End blocks.
- Add or delete rows and columns by either:
a) Click and drag the bottom right-hand corner of the Table. Dragging down will create more rows while dragging right will create more columns. Dragging diagonally will create both rows and columns. The opposite of the above will delete rows and columns respectively.
b) Right click on the numerical row labels or alphabetical column labels
In the screenshot below, the alphabet column "C" has been right clicked
- Add and define a header row by clicking on row label '1' and toggling “Header Row”
- Define cell input types by clicking onto a cell and select a cell type.
Cell types available:
Cell Type Description Text A cell that displays text Text Input Cell area which allows end users to input text Number Input Cell area which allows end users to input a number Radio Asks your user to select from multiple options Checkbox Gives the option for your user to check/uncheck the checkbox Dropdown Asks your user to select from a dropdown list - (Optional) When you don’t know how many inputs the end user has, you can allow your end user to add rows manually by
Notes:
- Please ensure each of the cells allow for the appropriate input e.g. Text Input/Number Input.
- The row in which your end user can add rows will be highlighted orange in the Table Builder
- End users are able to skip over TABLE pages without entering information – there is no required toggle
Making Cells Mandatory
To prevent users from leaving important cells empty, you can now mark specific fields as required.
- Click on your Table block, then click “Open Table Builder.”
- Select the cell that requires user input.
- In the cell’s property editor, enable the Required toggle.
Note: This feature can only be enabled for Text Input, Number Input, and Dropdown fields. It is currently unavailable for Radio and Checkbox fields.
Example:
In the example below, we can see that the user is unable to proceed if any required field(s) are left blank.
Configure Minimum Number of Rows
- Click on your Table block, then click “Open Table Builder”.
- Select the cell where user input is required.
- Enable the 'User can add rows' option by toggling it on.
- Set the minimum number of rows required by entering the desired count in the Minimum number of rows field.
Example:
In the example below, an error message is displayed, preventing the user from proceeding because only 1 counterparty's details were provided, while the minimum number of rows is set to 2.
How to create a dynamic table
Tables can dynamically generate rows to match the number of entries in a prior LIST variable (i.e. 3 LIST entries will generate 3 rows in the table).
Follow the instructions below to set this up
- In your App Studio, drag in and add a LIST block to your App. Learn more.
- Click “Show Logic” on the top toolbar and identify the LIST variable you want to match the rows of your Table to.
- Inside a TABLE block, set up the header row then reference the LIST variable using double curly braces (e.g. {{LIST23}}) in the relevant column or row. In this case, the LIST block captured the name of dependents and therefore will be referenced under the “Name of dependent” column in cell A2.
Note: Dynamic rows will be recognised through the row that is highlighted in green
- Define cell input types by clicking onto a cell and select a cell type.
How to create automated calculations in TABLE blocks
You can customise TABLE blocks to perform automated calculations by using similar syntax in excel spreadsheets. The components of the calculations can include the numerical inputs of end users for dynamic calculations as the end user enters numerical values in the cells of the table.
Available Calculations
Your spreadsheet can auto-calculate using:
Calculation | Operator | Example |
Sum | sum | =sum(A2) OR =sum(A2, A3, A4) |
Subtract | - | =A1-A2 |
Multiply | * | =A1*A2 |
Divide | / | =A1/A2 |
Parenthesis | () | =(A1-A2)*A3 |
If | IF(Condition, True, False) | =IF(A1>A2, "Yes", "No") |
To run a calculation in a cell:
- Set the input type to Text
- Begin your entry with “=”
- After the =, pair cell names (e.g. A1, B2) and calculation operators from the above table
Your entry may look like this in the Table Builder:
And appear to your end user like this:
Once your end user enters numbers into cells referenced in your calculation line, the auto-calculations will run and be displayed:
Note: When multiplying using negative numbers, add a space between the multiplication and negative number operators, i.e. =A2 * -100, not A2*-100.
Limitations of Tables & Workarounds
As it stands, each Table can only hold upto 14 rows and 14 columns of data. To work around this, you can:
- If there are less than 7 data headings, you can duplicate the headings in the same table to ensure that all the data is captured. In the below screenshot, “Number”, “Name” and “Cat Person or Dog Person” data headings are duplicated since there are more than 14 rows required.
- Use two or more tables to store all of your data, use a MERGE block to convert all the inputs into a list and reference this list to create a dynamic table as shown in the above “How to create a dynamic table”
- If the table will be modified by the end user, enable the "User can add rows" functionality which will enable them to add as many rows as they'd like.