Configuring FSM Automatic Record Naming
Use FSM record model configuration to change generated names for assets, cases, projects, and CRM tasks. You can also disable automatic naming for individual record types. For naming conditions, form behavior, and the save lifecycle, see FSM Automatic Record Naming.
Before You Begin
Before changing automatic naming, complete these checks:
-
Use a role with permission to edit the Field Service Configuration record (
customrecord_nx_configuration). The Administrator and Field Service Administrator (customrole_nx_nextservice_admin) roles have the Full permission level for this record. -
Identify the record type, fields used in the naming formula, and the intended result. Formula fields and joins must be valid search columns for that record type.
-
Keep the normal FSM record processing available. The Field Service Client script (
customscript_nx_client) supports form behavior. The Field Service User Event script (customscript_nx_userevent) prepares names and applies model naming after saving. Use FSM Script Reference for deployment and monitoring information.
Default Configuration and Settings
The standard product configuration supplies an automatic-name formula for each model in the following table. Each formula belongs at prototype.map.autoname inside the model root. For root placement and model structure, see Finding a Configuration Area and Where Model Settings Are Configured.
|
Record and Model Root |
Standard Formula Inputs |
Record-Data Condition |
Stored Name Field |
|---|---|---|---|
|
Asset ( |
Item ( |
No record-data condition |
|
|
Case ( |
Case Type ( |
Case Type is selected |
|
|
Project ( |
Type ( |
Type is selected |
|
|
CRM task ( |
Task Type ( |
Task Type is selected |
|
The supplied formulas keep the first 80 characters. The asset formula removes a matching parent Item prefix and trims the assembled name. If Number ends with : followed by the current Name, the project formula uses Internal ID. Otherwise, it uses Number.
The following table describes the available autoname settings.
|
Configuration Choice |
Result |
|---|---|
|
Omit a custom |
Retain the applicable standard naming formula. |
|
Supply a text formula mapping beginning with |
Generate the name from that formula when the record's naming conditions are met. |
|
Set |
Stop this model from generating an automatic name. Its normal naming component also stops preparing the Name field. |
A nonempty formula result replaces a different stored name on creation or edit, including inline edit when FSM User Event processing applies. An existing manual name does not prevent replacement. Activating a configuration change does not itself rename all existing records.
Use FSM Record Model Configuration for shared model settings and Using Formulas in Maps for formula mappings. A naming formula uses NetSuite search formula syntax. It is not a form expression for FSM Mobile.
The following JSON shows the standard autoname mappings for the four record models.
{
"models/asset": {
"prototype": {
"map": {
"autoname": "formulatext:substr(trim(regexp_replace({custrecord_nx_asset_item}, '^'||{custrecord_nx_asset_item.parent}||' : ')||' '||nvl({custrecord_nx_asset_serial}, nvl(regexp_replace({custrecord_nx_asset_address_text},CHR(13)||CHR(10),' '), {custrecord_nx_asset_address}))), 1, 80)"
}
}
},
"models/case": {
"prototype": {
"map": {
"autoname": "formulatext:substr({custevent_nx_case_type}||' '||{casenumber}||' '||{custevent_nx_case_asset}, 1, 80)"
}
}
},
"models/project": {
"prototype": {
"map": {
"autoname": "formulatext:substr({custentity_nx_project_type}||' '||(case when {entityid} like '% : '||{companyname} then {internalid}||'' else {entityid} end)||' '||{custentity_nx_asset}, 1, 80)"
}
}
},
"models/task": {
"prototype": {
"map": {
"autoname": "formulatext:substr({custevent_nx_task_type}||' '||{custevent_nx_task_number}||' '||{custevent_nx_task_asset}, 1, 80)"
}
}
}
}
Name-Field Form Controls
Each record type also has a naming view: views/asset/autoname, views/case/autoname, views/project/autoname, and views/task/autoname. Their hidden property belongs directly inside the view root and defaults to false.
Setting hidden to true stops the component from preparing the Name field. It does not stop the model from generating names. The asset component can be active even when its definition is absent from standard configuration Preview. See FSM NetSuite View Configuration for these separate controls.
Use the model's empty autoname mapping to disable automatic naming. Changing form behavior alone can allow a manually entered name that FSM then replaces after saving. Retain normal name-field preparation when changing only the generated format.
Change a Naming Formula
Change a Naming Formula
-
Go to Field Service > Administration > Configuration. The Field Service Configuration page opens the active configuration record.
-
Record the name of the active configuration so that you can identify it when activating the replacement.
-
In Name, enter a unique name for the revised configuration. Begin with the current product version, followed by the date in
YYYYMMDDformat and your initials. You can add a short description. -
Check the Inactive box to keep the replacement inactive during editing.
-
On the Save list, click Save As.
-
Click List. On the Field Service Configuration List page, check the Show Inactives box.
-
Find the copied record and click Edit.
-
Prepare a text formula mapping with valid fields and joins for the record type. Include the required length limit and handling for missing values. The formula must produce a usable name for records on which automatic naming is active.
-
Change the JSON in the Editor. If you use an external editor, paste the revised JSON back into the Editor.
-
Find or add the applicable model root from the settings table. Within its
prototype.mapobject, setautonameto the required text formula mapping. Preserve other properties in the existing model and account configuration. -
Validate the revised JSON.
-
From the Save As list, click Save.
-
On the configuration list, clear Inactive for the revised record and check Inactive for the previous active record.
-
Click Submit, then reopen the configuration page to confirm the intended record is active.
Example: Change the Case Name Format
The following fragment belongs at the root of the existing custom configuration. Merge this fragment with existing properties because it does not replace the complete configuration.
{
"models/case": {
"prototype": {
"map": {
"autoname": "formulatext:substr({custevent_nx_case_type}||' #'||{casenumber}||' - '||{custevent_nx_case_asset}, 1, 80)"
}
}
}
}
For illustrative values of Case Type Repair, Case Number 1042, and Asset Pump A, the formula produces Repair #1042 - Pump A. The example uses different separators but keeps the same fields and 80-character limit. Automatic naming still requires a selected Case Type.
Disable Automatic Naming for a Record Type
Disable Automatic Naming for a Record Type
-
Go to Field Service > Administration > Configuration. The Field Service Configuration page opens the active configuration record.
-
Record the name of the active configuration so that you can identify it when activating the replacement.
-
In Name, enter a unique name for the revised configuration. Begin with the current product version, followed by the date in
YYYYMMDDformat and your initials. You can add a short description. -
Check the Inactive box to keep the replacement inactive during editing.
-
On the Save list, click Save As.
-
Click List. On the Field Service Configuration List page, check the Show Inactives box.
-
Find the copied record and click Edit.
-
Change the JSON in the Editor. If you use an external editor, paste the revised JSON back into the Editor.
-
Under the applicable model root, set
prototype.map.autonameto the empty string"". Usemodels/asset,models/case,models/project, ormodels/taskfor the corresponding record type. Merge the change into the existing configuration and preserve unrelated properties.For example, this root fragment disables Asset automatic naming:
{ "models/asset": { "prototype": { "map": { "autoname": "" } } } } -
Validate the revised JSON.
-
From the Save As list, click Save.
-
On the configuration list, clear Inactive for the revised record and check Inactive for the previous active record.
-
Click Submit, then reopen the configuration page to confirm the intended record is active.
The supplied case and CRM task forms require a value in the Name field (title). Enter a name when automatic naming is disabled.
Disabling automatic naming retains stored names. It does not restore earlier manual names or stop other record processing. For CRM tasks, Number initialization and copy handling remain separate model behavior.
Dependencies and Limits
Consider these dependencies and limits:
-
Empty formula results: A formula mapping with a value activates the naming component even if the formula returns no name for a particular record. Model naming replaces the stored name only for a nonempty result.
-
Project numbering: NetSuite autogenerated numbering is separate from FSM automatic naming. Check it at Setup > Company > Setup Tasks > Auto-Generated Numbers when choosing a project formula. Number (
entityid) and Name (companyname) serve different purposes. Project Management changes the organization of project lists and numbering sequences. The FSM formula uses the same field IDs in either mode. See Projects. -
Project forms: After you disable Project Management, immediately review any custom project forms created or edited with the feature enabled. Update the forms if needed. For more information, see Enabling Project Features. Do not assume that changing a naming formula changes numbering preferences in NetSuite or form requirements.
-
Task numbering: With normal FSM model processing, an empty CRM Task Number becomes the record's Internal ID before naming. Copying a task on an FSM form clears its Number.
When Naming Changes Apply
The naming formula is used on eligible saves, including eligible edits to existing records. Automatic naming that needs the internal ID is applied after the record is saved. Configuration changes do not rename every existing record immediately.
For performance measurement and data capture, see FSM Performance and Data Collection.
Changing or Disabling Naming
Removing a custom autoname override restores the inherited formula. Setting autoname to "" disables this model's automatic naming. Changing a naming view's hidden property controls its form behavior separately.
These changes affect subsequent eligible saves and do not reverse stored names or restore previous manually entered names.