Parameters
A JSON array of JSON objects where each object in the array is a definition for an input of the page. Parameters can be:
-
mandatory (M)
-
optional (O)
-
conditional based on another field (C).
{
...
"Parameters": [
{ ... },
{ ... }
],
...
}

The Name
is the label for the input field and is mandatory for all input definitions. It has handling to automatically add spaces between capital letters.
ItemCode to Item Code
{
...
"Name": "ItemCode",
...
}

The Type
defines the type of input the fields should be in and is mandatory for all input definitions.

Field |
Description |
---|---|
Date |
An input field for entering a date. |
Display |
A read only input type. It is useful when chaining pages and you want to display to the user a value but you do not want them to be able to edit it. Example: A PackSlipNumber of ShipmentNumber. |
DynamicSelect |
A drop-down with a list of options that are dynamically sourced from SQL. |
Image |
Capture an image on a RF scanner. Only for .wms app on Android and iOS. Base 64 data images are sent to the backend. Use with Steps > Internal functions > |
LabelPrinterID |
A drop-down list of label printers that are set up in .wms. |
ReportPrinterID |
A drop-down list of report printers that are set up in .wms. |
Select |
A drop-down with a configurable hardcoded list of options. |
Signature |
Capture a signature on a RF scanner. Only for .wms app on Android and iOS. Base 64 data images are sent to the backend. Use with Steps > Internal functions > |
TenantID |
A drop-down list of active tenants that the user can select. This presents the TenantName as the option but the value is the TenantID. |
TenantIDWithNull |
A drop-down list of active tenants with an All Tenants option that the user can select. This presents the TenantName as the option but the value is the TenantID. For the All Tenant option, the ID is 0. |
Text |
A basic text field. |
Time |
An input field for entering time. |
WarehouseID |
A drop-down list of active warehouses that the user can select. This presents the WarehouseName as the option but the value is the WarehouseID. |
WarehouseIDWithNull |
A drop-down list of active warehouses with an All Warehouses option that the user can select. This presents the WarehouseName as the option but the value is the WarehouseID. For the All Warehouses option, the ID is 0. |
{
...
"Type": "TenantIDWithNull",
...
}

The Options
key is required when a Type
of Select
is used in order to define the list of options.
If the Type
is DynamicSelect
, the value should be an SQL statement that will run to return a list of options. If this is used with an input type other than Select
or DynamicSelect
it will do nothing.
{
...
"Type": "Select",
"Options": ["Option 1","Option 2","Option 3","Option 4"],
...
},
{
...
"Type": "DynamicSelect",
"Options": "SELECT BinCode FROM BIN WHERE BIN.InstanceID = :InstanceID",
...
}

The Optional
key is a true
or false
flag for whether the input must be completed. By default, this is false so an input must be completed.
{
...
"Optional": true,
...
}

The Regex
key defines an optional validation Regex for the input.
It is useful for validating free text inputs in cases where you want users to enter number values.
This Regex must start and end with a / character.
{
...
"Regex": "/^[0-9]+$/",
...
}

The Hidden key is used to hide an input parameter from the user.
This is used when chaining data between screens that you do not want or need the user to see, such as internal IDs.
...
{
...
"Name": "JobID",
"Hidden": true,
...
}
...

The TableGroup key is used to group inputs together that share the same TableGroup into a table with repeatable rows of inputs. This is the key that is associated with the TableGroupConfig.
Note: This will allow the user to input this field multiple times.
...
{
...
"Name": "ItemCode",
"TableGroup": "OrderLines",
...
},
{
...
"Name": "Quantity",
"TableGroup": "OrderLines",
...
}
...

The DefaultValue key is used to prefill fields.
{
"Name": "1",
"Type": "Text",
"DefaultValue": "1"
}