- Overview
- Callout
- Complex Scenarios
- Credentials
- Data Service
- About the Data Service activity package
- Project compatibility
- Create Entity Record (New)
- Update Entity Record (New)
- Delete Entity Record (New)
- Get Entity Record by Id (New)
- Query Entity Records (New)
- Upload File to Record Field (New)
- Download File from Record Field (New)
- Delete File from Record Field (New)
- Create Multiple Entity Records (New)
- Update Multiple Entity Records (New)
- Delete Multiple Entity Records (New)
- Form
- Release notes
- Project compatibility
- Real Time Forms
- Updating form data
- Running forms using JavaScript
- Customizing Forms Using CSS
- Conditional components
- Adding multiple components on the same row in Columns
- Using the Data Table component
- Get File/Folder path
- Reading cell values from a Data Grid component
- Displaying PDF files
- Displaying images in forms
- Scrolling through Data Grids
- Using Dev Tools with forms
- Calculate form component values
- Managing dates in forms
- Opening hyperlinks inside forms
- Displaying a default tab in forms
- Displaying the full label of a component
- Searching long strings in drop-down lists
- About the pre 23.4 Form experience
- Project Compatibility
- Real Time Forms
- Dynamic Checkboxes
- Conditional Dropdowns
- Displaying a Default Tab
- Displaying Images
- Displaying PDF Files
- Displaying the Full Label
- Dynamic HTML Elements
- Managing Dates
- Searching Long Strings in Drop-downs
- Customizing Forms Using Local CSS Files
- Executing Do Block On Checkbox Change
- Customizing Columns Width
- Updating Form Data
- Resetting Collection Data
- Advanced Logic
- Executing Do Block on Dropdown Option Change
- Reading Cell Values From a Data Grid Component
- Conditional Components
- Scrolling Through Data Grid Components
- Using the Grid Component
- Dev Tools
- Calculated Value
- Dynamic Dropdowns
- Switching Tabs With Button Click
- Opening Hyperlinks Inside Form
- FTP
- IPC
- Persistence
- Release notes
- Project compatibility
- About the Persistence activity package
- About Form Designer Controls
- About Form Components
- Bulk Form Designer
- Start Job And Get Reference
- Wait For Job And Resume
- Add Queue Item And Get Reference
- Wait For Queue Item And Resume
- Wait For Form Task And Resume
- Resume After Delay
- Assign Tasks
- Create External Task
- Wait For External Task And Resume
- Complete Task
- Forward Task
- Get Form Tasks
- Get Task Data
- Get App Tasks
- Add Task Comment
- Update Task Labels
- Create App Task
- Wait For App Task And Resume
- Configure task timer
- Working with App tasks
- Building Your First Form Action
- Advanced Controls for Drop-downs
- Embedding Objects in Form Actions
- Allowing Users to Upload Files to the Storage Bucket
- Adding Advanced Logic Using Java Script
- Setting a Default Tab
- Removing the Delete button from Edit Grid using custom CSS
- Customizing Edit Grid templates
- Using buttons to trigger custom logic
- Using an External Form Layout
- Dynamically expanding form components at runtime
- Aligning the content of a form component from left to right using JSON attributes
- Sample Workflows
- Automation Ops Pipelines
- System
- Release notes
- About the System activity package
- Project compatibility
- Supported character encoding
- RegEx Builder Wizard
- Add Data Column
- Add Data Row
- Add Log Fields
- Add or Subtract from Date
- Add Transaction Item
- Add Queue Item
- Append Item to Collection
- Append Item to List
- Append Line
- Beep
- Break / Exit Loop
- Browse for File
- Browse for Folder
- Build Collection
- Build Data Table
- Bulk Add Queue Items
- Change Case for Text
- Change Type
- Check False
- Check True
- Clear Data Table
- Collection to Data Table
- Comment
- Compress/Zip Files
- Copy File
- Copy Folder
- Combine text
- Comment Out / Disabled Activities
- Continue / Skip Current
- Create File
- Create Folder
- Create List
- Custom Input
- Delete
- Delete File
- Delete Folder
- Delete Storage File
- Delete Queue Items
- Disable Local Trigger
- Do While
- Download file from URL
- Download Storage File
- Enable Local Trigger
- Evaluate Business Rule
- Exists in Collection
- Extract/Unzip Files
- Extract Date and Time from Text
- Extract Text
- File Change Trigger
- File Exists
- Filter Collection
- Filter Data Table
- Folder Exists
- For Each
- For Each File in Folder
- File Change Trigger V3
- Find and Replace
- Find Matching Patterns
- For Each Folder in Folder
- For Each Row in Data Table
- Format Date as Text
- Format Value
- Generate Data Table From Text
- Get Asset
- Get Credential / Get Orchestrator Credential
- Get Current Job Info
- Get Environment Folder
- Get Environment Variable
- Get File Info
- Get Folder Info
- Get Jobs
- Get Processes
- Get Row Item
- Get Transaction Item
- Get Username/Password
- Get Queue Items
- Global Variable Changed Trigger
- Input Dialog
- Invoke Code
- Invoke Com Method
- Invoke Power Shell
- Invoke Process
- Invoke VBScript
- Invoke Workflow File
- Is Text Matching
- Join Data Tables
- Kill Process
- Launch Workflow Interactive
- List Storage Files
- Log Message
- Lookup Data Table
- Manual Trigger
- Merge Collections
- Merge Data Table
- Message Box
- Modify Date
- Modify Text
- Move File
- Move Folder
- Multiple Assign
- New Item Added to Queue
- Notify Global Variable Changed
- Orchestrator HTTP Request
- Output Data Table
- Path Exists
- Postpone Transaction Item
- Process End Trigger
- Process Start Trigger
- Raise Alert
- Read List Item
- Read Text File
- Read Storage Text
- Remove Data Column
- Remove Data Row
- Remove Duplicate Rows
- Remove From Collection
- Remove Log Fields
- Replace Matching Patterns
- Repeat Number of Times
- Repeat Trigger
- Rename File
- Rename Folder
- Report Status
- Reset Timer
- Resume Timer
- Retry Scope
- Return
- Run Local Triggers
- Run Parallel Process
- Set Asset
- Set Credential
- Set Environment Variable
- Set Transaction Progress
- Set Transaction Status
- Should Stop
- Split Text
- Sort Data Table
- Start Timer
- Start Job
- Stop Job
- Stop Local Triggers
- Stop Timer
- Text to Left/Right
- Text to Upper/Lowercase
- Time Trigger
- Trigger Scope
- Timeout Scope
- Update Row Item
- Update List Item
- Upload Storage File
- Wait for Download
- Wait Queue Item
- While
- Workflow Placeholder
- Write Storage Text
- Write Text File
- AddDataRow
- AddQueueItem
- AddTransactionItem
- AppendLine
- BulkAddQueueItems
- ClearDataTable
- CompressZipFiles
- CopyFile
- CreateFile
- CreateFolder
- DeleteFileOrFolder
- DeleteQueueItems
- DeleteStorageFile
- DownloadStorageFile
- ExtractUnzipFiles
- FilterDataTable
- GetAsset
- GetCredential
- GetJobs
- GetQueueItem
- GetQueueItems
- GetResourceForLocalPath
- GetRowItem
- GetTransactionItem
- InvokeProcess
- JoinDataTables
- ListStorageFiles
- LookUpDataTable
- MergeDataTable
- MoveFile
- OrchestratorHTTPRequest
- OutputDataTable
- PathExists
- PostponeTransactionItem
- ReadStorageText
- ReadTextFile
- RemoveDataColumn
- RemoveDuplicateRows
- Replace
- SetAsset
- SetCredential
- SetTransactionProgress
- SetTransactionStatus
- SortDataTable
- StartJob
- StopJob
- UpdateRowItem
- UploadStorageFile
- WaitQueueItem
- WriteStorageText
- WriteTextFile
- Testing
- Release notes
- About the Testing activity package
- Project compatibility
- Project Settings
- Add Test Data Queue Item
- Address
- Attach Document
- Bulk Add Test Data Queue Items
- Create Comparison Rule
- Delete Test Data Queue Items
- Get Test Data Queue Item
- Get Test Data Queue Items
- Given Name
- Last Name
- Random Date
- Random Number
- Random String
- Random Value
- Verify Control Attribute
- Verify Documents Equivalence
- Verify Expression
- Verify Expression With Operator
- Verify Range
- Verify Text Equivalence
- Address
- AddTestDataQueueItem
- AttachDocument
- BulkAddTestDataQueueItems
- DeleteTestDataQueueItems
- GetTestDataQueueItem
- GetTestDataQueueItems
- GivenName
- LastName
- RandomDate
- RandomNumber
- RandomString
- RandomValue
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- VerifyExpression
- VerifyExpressionWithOperator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- VerifyRange
- Workflow Events
- Workflow Foundation
Workflow Activities
About Form Components
Text Field
You can use the Text Field component to input short text.
Text Area
You can use the Text Area component to input long text. The Text Area component offers multi-line input.
The Rows setting allows you to set how many rows are visible in the Text Area component.
Number
You can use the Number component to input any number value.
- Use Thousands Separator - separates thousands with a comma.
- Require Decimal - always shows decimals, even if 0.
- Decimal Places - sets the maximum number of decimals displaying.
Password
You can use the Password component to input passwords. The text is displayed as asterisks instead of the actual value entered for secrecy. The Password component has the same options as the Text Field component.
Checkbox
You can use the Checkbox component to input boolean values (true or false).
Select Boxes
You can use the Select Boxes component to allow users to choose multiple values from a list.
-
Values - allows you to add options to your Select Box component. The Label column is the value visible to users. The Value column is the name stored in the database.
Drop-down List
You can use the Drop-down List component to display lists in a dropdown format.
- Widget Type - select the type of widget you want to use.
-
Data Source Values - input the values that appear in the dropdown list. The Label column is the value visible to users. The Value column is the name stored in the database.
- Item Template - HTML
template that allows you to control the way values are displayed in the dropdown
list. You can access the values in the dropdown list, through the
item
variable. For example, useitem.label
to access a certain value in the dropdown list - Refresh Options On - refreshes data when another field changes.
- Refresh Options On Blur - refreshes data when another field is blurred.
- Clear Value on Refresh Options - clears the components value when the Refresh On Field option is changed.
- Read Only Value - only show the value when in Read-Only mode.
- Choice.js options - input raw JSON object to use as options for the Select component.
- Use exact search - disables search algorithm threshold.
- Custom Default Value - create a custom default value using JavaScript or JSONLogic.
Radio
You can use the Radio component to allow users to choose only one value from a list.
- Values - input the values that appear in the list. The Label column is the value visible to users. The Value column is the name stored in the database.
Button
You can use the Button component to allow users to perform various actions in the form.
-
Action - select the action you want the button to perform:
- Submit - submits the form.
- Click - performs the click operation.
- Reset Form - resets the form fields.
- Event - when a
user clicks the button, a certain event starts running When selecting
Event you need to input the event in the Button Event
field. Now you can use the name of the event to create a custom logic
that will trigger another component.
For example, if you want a Button to calculate the value of two components and output it into a third one, you can create a Button with the event named
calculate
and then create a Logic calledcalculate
for the component where you want to output the result.
- Reset Data from DO block - when checked for Click type buttons, it sets the data that is received from the DO block. Helps increase performance when the data found on other pages is not on the current page.
- Theme - choose the color theme of the button from the dropdown list.
- Size - choose the size of the button from the dropdown list.
- Block Button - spans the full width of the bounding container.
- Left / Right Icon - add
the full icon class string, to show the icon. For example,
fa fa-plus
.
HTML Element
You can use the HTML Element to display a single HTML element in your form and configure it based on your use-case.
<script>
, <embed>
,
<style>
, onmouseover
, and
onload
.
- HTML Tag - The tag of the HTML Element.
- CSS Class - The CSS Class that can be added for this HTML Element. You can input multiple classes, by separating them with single spaces.
- Attributes - The
attributes for the HTML Element. Only safe attributes are allowed, such as:
src
,href
, andtitle
. - Content - the content of the HTML Element.
- Refresh On Change - re-renders the HTML Element whenever a value changes in the form.
To display images and PDF files inside Form Actions, you need to use the HTML Element component. Check out the following tutorials:
Content
You can use the Content component to add information in your form, that is display-only. The value of the component is not submitted back to the server.
- Refresh On Change - rerenders the Content component each time a value in the form changes.
You can use the Email component to add a field for inputting email addresses. The Email component is similar to the Text Field component.
Phone Number
You can use the Phone Number component to add a field for inputting phone numbers.
-
Input Mask - Provides a predefined format for the phone number. For the phone number field, the default format is
(999) 999-9999
.- 9 - numeric
- a - alphabetical
- \* - alphanumeric
- Input Mask Placeholder Char - You can use a character as a placeholder in the field.
Date/Time
You can use the Date/Time component to input dates, times, or input both.
- Format - the format used for displaying the datetime value.
- Enable Date Input - allows users to input dates for this field.
- Use Input to add moment.js for
minDate - enables the user to use an input for
minDate
moment function, instead of a calendar. - Use calendar to set
minDate - enables the user to use a calendar to set the
minDate
. - Use Input to add moment.js for
maxDate - enables the user to use an input for
maxDate
moment function, instead of a calendar. - Use calendar to set
maxDate - enables to use a calendar to set the
maxDate
. - Disable specific dates or
dates by range - add dates that you want to ban. For example,
2027-08-11
. - Custom Disabled Dates - allows you to ban certain dates using a customized function.
- Disable weekends - allows you to ban weekends.
- Disable weekdays - allows you to ban weekdays.
- Enable Time Input - allows users to input time for this field.
- Hour Step Size - the number of hours to increment or decrement in the time picker.
- Minute Step Size - the number of minutes to increment or decrement in the time picker.
- 12 Hour Time (AM/PM) - displays time in 12 hour periods, using AM or PM.
-
Default Date - sets the default value to a specific date using Moment.js functions. For example,
moment().substract(10, 'days')
.
Day
You can use the Day component to ask for input for Day, Month, and Year, either through a number-type field or a select-type field.
- Type / Type of input - choose to give input for Day, Month, or Year either by typing in a number or by selecting options from a dropdown list.
Minimum / Maximum Year - choose the minimum / maximum year that can be entered.
- Require Day - the Day field must be filled in before the form renders.
- Require Month - the Month field must be filled in before the form renders.
- Require Year - the Year field must be filled in before the form renders.
-
Maximum / Minimum Day - choose a minimum / maximum day that can be entered. You can also use Moment.js functions. For example, you can use
moment().add(10, 'days')
.
Time
You can use the Time component to input time in different formats.
- Input Type - select the type of widget you would like to use for inputting time: HTML5 Time Input (users can choose the time from a given panel) or Text Input with Mask (users can manually input the time).
Currency
You can use the Currency component to display financial amounts using a certain currency. The component has an input mask that displays the currency icon and automatically adds commas based on the number that the user inputs. The component allows two decimal values.
- Currency - choose a certain currency from the dropdown list.
You can use the PDF component to render PDF files within your form actions.
File
You can use the File component to allow users to upload files to a form or download files from a form.
- Modal Edit - opens a modal to edit the value of this component.
- Directory - places all the
files uploaded in this component, in the directory specified. The string ,ust
end with
/
. - Upload Only - allows users only to upload files. The donload option will be unavailable, when checked.
- File Types - allows you to specify the file types, in order to classify the types of files that the user uploads. Recommended when a user uploads multiple types of files and you want the user to specify the type of each file uploaded.
- File Pattern - allows you to specify file extensions that will be allowed to upload. Other file extensions that are not specified, won't be uploded.
- File Minimum Size - sets the minimum size for the uploaded file.
- File Maximum Size - sets the maximum size for the uploaded file.
Survey
You can use the Survey component to allow users to answer multiple questions, by choosing only one value from a list.
- Questions - add the questions that the users should answer.
- Values - add the options that the user can select per question.
Columns
You can use the Columns component to display other components in line, grouping them as columns.
- Column Properties - add columns to the component and configure them, by adjusting their Width, Offset, Push and Pull properties. After configuring the columns' layout, you can drag and drop other components into the Columns component.
- Auto adjust columns - automatically adjusts columns if there are hidden nested components.
Panel
You can use the Panel component to group field components and add them in a named panel.
- Theme - choose the theme of the panel from the dropdown list. The Bootstrap class is added to the wrapper div.
- Collapsible - allows you to collapse the panel.
-
Initially Collapsed - the property is available only when Collapsible is checked. Collapses the panel when the form is loading.
Table
You can use the Table component to create a table that holds other form components inside columns and rows.
- Number of Rows / Columns - enter the numbers of rows and columns that you want to be displayed in the table
- Clone Row Components - clones the components inside rows and adds them in the remaining rows. You can use it when creating tables with multiple rows, that contain the same content.
- Cell Alignment- choose the horizontal alignment of the cells in the table.
- Striped - adds striped shading to rows.
- Bordered - adds visible borders to the table.
- Hover - highlights row when hovering the mouse over it.
- Condensed - condenses the size of the table.
Tabs
You can use the Tabs component to group components into tabs. When the form renders, you can view one tab at a time.
The Tabs setting allows you to add, configure, reorder, and remove tabs.
Container
financialPerformance
submits as:
{
data: {
financialPerformance {
grossProfitMargin: "0.83",
netProfitMargin: "0.43"
}
}
}
{
data: {
financialPerformance {
grossProfitMargin: "0.83",
netProfitMargin: "0.43"
}
}
}
Data Grid
You can use the Data Grid component to add multiple components inline into a single grid. You can drag and drop multiple components in the Data Grid to match your use case. The Data Grid component allows you to add multiple duplicate fields inline and into a single grid.
In the Form Renderer window, the rows inside the Data Grid component can be added or removed.
- Disable Adding / Removing Rows - hides the buttons that allow adding or removing rows when the form renders.
- Allow Reorder - reorder rows by dragging and dropping them.
- Equal Column Width - makes the widths of columns equal.
- Enable Row Groups - allows separating rows into groups. Add groups, label them, select the rows for each group.
- Initialize Empty - the Data Grid will have no visible rows when initialized.
Edit Grid
You can use the Edit Grid component to display data in a table format. You can drag and drop multiple form components into the Edit Grid, to capture loads of data.
When the form renders, you can add a duplicate of the Edit Grid, by clicking Add Another.
- Open First Row when Empty - opens the first row when the Edit Grid is empty.
- Disable Adding / Removing Rows - hides the buttons that allow adding or removing rows when the form renders.
- Header / Row / Footer Template - customize the grid using JavaScript.
- Add Another Text - changes the name of the Add Another button.
- Save Row Text - changes the text of the Save Row button.
-
Remove Row Text - changes the text of the Remove Row button.
Comparison between grid control components
The table below compares the capabilities of the grid controls available in the Form Designer. The table also describes the recommended scenarios for using each grid control component: Data Grid and Edit Grid.
Legend: = Not available.
Capability |
Data Grid |
Edit Grid |
---|---|---|
Recommended scenarios |
Displaying a small set of data that needs to be edited by the user (inline edit capability). |
Displaying a small set of data that needs to be edited by the user (sub-form inline edit capability). |
Recommended number of rows |
Not more than 100 rows. Risk of performance reduction beyond recommended numbers. |
Not more than 100 rows. Risk of performance reduction beyond recommended numbers. |
Recommended number of columns |
Maximum 7 columns for 100 rows. Risk of performance reduction. |
Maximum 7 columns for 100 rows. Risk of performance reduction. |
Editable |
|
|
Pagination |
|
|
Sortable |
|
|
Filterable |
|
|
Column resizable at runtime |
|
|
Row grouping |
|
|
Logic & Conditions |
| |
Extensive customization using templates |
|
|
Global search |
|
|