FSM Configuration

Field Service Management (FSM) uses standard product configuration and account-specific custom configuration to control supported behavior in NetSuite, the Schedule Board, and FSM Mobile. An administrator changes custom configuration in the field service configuration record. The custom configuration is written as JavaScript Object Notation (JSON).

This topic explains how custom configuration relates to product defaults. Use FSM Configuration File Structure to find the correct path and Updating and Validating FSM Configuration to prepare and check a change.

In this topic:

How Configuration Works

The standard configuration is supplied with FSM. It provides product defaults and can vary with the NetSuite features and settings enabled in an account. The custom configuration can override or extend those defaults for that account. When the FSM SuiteApp is updated, standard behavior can change. Review important custom overrides after an update.

Keep one field service configuration record active. FSM loads active custom records when it builds configuration. More than one active record can combine changes unexpectedly and make it harder to identify which property controls the result.

How Custom Configuration Combines with Core Configuration

When FSM builds configuration, it combines standard defaults with the active custom JSON.

In JSON, an object is a group inside { }. Each named entry in that group is a property: a name followed by its value. An array is a list inside [ ]. The example in FSM Configuration File Structure identifies each part.

FSM applies the following rules when combining configuration:

  • FSM combines objects one property at a time. Add only the properties you intend to change. Other standard properties in that object remain available.

  • When a property holds a single value, such as text, a number, true, or false, the custom value replaces the matching standard property's value. An additional custom property is added to the result.

  • A custom array property replaces the complete matching standard array. Preserve every array entry that must continue to apply.

  • Giving a property the value null removes a matching inherited property from the merge. Omitting the property retains its standard value. Later defaults or normalization can supply a value again.

  • Property names match without regard to letter case. Use the documented spelling consistently when authoring configuration.

  • A quoted property name beginning with // can hold a note. FSM removes that property before applying the configuration. A bare // comment is not valid JSON.

If the custom configuration omits a property, FSM uses the applicable standard property. Changing one custom property does not replace the entire configuration.

Before merging, FSM removes properties that are not applied as runtime customization. In addition to quoted note properties, it removes:

  • The root dependencies property.

  • The routes/mobile.user.employee.filters property. A custom value at this path does not change employee selection.

  • Additional entries under routes/mobile.user, except employee and array.

Other employee properties, including user.employee.resources, remain available for customization.

Important:

Treat arrays as complete replacements. A one-entry custom resource or filter array can remove other entries supplied by standard configuration.

Working with Configuration

  1. Identify the affected capability and the configuration property you need to change.

  2. Find the correct JSON path in FSM Configuration File Structure.

  3. Prepare an inactive revision and check it using Updating and Validating FSM Configuration.

Related Topics

General Notices