Skip to main content
waffle.svg
Domo Knowledge Base

Form Builder App

Version 7

 

Intro

The Form Builder app is a dynamic environment to create custom Forms, Form Templates, and Questionnaires to gain insightful feedback directly from your users. Build Forms from scratch or use Templates to quickly generate and alter multiple forms from an existing set of questions and inputs. 

How to Get

If you are interested in gaining access to the Form Builder App, please contact your Account Executive.

Prerequisites

Once the Form Builder App is installed in your instance, you must first create the following groups in your Domo instance before you can create Forms and Templates:

  • _FB_CreateForms_

  • _FB_CreateTemplate_

Any member in the _FB_CreateForms_ group has permission to create Forms from scratch, or generate a form from an existing template. Members of this group cannot create or edit existing templates.

Any member in the _FB_CreateTemplate_ group has permission to create Templates from scratch and edit existing Templates. Members of this group can create and edit both Forms and Form Templates.

Users who are not members of either of these groups will only have permission to view and submit existing Forms.

Using Form Builder

Forms

Under the Forms tab, you can create new forms, view, and edit all available forms.

  • Users who have submitted a response to a form which only allows a single response per user will not be allowed to view, edit, delete, or submit additional responses to that form.
  • Members of the _FB_CreateTemplate_ group may edit, submit, or delete any form.
  • Members of the _FB_CreateForms_ group may edit, submit, or delete any form that has been assigned to a group they are a member of.
  • Users who are not members of either group (_FB_CreateTemplate_, _FB_CreateForms_) may only submit responses to forms that have been assigned a group they are also a member of.

Form Builder - Forms View.png

Manage Existing Forms

  1. Click the ellipsis Form Builder - Ellipsis.png on the Form you would like to manage.

    Form Builder - Actions.png
  2. Select EditDuplicate, or Delete.
     

    Note: If you choose to edit a form, previous responses to the form are not changed. 

    • Any changes made to a new copy of a form are not reflected in older versions.

    • Deleting a form is a permanent action and is not reversible.

     

Create a New Form

To create a new form,

  1. Under the Forms tab, click Create New Form

  2. Fill out the following basic information for the new form:


    FormDetails.png 

    Form Basic Information
    Field Description
    Name/Description The name and description for the form
    Tags Terms related to the form. Adding tags allows you to quickly find the form through the search functionality. 
    Groups Any Domo group(s) who should be able to view and submit the form. Leave this field empty if the form should be globally available. 
    Note: Currently, only Domo Groups can be added to a Form. If there is an individual you would like to share a Form with, they will first need to be added to a specific Group.
    Response Type

    Restricts the number and type of responses that users can submit. 

    One response per user: Each user may only submit one response. Once a user has submitted a response, the form will no longer be listed in their available forms.

    Multiple responses per user: Each user may submit multiple responses.

    Crowdsourced (collaborative): Multiple users contribute to a single response.

    Form Settings Show submit button on every page: When checked the submit button will be visible on every page of the form, even if the user has not filled in all responses. When unchecked the submit button will only appear on the final page of the form.

     

  3. Next, add a section to the form by clicking  Add Item Section or TableSectionIcon.png Add Table Section

    Form Builder - Add Section.png

    Section Types

    Item (standard): Allows you to create a section that contains standard response inputs (e.g. text, date, select).

    Table: Allows you to create a section that contains a table based on a Domo table card.

  4. Name the section.

    SectionDetails.png

  5. Configure the section (see Section Types below).

  6. When the form is complete, click Save and then click Back.

    SaveBack.png 

  7. The form will now be listed in your available forms.

Section Types

Form Builder supports two types of sections: Item Sections and Table Sections.

Item Section

Item Sections provide you with a simple click-to-add experience to add new inputs, prompts, and information to your form. 

When a user opens a form to submit a new response, all items have empty (null) responses pre-generated in the response dataset (Item Section only).

To add a new item to your section, select the desired type from the menu at the bottom of the item section.

ItemTypeSelector.png

