The Subform widget is designed to be placed within a Form, effectively creating a nested child form inside the parent form for more complex data collection and organization.
To add a new Subform to your page, simply drag and drop the “Subform” widget from the left-hand side of the page screen to the design area of your page.
You can only place the Subform widget inside of a Form widget, otherwise, there is an error message. You can change the Name of the Subform in the blue Quick Settings panel that pops out when you click on the placed Subform widget.
Click on the widget once to open its Quick Settings Panel.
The settings window has two tabs, General Rule and Conditional Rule. General Rule applies universally for all fields in this subform at any time. Conditional Rule applies only after the fulfilment of some certain condition(s).
There are three rows in each entry of the General Rule. The first row is the condition that governs the rule, and the rule consists of two operands and the operator in between.
The second row lets the user know how to implement the rule, for instance, compulsory, optional or just show remarks.
The second row also lets the user choose at what time the rule is implemented, for instance, automatically, or after submission.
The third row has a field where the user can edit the error message that appears when the rule is violated.
The error message appears in the centre top part of the window where the Subform is located.
At the bottom of the Form Validation Settings window is a section called “Following widgets should not be empty”. Only widgets in the Subform can be applied in this rule.
The design of each entry in the Conditional Rule is almost the same as in General Rule except for some minor differences. To edit the condition, you must click on the blue “edit” icon on the right.
After clicking on the blue “edit” icon, a popup window called “Conditional Rule Setting” appears. It has two steps, Condition and Required Rule.
After clicking on the blue “edit” icon, a popup window called “Conditional Rule Setting” appears. It has two steps, Condition and Required Rule.
The left side operand is restricted to be either a Variable or a Widget in the subform.
In the bottom of the second step is a section called “Following widgets should not be empty”. Only widgets in the Subform can be applied in this rule.
In the second step Required Rule, there is a single column table. Each entry in Required Rule is a conditional rule with three parts, two operands and the operator in between. As in the first step, the left side operand is restricted to be either a Variable or a Widget in the subform.
The Data Source Settings Window has two steps, Column Settings and Statistical Value. In Column Settings, you can adjust the appearance and sorting of the columns.
In the second step, "Statistical Value," you can apply simple statistical functions not only to values within widgets but also to widget properties such as "Created By" and "Last Edited By." It's important to note that if the value is text and not a number, numerical functions like sum and average may not work correctly. In such cases, it is recommended to use functions like max and min to display the text appropriately.
In the second step, "Statistical Value," you can apply simple statistical functions not only to values within widgets but also to widget properties such as "Created By" and "Last Edited By." It's important to note that if the value is text and not a number, numerical functions like sum and average may not work correctly. In such cases, it is recommended to use functions like max and min to display the text appropriately.
This window has three tabs, General, Visibility and Function.
The tab General has two subheaders, “Basic”, and “Position, Size and Layout”.
The fields in “Basic” are Name, Display Name and Description. You can change the name, display name and description of the widget here.
Position, Size and Layout
The fields in “Position, Size and Layout” are Sizing Mode, Position, Button Alignment, Default Record Limit, and “Display in”
In Absolute Size, the dimensions of the table are the same in the Page Builder and Production. In Position, the x and y coordinates of the widget on the page, and the widget width and height can all be adjusted precisely in units of pixel (px).
In Button Alignment, you can choose to inherit the previous alignment or choose your own alignment (left, center, right).
In Button Alignment, you can choose to inherit the previous alignment or choose your own alignment (left, center, right).
In Relative Size, the right and bottom sides of the table expand to completely fill the screen/window in Production.
In Default Record Limit, you can choose the number of records shown per page on startup.
In the single-column table, you can turn on/off the ‘Invisible’ and ‘Looks Read-Only’ options for your widget. The first entry is the default setting that applies to everything. You can also create new entries by tapping ‘New Conditional Visibility’ and setting a condition with two operands and an operator in between, so the rule will only apply when the condition is met.
There is one row for each Runtime User Role. The first column is the name of the user role. The second to fourth columns are various functions of the widget. You can turn on/off each user role’s access to these functions.
You will find the user role tab.
In the table, you will see the name of each Runtime User Role listed on the left. On the right side of each entry, there's a handy dropdown menu that lets you choose the level of access that each Role has to the widget in Production.
If you choose the 'Inherit' option, the Role Privileges that you have set in the Runtime User Roles List will be applied
In the popup window, you can selectively copy the values of each field in Widget Property Settings to the same fields of one or multiple widgets, even widgets inside of Forms and inside of other widgets.
The left side shows all of the fields of the Source Widget. The top of the left side shows all of the tabs of Widget Property Settings.
The right side is a list of the names of all widgets other than the source widget on the same Page.
You can click close on the top right to exit or click apply on the bottom right to apply changes.
If you click the delete button, a popup message will appear asking for confirmation before the widget is deleted. You can either click delete or cancel to leave without changing anything.