FSM Mobile Element Types
This topic is intended for administrators and developers who choose element types for Field Service Management (FSM) Mobile.
This topic includes the following sections:
The value columns describe the value property for each element that stores a value. The columns list its format, accepted static values, and initial fallback. The fallback applies when neither configuration nor a loaded form supplies value for a new record. To override a type-based default or form-generated initial value, configure "value" with an accepted static value or an expression. The display-only heading element has no "value" property.
|
Type |
Description |
Value Property Format |
Accepted Static Value |
Default Value for a New Record |
|---|---|---|---|---|
|
|
A box with a true or false value. |
Boolean |
|
|
|
|
A calendar date. |
String ( |
A valid canonical date, |
Current date. To leave the value blank on a new record, set |
|
|
A date and time. |
String ( |
A valid canonical date and time, |
Current date and time. To leave the value blank on a new record, set |
|
|
A single-line email address field with a basic input-format check. |
String |
Text. The editable input flags values that don't match |
|
|
|
A file upload and download field. |
File object |
A file object supplied by the FSM Mobile upload flow, or |
|
|
|
A display-only section heading. Its text is supplied by |
None |
Not applicable. |
Not applicable. |
|
|
An HTML-content field. In read-only mode its value is rendered as HTML. Otherwise it is edited as multiline text. |
String |
HTML or plain text. |
|
|
|
An image capture or upload field. |
Image/file object |
An image object supplied by the FSM Mobile upload or camera flow, or |
|
|
|
A numeric field, optionally formatted with a unit. |
Number |
Any numeric value within the limits set by |
|
|
|
A masked single-line text field. |
String |
Any text. Apply |
|
|
|
A list from which a user selects one or more options. |
Object, or array of objects |
For single selection, one |
|
|
|
A signature capture field. |
String |
A signature value supplied by the FSM Mobile signature capture flow. |
|
|
|
A repeating row container and the only supported parent element type. Define its direct child column elements with |
Array of objects |
An array of row objects whose keys are the names of the table's column elements. |
|
|
|
A single-line telephone field. |
String |
Any text. Apply |
|
|
|
A single-line text field. |
String |
Any text. Apply |
|
|
|
A multiline plain-text field. |
String |
Any text. Apply |
|
|
|
A time of day. |
String ( |
A valid canonical time, |
|
|
|
A web-link field. |
String |
Any text. Apply |
|
Element Type Aliases and Compatibility Types
The following type names are aliases or backward-compatible element types. When FSM Mobile loads one of these types, it resolves it to the listed base element type. It then applies the shown properties and values at runtime. The alias can remain in the configuration, but the generated properties are not written back to the configuration.
For new configuration, use the base element type and set the required properties explicitly. This makes the intended behavior and dependencies easier to see.
|
Alias or Compatibility Element Type |
Base Element Type |
Generated Properties or Behavior |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
If the field ID matches the signature naming pattern, the |
|
|
|
|
|
|
|
No additional properties. |
|
|
|
No additional properties. |
|
|
|
Uses the |
|
|
|
Uses the |
|
|
|
Deprecated compatibility type. It is hidden and uses |
|
Unsupported type, for example |
|
Compatibility fallback. It is hidden. Don't use it as an element type. |
The float and percent aliases use the precision values listed in this table without adding an increment rule. Configure a positive numeric step when an increment is required.
Table Element Structure
A table holds repeating rows. Define the table and its child elements in the same resource's element object. Set each child's parent to the table's element name. Use column to select the values displayed in the table's list view and their order.
For example, add this fragment to the resource's element object:
{
"materials": {
"type": "table",
"label": "Materials"
},
"description": {
"type": "text",
"parent": "materials",
"label": "Description",
"column": 1
},
"quantity": {
"type": "number",
"parent": "materials",
"label": "Quantity",
"min": 0,
"step": 1,
"column": 2
}
}
Each row contains values named for the child elements. A table value can therefore look like this:
{
"materials": [
{ "description": "Filter", "quantity": 2 }
]
}
The first example defines elements. The second illustrates their data. Neither example defines how those values are saved to a NetSuite sublist. Configure the resource's article mapping for that purpose.
Use parent only for direct children of a top-level table. Don't create nested tables. If the named parent is missing or its type isn't table, the child may not appear in the intended form or table.