Skip to main content

Form Builder

ComponentTypeDescription
imgForm Builder▶️ triggerBuild online forms to collect data
note

There is a lot of documentation for the form builder - be sure to use the navigation menu on the right to find what you need. If you can't find the answer you are looking for, contact us via the live chat or via support@workflow86.com.

Configuring questions

Inserting a question

To insert a question, simply click and drag the question type you want to insert and drop it into form.

img

Editing a question

To edit a question, hover over the question and click the edit button on the right hand side of the question.

img

This will open up the configuration dialog for that question.

img

Deleting a question

To delete a question, hover over the question and click the delete button on the right hand side of the question.

img

Duplicating a question

To duplicate a question, hover over the question and click the copy button on the right hand side of the question.

img

note

Duplicating a question creates an exact copy of everything in that question, including any advanced settings configurations, except the placeholder. A duplicated question is always created with a new placeholder.

Re-arranging a question

To move or rearrange the position or order of a question in the form, select and drag it to the desired position.

img

Configuring pages

To create a new page in the form, drag and drop the "Page Break" from the questions menu into the desired location.

img

Deleting pages

To delete a page, click the page settings button on the top right

img

When deleting a page, you can choose to either delete all the questions on that page, or delete the page but move all the questions to the preview page.

Basic question settings

The form builder allows you to create an online form to collect information from users. It acts as one of the trigger points for a workflow, with a workflow starting when a form is submitted.

Placeholder (previously "Key")

The placeholder is how the answer to the question will be represented as a variable.

All questions are auto-assigned a placeholder value when they are first inserted into the form (e.g."ShortText84008041"), but you can change this to whatever term you want. You can only use letters and numbers in your placeholders.

img

Question text

The text entered here is displayed as the question text for that question.

Description

The description appears below the question text. You can use this to provide further details about the question.

Advanced Settings

Each question has advanced setting which allow you to control how the user interacts with the question and how it behaves in response to certain events. In these settings, you can control the visibility of the question, whether it must be answered or not, whether the question is read-only, prefill the answer to the question based on other questions or inputs, and add a comment field to the question.

img

Visibility

This field allows you to control whether and when a question is visible or hidden to the user.

On

By default, all questions have their visibility set to on.

Off

This renders the question hidden.

warning

If a question is hidden and is also required, this will prevent the user from progressing further in a form.

Conditional

This allows you to set up a conditional logic statement to make the question visible or hidden. For example, you can set a question to be visible based on the answer to another question.

Required

This field toggles whether the question must be answered by the user.

Off (default)

By default, all questions are created with the required field switched off. This means the user does not have to answer the question before continuing or submitting the form.

On

When switched on, the user will be prevented from continuing onto the next page or submitting the form until an answer is entered.

Conditional

This allows you to set up a conditional logic statement to determine whether the question must be answered or does not need to be answered. You can reference the answers to other questions and evaluate them to turn the required status on or off e.g. If the answer to Question 1 is “Yes” then Question 2 must be answered, otherwise it does not need to be answered.

note

If the question you are referencing in the conditional is a select-type question, make sure to reference the answer value in the logic i.e. "If Question 1 has selected "Answer value 1" then...".

If the options for the select-type question are being set dynamically from a database, or via a list, then you will need to type in the answer value.

Prefill the answer

This feature allows you to prefill the answer to a question using a set value or based on a conditional statement.

Off (default)

This is the default state for this feature. It means there is no prefilled answer to the question, whatever the user selects or types is the answer.

On

When turned on, a small textbox will appear. You can type in the prefilled answer you want to set for this question. When the user views the question, they will see this answer already typed in or selected.

img

note

To configure a prefilled answer for a select-type question (such as a single choice, dropdown or checkbox) where you have set an answer choice and an answer value, you will need to type in the answer value for a question option (and NOT the answer choice).

If the answer to a select-type question has a answer choice “Option A” and a answer value of “A”, to have this be the prefilled answer, you will type "A" amd NOT “Option A” into the text field.

Click here for more details

Note that the user can edit and change this prefilled answer. If you do not want them to be able to change the prefilled answer, set read-only state of the question to ON.

Conditional

This setting allows you to create a conditional logic statement to determine the answer to the question. You can use the answers to previous questions to set up this conditional logic state e.g. If the answer to Question 1 is “A” then the answer to this question will be “B”

Comments

You can allow users to add comments to any question field by turning on the comments field. This will a comments dialog to that question where different users can post comments in a chat-like interface.

img

Off (default)

By default, the comment feature is turned off.

On

