Form builder allows you to create your own custom data capture aspect.
Quick Start
Key Concepts
Form Builder vs Aspects
The terms aspect and form builder are used frequently in ShareDo. Here are some differences:
- Aspect: is a user interface section that can be added to a ShareDo object (for example, a work item, participant, and ODS entity).
- Form builder: A special aspect type that you can use to add a custom data capture form to a blade. The aspect is the container in which your form is placed. ShareDo configures connections for saving, so you don't have to.
Common Questions Answered
What Do Form Builders Look Like?
When you add a form to a blade using a form builder aspect, ShareDo adds it as a section of the blade or a navigation bar, which shows the form on a separate blade. All work types have a key facts blade and these are made up of different aspects.
This is a task work type key fact blade.
Each section or navigation bar on the form is an aspect. In Modeller, the aspects for this work type look like this.
Choose the form builder aspect to add your custom data capture form to a blade.
Where Can I Use Custom Data Capture Forms?
You can use form builders in the following places:
- Add an Aspect to a Work type
- Participants
- Define ODS Types on a Participant Role
- Add Custom Data to a Participant
Work type includes many of the out-of-the-box work types such as instruction, case, payments, offers, tasks, and service requests.
Are Form Builder Aspects Inherited?
When you create a new work type as a derived type (child) of another work type, aspects are not inherited by default. The key facts blade starts out blank. The work type Modeller does, however, give the user the option to 'Copy from parent' to copy aspects, including form builder aspects, from the parent work type.
This option is found by pressing the aspects button on your chosen work type.
Can I Allocate Specific Permissions for a Custom Data Capture Form?
Yes. When adding the form builder aspect, use the padlock button to specify a specific global permission the user needs to access the aspect.
Can I Stripe / Contextually Display Aspects?
Yes. Custom data capture forms can be contextually displayed based on matching rules. Use the eye button to add a display rule to your form builder aspect.
How do you Display Custom Data Capture Using a Navigation Bar
You can display a custom data capture form on its own blade and access it from a navigation bar.
When setting up your form builder aspect, ensure you add it to the footer section of the blade. In the settings for the aspect, the display type is set to Nav Bar.
Do I Need To Make Any Database Changes to Add My New fields to the Database?
No. The Modeller framework handles that for you. You only need to configure your fields in form builder.
Do I Need to Make Any Changes to the Reporting Database When I Add New Custom Data Capture Fields?
No - fields added using form builder will automatically flow into the reporting database.
Will Changes to Data in Form Builder Fields Be Auditable?
The work type audit captures data. You can also capture changes in chronology by adding the chronology attribute.
Capturing Custom Data Changes in Chronology (Form Builder)
Form Builder Elements
The construction of a custom data capture form comprises the elements below.
Element | Description |
---|---|
Form Definition | The form definition captures the generic information about the form such as the layout and title. When you create a new form, you use a standard template. You can use the template with just a new form title. |
Section Definition |
Forms can be split into different sections to help organise the data in a way that is more structured for the user. |
Field Definition |
Defines the details for each individual field. Field definition can include details such as the title, format, display and help text for the field. |
Form Builder Aspect |
Added to a work type, participant, ODS entity or party type blade definition to show the form. |
GUID |
A GUID is the unique identifier given to each element. Each time you copy a snippet, you are provided with an individual guid for that item. |
Unique field names per context
Each form field in ShareDo has a unique ID (GUID). However, the field name must also be unique within the specific entity it is configured in—this could be a work item, participant, organisation, or team, not just within an individual form.
For example, if a field named favouriteColour
appears in two different forms within a matter, both instances share the same name but have unique IDs. If a user edits both forms in the same matter blade, only one answer is saved because the field name is shared across the matter. This behaviour ensures consistency when the same field appears in multiple locations.
However, the same field name used in different contexts—such as a person or a task—captures separate answers. This means that favouriteColour
configured for a person will store a different value than favouriteColour
configured for a task.
Snippets
The form builder tool comes with a set of snippets that provide examples of each field type and the available configuration.
Snippet's visibleIf
attribute allows the field to be shown based on a condition. Make sure you remove the visibleIf from the snippet if you do not want to conditionally display the field. Otherwise, if the condition is not met, the field will not appear in your form. See the article Writing expressions using Form Builder visibleIf for more information.
This form shows examples of the available snippets.
Snippet | Description |
---|---|
Currency | Displays a currency field. ![]() ![]() |
Date | Date field. Provides a calendar date-picker from which a user can pick a date. ![]() See the Form builder data/time field enhancement section of the ShareDo v7.6.0 Release Notes for important information on the displayFormat attribute. In versions before v7.6, the format attribute was used but restricted date formatting to the ISO 8601 standard (YYYY/MM/DD). Changing the date format could cause issues in ShareDo. |
Date / Time | Date time fields. Provides the user with a calendar and clock control to pick the date and time. ![]() See the Form builder data/time field enhancement section of the ShareDo v7.6.0 Release Notes for important information on the displayFormat attribute. In versions before v7.6, the format attribute was used but restricted date formatting to the ISO 8601 standard (YYYY/MM/DD). Changing the date format could cause issues in ShareDo. ![]() |
Integer | Displays an integer. Use configuration to set the min and max values. ![]() |
Label | The label snippet allows you to place a text-only label onto your form. ![]() ![]() |
Heading | The header snippet allows you to place header-style text onto your form. ![]() |
Option Set Picker |
This snippet allows you to add a drop-down list to your form.
Note that if a subsequent field has a visibleIf display option based on the option set selection, then you should use the ID of the selected item rather than the option set value name. |
API Picker Field |
Allows you to point the form builder field to an API endpoint (hosted by ShareDo, or in a ShareDo plugin) that will provide a list of values to be shown in a drop-down list.
It is similar to the Option Set picker, but the list of values comes from an API. Attributes:
The endpoint specified in the endpointUri setting must return a JSON array in the following format:
The The
ShareDo contains an example endpoint that returns a list of countries in this format. Add an API Picker Field, and set the endpointUri to
to see a working example of this control. |
Section |
Defines a new section on the form. |
Text | Provide the addition of a standard text field. ![]() |
Boolean | Adds a check box to the form. ![]() |
Participant Picker |
The participant picker field allows a user to select a participant. Attributes:
|
Percentage | Captures a percentage value. ![]() |
Decimal |
Displays a decimal. Use configuration to set the precision (the number of digits) and the min and max values. |
Toggle | Adds a toggle button to your form. ![]() ![]() |
Memo | The memo field provides a multi-line text field. Use the rows attribute to specify the initial number of rows that you want displayed on the form. ![]() |
Tree Selector | The tree field creates a tree list that allows multi-select. ![]() |
Unit of Measure |
This field creates a picker where you can select a unit of measure. |
Icon Picker |
This creates a field that allows you to pick an icon. |
ODS Entity Picker |
This field creates an ODS picker that shows a filtered list of ODS entities based on the role selected. |
Mandatory in Phase
You can set a form builder field to be required only in specific phases by placing the “requiredOnlyInPhases” attribute onto the field.
Audit Trail / Chronology
Changes to form builder fields are, by default, captured in the audit history. To add field changes to the chronology, use the chronology attribute.
Capturing Custom Data Changes in Chronology (Form Builder)