FSM Mobile Tabs Now Support Automatic Field Mapping via automap Property
Field Service Management Mobile tabs gain an automap property that automatically maps element IDs to NetSuite field IDs at runtime, eliminating the need for explicit article.map entries when IDs match exactly.
A new automap boolean property is available on FSM Mobile tab configurations. When set to true, FSM automatically maps each element to the corresponding NetSuite field at runtime — provided the element ID exactly matches the internal ID of a field on the record specified in article.record. This removes the need to maintain explicit article.map entries for every field.
How it works
- FSM reads the elements configured on the mobile tab.
- For each element that does not already have an explicit mapping in
article.map, FSM checks whether the element ID matches a field ID on the record specified byarticle.record. - If a match is found, the element is treated as mapped at runtime.
Explicit mappings in article.map always take precedence over automatic mapping. The automap property does not mutate the stored configuration — it is a runtime behavior only.
Important caveats
automapdefaults tofalse. You must explicitly opt in per tab.- If an element ID does not match the corresponding NetSuite field ID and no explicit mapping exists, the request for that mobile tab will fail and tasks may not load in FSM Mobile. This is a breaking-level mismatch, not a silent skip.
- Oracle's documentation does not clarify behavior for field types that require transformation (e.g., select/list fields, checkbox fields, or multiselect). Verify with your own testing that automap handles your field types correctly.
Configuration example
With automap: true, the element custrecord_details_text maps automatically to the field with the same internal ID on customrecord_details_form:
{
"routes/mobile": {
"details_form": {
"label": "Details Form",
"icon": "clipboard",
"min": 1,
"automap": true,
"element": {
"custrecord_details_text": {
"type": "text",
"label": "Enter Details"
}
},
"article": {
"record": "customrecord_details_form",
"parent": "custrecord_details_task"
}
}
}
}If the element ID differs from the field ID, you must still use an explicit article.map entry (and can set automap to false or omit it):
"article": {
"record": "customrecord_details_form",
"parent": "custrecord_details_task",
"map": {
"details": "custrecord_details_text"
}
}What to do
- Audit existing FSM Mobile tab configs. Identify tabs where element IDs already match NetSuite field internal IDs. These are candidates for
automap: true. - Rename element IDs or add explicit mappings for mismatches. Before enabling automap, ensure every element either has a matching field ID or an explicit
article.mapentry. A mismatch with no mapping will break the tab. - Enable automap per tab. Add
"automap": trueto each qualifying tab configuration object. Remove redundantarticle.mapentries where the element ID already matches the field ID. - Test in sandbox. Verify that all field types (text, select, checkbox, date, etc.) map and save correctly. Oracle does not document any field-type limitations, so confirm behavior empirically.
- Leave explicit mappings for edge cases. Any element that intentionally uses a different ID from the NetSuite field must retain its
article.mapentry — automap will not cover it.
Source: Oracle NetSuite Release Notes