When the comment feature is turned on, a textbox will appear beneath a question where the user can type in comments. If a user is logged in when they post a comment, their username will appear at the top. If a user is not logged in or someone is commenting on a form without a Workflow86 account, they will be provided with an alias.

img

The comment can be used to provide additional contextual information about an answer to a question (e.g. "This was my answer, but here is why I answered it this way") and to allow collaboration between users when answering a question or a form (e.g. "How should I answer this?")

All comments are exported as ${question_placeholder.comment} and in the following format:

User_A commented "comment that they typed out will be printed here" at 2022-11-01 12:00PM User_B commented "another comment here" at 2022-11-01 12:05PM User_C commented "yet another comment here" at 2022-11-01 12:10PM

Get notified via email when comment posted

To get or send an email notification when a comment is posted, turn on this field and then type in the emails you want the notifications to be sent to. In the Assign Task, the email field can be a placeholder as well.

img

Read Only

This setting allows you to make a question read-only, preventing the user from interacting with the question. This feature is typically combined with the prefill answer feature.

Off (default)

The default state for this feature is off, meaning that the user can interact with the question, type in or select an answer.

On

When turned on, the user will not be able to type or select an answer to the question. Note that you should exercise caution in turning on the read only state with the required state also on - this may result in the answer being prevented from progressing or submitting a form and being unable to answer the question that is blocking them.

Conditional

This allows you to construct a conditional logic statement to control whether the read only state is on or off.

Validation

caution

This feature is in preview and has not been released to all users

Validation allows you to set certain requirements that check the answer entered by the user and prevents them from submitting the form or proceeding to the next page if the answer does not meet that criteria.

For the short text, long text and number fields, you can set a Regex expression to validate the answer provided by the user. You can also set the message to be displayed if the answer does not meet the validation requirements. If not message is specified, a generic message will be displayed.

img

If the answer to a question fails the Regex, then your message will be displayed.

img

Answer choices and answer values

Select type questions (single choice, dropdown, checkbox) allow you to configure an answer choice and a separate answer value.

The answer choice is what is displayed to the user in the form.

img

The answer value is an optional field that allows you to set a separate value to be outputted when the user selects an answer choice.

img

For example, the answer choice displayed to the user might be "Yes" and "No", but the value that you would like to be outputted into the workflow is 1 and 0.

img

The answer value is an optional field, so you can leave it blank. If it is left blank, the output of the question will be the answer choice.

note

In any conditional logic statements or in the prefill answer feature, it is the answer value (and NOT the answer choice) that needs to be used.

Get answer values from database

For Select Type questions, you can set the answer options via the column of a database. For example, say you have a database with two columns like this:

img

You want to create a question where the answer options are taken directly from the Name column in the database like this:

img

You can do this by choosing the set answer options "from a database":

img

Then select the database, the column that will contain the answer options and the column that will contain the answer values. This enables you to display one column as the answer options, but have the value of returned (i.e. the value of the placeholder) actually be from another column.

img

Get answer option and answer value from same column

If we want the answer options to be the names and the value returned to also be the name, we select the name column for both. In this case, when the user selects Bob Smith, it will return Bob Smith.

img

img

Get answer option and answer value from different columns

However, you can also have the answer return the value from the email column while keeping the answer options that the user sees and selects as the name. In this case, when the user selects Bob Smith, the value of the placeholder for this question will be "bob123@email.com"

img

img

You can use this feature to, for example, expose a certain column for the user to select but return the Record ID for that column (which can then be passed to the Update Database Record component)

Note that as new records are added to the database, they will also appear as additional options for this question as well:

img

img

Previewing a form

To preview a form you are building, press the "Preview" button in the toolbar above your form.

img

Before the form preview is opened, the current form will be saved, and the form preview will then open in a new tab.

img

The form preview has all the functionality of a normal form, with the exception that it cannot be saved or submitted. You can use the form preview to see the layout of the form you have built and test any advanced functionality you have configured such as visibility and prefilled answers.

Saving a form session

You can allow users to save their progress on a form and resume that form at any time by turning on the save functionality in the form settings

img

When completing a form, you can save your progress and resume the form at any time by clicking the save button in the top right hand corner.

img

When you click save, a small dialog will appear with a link you can use to resume that form session at any time.

img

Viewing saved form sessions

If a form session has been saved but not submitted, it can be found listed in the session logs. Once a form session has been submitted, it will appear as part of a workflow session in the normal session logs.

img

Redirect form after it is submitted

When a form is submitted, you can set it to automatically redirect to another form in the same web session. This means once the user submits the form, they will be automatically redirected to the next form without having to manually retrieve a link to the second form from their email or My Tasks page.

