Form Entry-Form Design
1. Form Creation
- Click Data Preparation > Form Entry > New Form.

- Choose Blank Form or Create from Excel. The difference is: "Blank Form" requires editing controls, canvas, and properties from scratch, while "Create from Excel" allows importing an existing header, no need to start from zero.
- "Blank Form" is the online editing mode, introduced in 1.1 below;
- "Create from Excel" is the import Excel template mode, introduced in 1.2 below.

1.1 Create in Online Editing Mode
Select "Blank Form" to enter the form editing page and start designing. The page consists of three parts: control area, canvas preview area, and property settings area.
Current controls include 7 basic controls and 4 advanced controls (see Chapter 4 for details):
- Basic controls: Single-line text, Multi-line text, Single choice, Multiple choice, Number, Date, Image.
- Advanced controls: Sub-table, Matrix table, Cross-table query, Reference fill.

Drag controls from the control area to the canvas area, arrange freely, support copy and delete.

Click "Preview" at the top to see the final effect.


1.2 Create in Import Excel Mode
Select "Create from Excel" to enter the new form window, click "Click to upload file" or drag to upload.

After uploading, enter the configuration page, fill in the form name, and select the control type for each field. Control types include: Single-line text, Multi-line text, Single choice, Multiple choice, Number, DateTime, Image, etc. (Advanced controls are not supported here; if needed, edit further in the form editing page). Click "OK" to enter the form editing page (subsequent operations are the same as online editing mode).

On the form editing page, imported field controls are already present. Users can further edit the form name, properties, default values, etc.
Notes for Import Excel Mode:
- Only single header import is supported, not multi-header or merged cells.
- Excel file size must not exceed 5MB.
2. Add and Explain Form Controls
Below are the form design controls and explanations:
Control | Description |
Basic Controls | 7 basic controls: Single-line text, Multi-line text, Single choice, Multiple choice, Number, Date, Image |
Advanced Controls | 4 advanced controls: Sub-table, Matrix table, Cross-table query, Reference fill |
2.1 Basic Controls
Single-line Text and Multi-line Text
Description: These controls generate text fields.
Control properties: See the table below. Each control (basic and advanced) has these properties. Some controls have exclusive properties, explained later.
Basic Control Properties | Description |
Title | Field name |
Description | Field description, helps submitters understand |
Default Value | Supports custom input |
Field Operation | Supports field editing |
Data Validation | Required or not (default: not required) |

Single Choice and Multiple Choice
Description: These controls generate text fields.

Exclusive properties:
- Style: Button group or dropdown;
- Options: Support single and batch add, drag to adjust order; if option source is "from dataset", set data filter in the property bar.


- Field display logic: Controls can be shown/hidden based on logic. Set single or multiple display logic for a field. Related rules can be set when associating fields.
Note: Every basic control can configure "field display logic".


Users can add multiple display logic for a field and set related rules when associating fields.

After setting display logic, the corresponding controls will be shown during data collection. Whether some questions are answered depends on the previous selection.

Number
Description: Number control generates numeric fields.
Exclusive properties: Supports integer/decimal (up to 6 decimal places).

DateTime
Description: Date control generates date fields.
Exclusive properties: Type can be Date or Timestamp.

Image
Description: Supports jpg, jpeg, png, bmp, gif; no upload size limit, images compressed to within 1MB; max number per submission is configurable.
Note: Image control does not support batch edit/import upload.

After upload, images are stored on the BI server, and the form field stores image location and name info for easy use by other systems.

2.2 Advanced Controls
Sub-table
Table control, can insert a sub-form. Fields in the sub-form are generated by adding controls. Currently, 7 basic controls and 1 advanced control (Reference fill) are supported in sub-forms.

Add controls to sub-form by dragging or via the property bar.
To adjust field order, drag in the property bar.

Mobile display:

Desktop display:

On desktop, sub-forms support batch add (via Excel import) and clear, convenient for large data submissions. Typical scenario: users submit multiple, uncertain number of items in one form (e.g., store order details).
Matrix Table
Matrix table is a special sub-table with specified rows and row headers.
You can set the first column (row header) and row count; other operations are the same as sub-table.

Reference Fill
This control reads data across forms and fills data from other forms into the current form. The filled data is saved as part of the current form. Can be placed in table controls.
Scenario:
In the store order scenario, when filling order details, product name, unit, price, and quantity are needed. The first three are fixed master data and must match the product table. Manual input is error-prone. If these can be referenced directly from the product master table, it ensures accuracy and reduces effort.

Instructions:
Reference fill properties include 5 unique settings: Related table, Display field, Data filter, Batch add, Spread display.

Related table and display field: select fields to reference from another form; Data filter: filter referenced data, so only needed data appears in the dropdown. In the example above, the product inventory table is referenced, and product name, unit, and price are selected.

Reference fill can be used directly in the form or in table controls.

When adding data, multi-select is supported.

Data can also be displayed by default (auto spread).
Setting: In the property bar, under reference field, there is an "Auto display all data" option.

Effect: When entering the form, all matching reference data is displayed automatically.

Special notes:
- When reference fill is in the main form, only one data can be added, so "auto display all data" is not supported.
- When in matrix table, the number of auto-displayed rows matches the matrix table row header count.

Cross-table Query
This control reads data across forms and displays it in the current form for reference only (not saved). Cannot be placed in table controls.
Difference from Reference Fill:
a. Reference fill: referenced data is saved as part of the current form, can be used in table controls. b. Cross-table query: data is only displayed, not saved, and cannot be used in table controls.
Scenario:
For example, when a store submits this month's target, last month's sales can be displayed for reference. Only the current target needs to be saved. Without this control, users may need to switch between data. With it, they can view reference data directly.

Instructions:
Cross-table query properties include 3 unique settings: Related table, Related primary key, Display field.

After selecting related table and display field, add related primary key to filter data, so only matching data is shown.

3. Form Property Configuration
Below are form properties and explanations. After design, users can configure at the form level, including name, description, etc.
Form Property | Description |
Name | Form name. |
Description | Form description, helps submitters understand the form. |
Deduplication Key | Only affects new submissions after modification, not historical data. Logic is the same as database deduplication key. See Standard Database Connection Guide for details. |

After publishing, users can configure data permissions. See Form Entry-Data Management for details.
4. Notes
- Fields in the same form cannot have duplicate names.
- At least one basic control is required in a form.
- At least one control is required in a sub-form.
- At least one reference field is required in reference fill.
- Global form names cannot be duplicated.