Cascading List Combo (CLC) Backed Formlets utilize cascading list combos (CLC) to drive which formlet renders on a root form. To add a CLC Backed Formlet to a root form, you'll need at a CLC in the app and at least one published formlet.
You can only use one CLC Backed Formlet once per tab per root form.
To further explain, in the example below, when the field on the root form "Country" = "UK", the formlet "Addresses UK" will appear in the designated spot. The same app could also have a similar formlet named "Addresses USA" which also includes a field for "State" that would only show when "USA" is chosen from the drop-down of the field "Country".
Each set of conditions in a Cascading List Combos (CLC) will map to a selected formlet. When those conditions are met on the root form, the formlet will render.
If the same field appears on a form multiple times then all fields will automatically update to show the latest information. In the example above, the "Name" field is on both the root form and the formlet so John Smith will be populated in both instances when it is selected from either drop-down.
Before We Start...
This tutorial will assume your understand the following concepts:
Let's Get Started!
Our goal in this tutorial will be to create a form that dynamically handles which fields (by way of formlet) to include on the form based on user selections.
We will start by making three simple formlets. The Additional Info Formlet will have an attachment and date field named Attachment and Date 1, respectively. The Summary Formlet will have a text field named Summary. The User Info Formlet will have two listcombo fields named User Name and User Email.
Publish each of these Formlets.
Currently, only CLCs that use listcombos can be used to map formlets to limit complexity and ensure performance. Multiselect backed CLCs will be considered in the future.
In this tutorial, the Root Form is named Contract Approval.
Add fields to the root form that will correspond to the columns of the CLC that you will be using. In this tutorial we will add the fields Area of Law, Matter Type, and Matter Sub Type because we will be using the Matters CLC which has three levels and a hierarchy from top to bottom of:
- Area of Law
- Matter Type
- Matter Sub Type
Publish the Form.
Navigate to the Formlets tab under Form Controls.
If your App does not have a Cascading List Combo (CLC) then the CLC Backed Formlet option will appear grayed-out when on the Formlets Tab on the Editor page under the Dependent Formlet Controls section.
If the CLC Backed Formlet option is enabled, drag the tile to the canvas.
The Select Formlet modal will pop-up and prompt you to select a cascading list combo. For this tutorial, we will be selecting Matters. It is the only CLC in the app so it is the only one that appears in the drop-down list. Click "Next" to go to the next screen.
The next screen allows you to map the formlet to the conditions. You can individually select a formlet for each combination of the CLC by double-clicking into the Formlet field for a row.
You can set the same formlet for all (or multiple) combinations at the same time by selecting the checkbox in the header (or appropriate checkboxes) and selecting "Set Form" which will open the Set Nested Form modal.
Similar to the Select Formlet modal, the Set Nested Form modal will only have options in the drop-down that correlate to what is available in the app. We want the Summary Formlet to appear when the Area of Law is "Compliance", and the User Info formlet to appear when the Area of Law is "Commercial", and the Additional Info formlet to appear when the Area of Law is anything else. Click "Select".
Review and click "Save".
You can select the checkbox in the header (or the appropriate checkboxes) and then click "Clear Selected Form" to remove the Formlet selection.
After saving the CLC Backed Formlet will appear on the canvas and the option will be grayed out under Dependent Formlet Controls because you can only have one per tab.
It is recommended to test out how it works in Preview before publishing.