Take the following workflow as an example:

img

Once the user has submitted "Linked forms on-boarding part 1", we want to automatically redirect them to the "Linked forms on-boarding part 2". We can achieve this by linking these two components together.

Redirecting to a Form Section or Assign Task

Click the bar at the bottom of the form, or click Form Settings button to bring up the form settings:

img

For the option which sets what happens after the form is submitted, select "redirect to another page":

img

Then select the component(s) that you want to redirect to after the form is submitted.

img

Once this has been set, the form will now redirect when it is submitted:

img

tip

You can select multiple possible destination forms/tasks for redirection

Note that if you have multiple possible forms, tasks or form sections that the user can be redirected to, select all possible options e.g. if Form A can redirect to Form B, C or D, then select Forms B, C and D in the redirect options. When submitted, the first of the possible form redirects to execute will be the form that the user is redirected to.

What happens on redirect?

Once the first form has been submitted:

img

A loading screen will be displayed:

img

After which the user will then be redirected to the next form once that linked form has been generated:

img

Combining linked forms with conditional paths

In the example below, we want to set the "Linked forms on-boarding part 2" to redirect to one of two possible options: "Linked forms on-boarding part 3A" or "Linked forms on-boarding part 3B". Which form it will be redirected to will depend on which path gets executed based on the Conditional Path. In this case, there are multiple possible destinations for the redirection.

img

To set this, we simply select both "Linked forms on-boarding part 3A" and "Linked forms on-boarding part 3B" in the form settings:

img

The form will then redirect to whichever of the two selected forms gets generated when the form runs.

important

Always make sure to select all possible destinations when setting the redirection.

Form metadata

In addition to the placeholders from any questions, all Forms also export metadata placeholders including:

  • projectSessionID: the workflow session ID that is created when the form is submitted
  • formSessionID: the form session ID that contains the data entered into and saved to the form
  • formSubmittedDate: a timestamp of when the form was submitted
  • formSessionURL: a URL link to the form that was submitted
  • allQuestionsAnswers.html: a black of HTML that prints all questions and answers in the form

img

Printing all questions and answers from a form

The ${allQuestionsAnswers.html} placeholder allows you to easily print all questions and answers from a submitted form in any component that can handle HTML inputs (such as the email body, content block, document editor).

important

Components that handlet HTML inputs

You can insert the ${allQuestionsAnswers.html} into the following components:

  • Document editor
  • Email body in the Email component
  • Task description, reminder email body in the Assign Task
  • Content block in the Form, Form Section and Assign Task

If the ${allQuestionsAnswers.html} is used in a component not designed to handle html, it will still print all the questions and answers but these will contant HTML formatting like this:

<p><span><p><span style="white-space:pre-wrap;"><strong>Question: Calendar4867189</strong><br><br>Answer: 1658309640000</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: Checkbox32085397</strong><br><br>Answer: Value</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: List33163839</strong><br><br>Answer: [ asdsadsad]</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: LongText58495921</strong><br><br>Answer: asdsadsadsa</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: NumberInput4335975</strong><br><br>Answer: 2132132131</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: RadioButton36253018</strong><br><br>Answer: Value A</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: ShortText80681055</strong><br><br>Answer: asdsadsa</span></p><br></span></p><p><span><span><p><span style="white-space:pre-wrap;"><strong>Question: Calendar4867189</strong><br><br>Answer: 1658309700000</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: Checkbox32085397</strong><br><br>Answer: Value</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: List33163839</strong><br><br>Answer: [ 111111111111111111]</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: LongText58495921</strong><br><br>Answer: 11111111111111111</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: NumberInput4335975</strong><br><br>Answer: 2222222222222</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: RadioButton36253018</strong><br><br>Answer: Value A</span></p><br><p><span style="white-space:pre-wrap;"><strong>Question: ShortText80681055</strong><br><br>Answer: 222222222222222222</span></p><br></span><br></span></p>

img

This placeholder prints a block of text with each question and answer from the form in the following format:

Question: {question text here}

Answer: {question answer here}

The result will look like this when printed into a document editor:

img

It can also be printed into the email body, as well as the content block of another form:

img

important

The question and answers from the following types of fields are currently not printed via the ${allQuestionsAnswers.html} method:

  • E-signature
  • Table
  • Any questions which have not been answered

Component Settings

The component settings can be accessed by clicking the settings icon in the top right corner of the screen:

img

Adding prefixes to placeholders

If you have more than one Form trigger on your canvas, it is highly recommended that you distinguish between each form by setting a specific prefix to the placeholders. To set a prefix, click the settings button in the top right:

img

A dialog will appear - inside of the textfield, type in a component label. A component label can contain letters, numbers and underscores ("_") only.

img

img

warning

Setting a component placeholder will change all placeholder labels from this component i.e. ${placeholder} will not work, only ${component_label.placeholder} will work.

You will need to go through the workflow and update the old placeholders with the new placeholders containing the component label.

Changing format of the formSubmittedDate timestamp

You can change the format of the formSubmittedDate timestamp via the component settings.

img

Styling

You can customize the styling of the form by setting a logo and a cover image.

Setting a cover image

To set a cover image that appears at the top of the form, click Styling, and then upload an image. You will need to crop the image displayed to the required aspect ratio (7:1).

img

Click save to set the image as the cover image.

img

The logo for a form is displayed in the top left of the top header bar.

img

To set the logo, click Styling and then upload your logo.

img

Form Settings

Access the form settings via the "Settings" button on top of the form builder.

img

This will bring you to the form settings dialog

img

Submission message

You can specify the message that is displayed to the user once they have submitted a form here.

img

This message appears here, below the session ID

img

View, edit and resubmit forms after submitting

This setting controls what a user can do after a form is submitted and what happens if the user reloads the form session URL that is created when the form is saved and submitted.

img

On

This setting allows the user to edit their response and resubmit it after they have submitted a response. Note that re-submitting an existing form session will trigger a new workflow session.

If a user attempts to reload the session, they will be able to reload the form session in a fully editable state and resubmit that form session.

Read only

This setting allows the user to view their response in a read only state. If a user reloads the submitted form session, they will not be able to resubmit their response, but can view their answers.

Off

This setting prevents the user from accessing their response after submission. An error page will be displayed if a user tries to reload their form session.

caution

Submitted form sessions cannot be loaded

If a user attempts to reload the session, they will see the "This form cannot be loaded" page.

Allow the user to start a new submission after finishing the form

This controls whether you want to allow users to start a new submission after they have submitted a response.

On

When turned on, a "New submission" button will appear when a form has been submitted. Clicking this will create a new form session for the user to fill out.

Off

When turned off, the "New submission" will not appear after a form has been submitted.

Allow user to save their response

This controls whether users can save their response and resume that form session at a later time.

On

When this is turned on, a save button will appear at the top right corner of the form navigation bar.

Off

When this is turn off, no save button will appear in the form. A form session will only be saved when it is submitted.

img

Auto-save forms

If the saving a form is turned on, you can also turn on the auto-save feature which will automatically save the form every 10 seconds.

img

When this is turned on, you will see an auto-save icon displays at the top right of your forms and tasks:

img

Allow user to submit their response

This setting controls whether the form can submitted. You may want to turn this off in cases where you are using the form to display static content and it does trigger any workflow.

Annotations

Annotations allow users to highlight parts of a form, and then add a comment connected to that highlighted content. This can be used to facilitate any discussion that may occur about the content of a form or task before it is submitted. For example:

  • asking clarifying questions
  • add more context to an answer
  • commenting on changes that need to be made before submission
  • collaborating with other users

img

Turn on annotations

To enable users to add annotations, turn on the annotations option in the form settings:

img

Annotating a form or task

To annotate text inside of a form or task, the annotations mode needs to be turned on for that form session. This can be done by highlighting any text in a form or task and then clicking the popup that appears:

img

Annotations mode can also be turned on by clicking the annotations mode button at the top:

img

important

Question answers are locked and cannot be changed when annotation mode is ON

When the annotations mode is turned on in a form session, the answers to any question fields get locked. They cannot be changed or edited until the annotations mode is turned off.

Adding an annotation

To add an annotation, highlight some text and then click the "Add comment" popup that appears:

img

This will create an annotation thread on the right-hand menu, where you can then add the first comment in the thread:

img

Once the thread has been created, other users can also input comments into that thread as well:

img

Editing and deleting comments in a thread

The author of a comment can edit or delete their comment in a thread by clicking the edit or delete buttons:

img

Closing and re-opening threads

Threads can be marked as closed or resolved by clicking the "close thread" button. This will post a message into the thread like this:

img

A thread can also be reopened by clicking the "Reopen thread" button:

img

Convert a Form

A Form can be converted into a Form Section or an Assign Task component. Doing this will turn the Form component into a Form Section or Assign Task while preserving all questions and form configurations.

To convert a Form Section, follow these steps here

Internal placeholders

In Forms, Form Sections and Assign Tasks, you can use internal placeholders to reference the answer of one question inside another question inside of the same form.

Read more about this feature 👉 here