Note: Multiple inputs can be added to a section. Each section of the form will be displayed as its own page. 
Item Types
Icon Field Description Example
Form Builder - Add Title and Description.png Title and Description Add a title and description to your section. This does not replace the section title; it is information and has no user interaction.
Form Builder - Add Text Question.png Text Question Add a text question to your section. Text questions can be multi-line or single-line response questions.
Form Builder - Add Dropdown Options.png Dropdown Selection Create a dropdown of options a user can select from. You can customize the order in which items appear in the list and allow for multi-select.
From Builder - Add Date Select.png Date Select Add a date select field for a user to give a specific date or a date range as an answer. 
Form Builder - Add Image.png Add Image Add an image to your form.
   Lookup Question Allow users to choose a column from a table card to pull values from to populate the dropdown selection values. LookupExample.png

 

Additional Configuration
Lookup Question

When you add a new lookup question to your form, you will be prompted to select a page, card, and column to use when populating the options of the select menu.

You may only select pages to which you have access. Once a page has been selected, the Card configuration menu will be populated with any table cards from that page. Similarly, once a card is selected, the Column configuration menu will then be populated with any columns from the selected card. The unique values of this column are then used to populate the option list of the lookup question.

Note: Lookup questions only support the following table card types:

  • HTML Table

  • Mega Table

LookupModal.png

At this time, lookup questions are limited to 6000 values.

 

Lookup questions do not support table cards with calculated fields or beast mode columns.

 

Table Section

Table Sections leverage Domo table cards to offer users a pre-populated table into which they can enter new responses or alter existing cell values to act as their response.

Only cell values which have been altered by the user will be submitted in their response.

 

Note: Table sections do not alter the underlying dataset. All user responses created in the table section are saved to the unique response dataset associated with the form.

 

Table Sections support the following table card types:

  • Mega Table

  • HTML Table

Configure A Table Section

When you add a table section to your form, the following configuration menu will be displayed.

TableConfig.png

  1. Select a page from the page selection menu

    Table_SelectPage.png
     
  2. Select a table card from the card selection menu

    Table_SelectCard.png
     
  3. Connect the card by clicking the CONNECT button and selecting one or more columns that can uniquely identify each row

    Table_ConnectCard.png
     
    If the chosen identifier columns do not uniquely identify every row, responses may be duplicated to additional rows.

  4. Add lookup fields (optional)

    Lookup fields behave much like page filters when viewing any Domo card, lookup fields allow you to filter the tables based on the selected configuration. Only rows that respect the filter configuration will be loaded into the table section and only responses for rows loaded in the table will be affected.

    To add a lookup field, select the column you would like to use as a lookup field and click ADD LOOKUP.

    Table_AddLookup.png

    To remove a lookup field from your table section, click the Table_DeleteItem.png next to the lookup field.

    Table_RemoveLookup.png

  5. Add input columns (recommended)

    Input columns allow the user to enter new values or alter existing values to submit with their response.

    Table_ChangeInputType2.png

    Input columns support the following input types:
     
    None Display data from the table card without allowing the user to change the value.
    Text Free form text field; the user may enter any value.
    Single Select Allow the user to mark a single row from the table (radio button).
    Validated Input Respects the native column type assigned to the column in the table card or underlying dataset (e.g. number, date, text).
     
    Note: None and Validated Input column types may only assigned to columns that exist on the table card when the table section is created.

  6. Add custom columns (optional)

    To add additional columns, click Table_AddColumnNoBrder.png below the existing columns and enter a name for the new column.

    Table_NameCustomColumn.png

    To change the name of the column, click the name of the column to activate the text entry.

    Table_ChangeCustomColumnName.png
     
  7. Table settings
    Freeze identifier columns Fixes identifier columns to the left hand side of the table, allowing users to easily identify which record their response is associated with.
    Prefer page filters over lookup fields Allows users to filter the table based on page filters rather than lookup fields. Before page filters will affect the form, the table card's underlying dataset must be registered with the application. To find instructions on how to do this, see the Using Page Filters guide below.

     

 

Templates

Templates allow you to create one single template that can be used to quickly make multiple forms without having to build them all from scratch. Under the Templates tab, you can create new templates and view and manage all available templates. 

