5

Creating a form

A form is an entity with which you can collect input from the people who participate in your workflow. Forms are predominantly used in flows like processes, projects, and boards in Kissflow. A form has three primary components - section, field, and table.

Sections

A section is a group of fields that are related to each other. As a Flow Admin, you can create a section to place a set of fields that are attributes of the main entity around which the flow revolves.

Note:

For example, when you create a process workflow to streamline the hiring processes in your organization, a typical form in your hiring process will require a section named "Candidate information" to collect and store information about the candidates who will go through the hiring process. The fields that can be placed in the Candidate information section are First name, Last name, Work experience, Employment type, etc.,

To add a new section, click Add section.

Initially, the name of the section will be set to "Untitled section" by default. You can overwrite the section name to something of your choice and proceed to add a description beneath as necessary. You can also rename a section from the right panel and your changes will be autosaved.

Similarly, you can access the section settings and modify its visibility conditions in two ways: One, from the top of the section, and the other way is to access its settings from the right side Properties panel.

  • Click the Gear icon () to access the section settings. By default, the section will always be visible, but you can change it to hidden. You can make the section conditional by adding a visibility rule under its Visibility settings. To add a condition, choose a Field, Operator, and Type, and map it to a value or a field based on the type. You can add multiple conditions.
  • To duplicate a section, click the Clone icon (). A copy of the section will be created below.
  • Click the Up arrow () or Down arrow () to rearrange the sections.
  • Click the Trash icon () to delete the entire section.

Fields

Fields are the building blocks of your form. It is the primary medium through which you collect user inputs in a flow.

The left panel will feature two main categories for grouping field types:

  • All fields.

  • AI-suggested fields. 

The All fields tab will be further organized into sub-categories such as:

  • Basic fields.

  • Advanced fields.

  • File and media.

  • Data lookup.

  • Widget.

You can drag and drop a field of your choice from the left side Fields panel onto your form editor.

Other field actions

  • To rearrange the fields within a section, just drag and drop them in their new position. You can also move fields individually(one by one), or as an entire row whichever works for you.
  • To resize a field, hover over the margin/border of a field to get hold of the resize icon with which you can increase or decrease the width of the field as necessary.
  • A row can accommodate a maximum of six fields.
  • To access the field settings and modify the other field properties, hover over the field and you will find the relevant icons in the centre. Click the appropriate icon to modify the field's properties as necessary.

Child tables  

A child table acts as a separate section and lets you collect and manage data in a tabular format. To add a child table, click Add table. Click the Add button () to add a new field. You can add as many fields as you want to a child table.

You have the same options for child tables as you do for sections. Additionally, in the table settings, you can set validations to control the minimum and maximum number of rows that must be completed.

Configuring CSV data import

You can enable users to populate data in the child table by importing CSV files. Follow the below steps,

  1. Click the Settings icon () within the child table’s section. 

  2. Turn on Enable table import from the properties panel on the right. 

Upon configuration, users will have the option to import CSV files during the form’s runtime. 

Importing data from a CSV file

In runtime, users can manually enter data into these tables or import data from a CSV file.

The CSV Import feature allows you to import data in bulk into Child tables. Here are some guidelines to follow when preparing a CSV file for import:

  • Mandatory fields: If mandatory fields exist in your child table, you must map at least one column in your CSV file with the required fields.
  • Data: Within the CSV file, you can map only the following field types to your child table: Text, Text Area, Number, Rating, Date, Date-time, Currency, Yes/no, User, Single-select dropdown, Multi-select dropdown, Slider, Checkbox type fields.
  • Delimiter: You must only use the comma (,) as a delimiter inside the CSV file.
  • Rows: The CSV file can only have up to 1,000 rows, excluding the header.
  • Encoding: The CSV file must have a .csv extension that supports UTF-8 encoding.

Once you have confirmed that your CSV file meets the above requirements, follow these steps to import the CSV data to your Child table:

  1. On the top right corner of the child table, click Import CSV.
  2. Select the location from which you'd like to upload and select your desired file with a .csv extension.
  3. After importing the CSV file, the system checks it for file corruption and delimiter errors. If any errors are found, correct them in the CSV file before re-uploading it.
  4. Click Next to continue. Then map the column(s) from your CSV file to the fields in your child table. You must map at least one column to any of the headers. For example, you can choose to map the Email addresses column from your CSV document into the Email field in your child table

Note:

CSV header names and data fields must be of the same data type.

Following the mapping of your columns and fields, you can choose how to handle data while importing. You can choose to delete existing rows and import new rows, or you can choose to keep the existing rows and import new rows.

After you have selected your options, click Next. Your data will begin importing. 

Setting unique fields in child tables

In your form editor, you can set one field as unique in each child table. For example, if your form contains three child tables, you can mark one field as unique in each of these tables. Once set, this field will only accept unique inputs from the end user and trigger an error if a duplicate value is entered. 

Note:

This feature is only applicable to individual form items. The uniqueness of the inputs gathered from the users will only pertain to the table in their individual form submissions and will not be validated across all the submissions received from multiple users. 

To designate a field as unique, select the field and turn on Mark as unique from the right side field properties panel. 

At this stage, you can customize the error message you wish to display to your users when they enter a duplicate record. A generic error message will be displayed if no custom error message is specified here, preventing users from submitting the form. 

FAQs

1. What are the various soft limits in Kissflow forms?

Ans) To improve performance and ensure efficient use of resources, Kissflow has put up the following restrictions on each form:

  • A maximum of 1000 fields per form.

  • A default soft limit of 10 child tables in every form.

  • A default soft limit of 100 columns per child table.

  • An upper limit of 5000 rows per child table.

  • An upper limit of 30 events per form (button fields not included).

2. Can I change field data types in a form with more than 5000 items?

Ans) You cannot change field data types in a form when there are more than 5000 records. This restriction is in place to prevent potential versioning issues when modifying data types for large forms. Changing data types for many values can lead to inconsistencies and performance problems.

3. Are there any field types in Kissflow forms that do not have soft limits?

Ans) Yes, certain field types in Kissflow forms are not subject to soft limits:

  • Rich text fields.

  • Grid fields.

  • Button fields (these have a separate soft limit of 100 buttons per form, in addition to the default form limit).

Rich text and Grid fields are exempt from restrictions as they don't contain metadata.

4. What happens if I duplicate a section with increased limits?

Ans) If a flow with increased limits is duplicated, the new flow will inherit the same incremented limits.

5. Will I receive any warnings when approaching these limits?

Ans) Yes, warnings will appear when you are close to reaching the limits. For example, when you have 990 fields and 90 columns, you will receive warnings indicating that you are approaching the limit and suggesting that you request an extension if needed.