Manage Existing Templates


  1. Click the ellipsis Form Builder - Ellipsis.png on the Template you would like to manage.

    Form Builder - Actions.png
  2. Select Create FormEditDuplicate, or Delete.

    Note: If you choose to edit a template, any forms generated from the template before it was changed are not affected. If the changes need to cascade to the forms generated from the template, they must be completed individually. 

    • Any changes made to a new copy of a template are not reflected in older versions.

    • Deleting a template is a permanent action and is not reversible.

     

Create a New Template

To create a new template,

  1. Under the Templates tab, click Create New Template

  2. Fill out the following basic information for the new template:

    Form Builder - Template Basic Info.png

    For more information on these fields, see Form Basic Information

  3. Next, add a section to the template by clicking  Add Section

    Form Builder - Template Add Sections.png

  4. Name the section.

  5. Then, select the type of field you would like to add to your section.

    Note: Multiple inputs can be added to a section. Each section of the template will be displayed as its own page. 


    Form Builder - Field Types.png

    For more information on the different fields you can add, see Field Types

  6. When the template is complete, click Save and then click Back.

  7. The template will now be listed in your available templates. 

Questionnaires

Questionnaires allow you to group templates into a single form. By default, templates are grouped in the Unassigned templates section. To assign a template to a questionnaire, drag and drop the template over the questionnaire folder. 

To manage your Questionnaires,

  1. Click the ellipsis Form Builder - Questionnaire Ellipsis.png on the questionnaire you would like to manage.

    Form Builder - Questionnaire Actions.png
  2. Select Create FormDeleteDuplicate, or Rename

Form Submissions

For a user to take and submit a Form, they will just need to navigate to the Form Builder app. Then, select the Form from the available list. Form submissions are recorded in a new DataSet that is created upon the Form's first submission. When the DataSet is created, its name is an automatically generated GUID (globally unique identifier.) We recommend renaming the DataSet once it's created to more easily locate and identify.

Connecting New Form Builder Data

Each time that you generate a new Form Builder card from the app's asset, it creates a new group of Export datasets in the Data Center that are used to power the Form Viewer app. This means that your Form Viewer is still pointing to the old Form Builder assets, so you'll need to update Form Viewer to point at the new Export datasets. The datasets that need to be updated will be called ExportColumns, ExportGroups, ExportSubmittedUsers, ExportFilters, ExportTags, ExportForms, ExportItems, and ExportSections. 

Screen Shot 2020-01-31 at 10.57.41 AM.png

In order to fix this issue, go to your Form Viewer app and select Edit Card from the wrench menu. Scroll down and swap out all of the currently mapped datasets to the new Form Builder datasets. The Export datasets should all be identified but the app context ID, which you will also find in the Form Builder dataset name. 

Screen Shot 2020-01-31 at 10.59.26 AM.png

After making these updates, you'll be able to see the new form in the Form Viewer app.

Using Page Filters

To enable page filter interaction in the Form Builder or Form Viewer application, the dataset being targeted by the page filters must be registered with the application. Page filters will only be applied to datasets registered with the application via the card editor. To open the card editor open the 'card options' menu by clicking the wrench icon on either the card or its details page and select Edit Card.

CardOptions1.png

CardOptions2.png

By default there are 25 'filter configuration' dataset registered with the application. To register your dataset with the application, select a FilterConfiguration dataset and replace it with the desired dataset and click Save & Finish. After this is done, your application will now listen for changes in the page filters associated with your dataset.

CardEditor.png

As described above, table sections can be enabled to use page filters instead of the native lookup fields. Active page filters targeting a dataset registered with the application will be listed in the response dataset under the Active Page Filters column.

Access and Permission Requirements

While the Form Builder and Form Viewer are associated with specific groups (_FB_CreateForms_ and _FB_CreateTemplate_) there are other requirements to consider when deciding who can create, edit, and respond to forms.

To submit responses to a form, a user must have permissions equivalent to the default Participant role.

Participants, by default, do not have the permission grant necessary to create datasets. So, while they may respond to a form, it's important that a user equivalent to the default Editor role be the first to submit the form to ensure the response dataset is created successfuly.

To create a form or template, a user must have permissions equivalent to the default Editor role. If the form creator does not have permissions equivalent to the Editor role, the response dataset will not be created.