FSM Recurrence Record
Field Service Management (FSM) uses a Field Service Recurrence record for repeating cases or customer relationship management (CRM) tasks. It stores the calendar definition and supporting data. The definition contains the recurrence pattern, start and end conditions, saved values for later occurrences, and data that tracks generation.
The definition and its occurrences are separate records. Each case or CRM task represents service work and holds a link to its definition. A forward change can create another definition for the remaining part of the series. For information about series behavior and supported actions, see FSM Case and Task Recurrence.
Record Information
The following table summarizes the recurrence record's identity and access.
|
Property |
Value |
|---|---|
|
Record type |
FSM custom record |
|
Record name |
Field Service Recurrence |
|
Record ID |
|
|
Record identity |
NetSuite Internal ID ( |
|
Occurrence record types |
Case ( |
|
Normal user access |
Recurrence controls on Cases and CRM Tasks. The definition is hidden from ordinary NetSuite UI access and the search menu. |
Recurrence is also the name of an FSM API schema. Names such as startdate, createdfrom, and fieldvalues are mapped attributes, not the definition's stored field IDs. Use the exact field IDs in the FSM fields tables when identifying stored data.
Forms
You manage recurrence on Case and CRM Task forms, including the FSM-supplied forms custform_nx_case and custform_nx_task. Accounts can also use customized forms. FSM adds the Recurrence controls and Instances list through its record handling when recurrence is enabled and the required form context is available.
The pattern controls are page fields, such as custpage_nx_recurrence_type. They present data for the supporting definition and are not additional stored Case or Task pattern fields. Saving changes to the recurrence controls places a request in the occurrence's Field Service Recurrence Data field for background processing.
The recurrence controls initially show Interval 1 and End Type None. Selecting a pattern supplies relevant date-based choices from the occurrence's Field Service Start Date. These are interface defaults, not defaults declared on the definition's custom fields. For a yearly pattern, Month is supplied from the start date and is read-only in the standard controls.
For Case and Task form guidance, see FSM Case Record and FSM CRM Task Record. Form selection for a generated occurrence is separate from the hidden definition. Recurrence uses the preferred custom form for generated Cases and Tasks. It has no separate generated-record form setting. For information about form selection for generated occurrences, see Record and Calendar Boundaries. For setup information, see Configuring FSM Case and Task Recurrence.
Record Relationships
The following table describes the recurrence record's relationships.
|
Related Record |
Relationship and Field ID |
Purpose |
|---|---|---|
|
Case occurrence |
The Case stores Field Service Recurrence ( |
Connects each service occurrence to its Case series. |
|
CRM Task occurrence |
The Task stores Field Service Recurrence ( |
Connects each visit to its Task series. |
|
Primary occurrence |
The linked Case or Task stores Field Service Instance Index ( |
Identifies the current primary without a separate primary-record reference on the definition. |
|
Preceding definition |
The definition created for a forward segment stores Created From ( |
Retains the source definition when a forward segment is created. It doesn't reference a Case or Task. |
|
Field Service Error |
The Error record can identify the definition or an occurrence through Record Type ( |
Holds failure context separately. The definition has no dedicated Error reference field. |
The occurrence link is an FSM custom field marked as a NetSuite parent-record relationship. The occurrence holds the reference to the supporting definition. Created From is a separate reference between definitions, not a native equipment hierarchy or a link to a business parent Case.
A CRM Task's native Case link (supportcase when writing and case in searches) is separate from its recurrence link. Tasks created by Program for a recurring Case are children of that Case and don't automatically become occurrences in its Case series or receive their own Task recurrence. See FSM Recurring Cases with Program Tasks.
FSM Fields
The following tables cover all stored FSM custom fields on the definition. The field labels are the English labels supplied with FSM. Labels can differ by account.
Pattern and Range
The following table describes fields that define the recurrence pattern and range.
|
Field |
Field ID |
Meaning and Important Values |
|---|---|---|
|
Type |
|
Calendar pattern: Daily ( |
|
Interval |
|
Repetition interval in the unit selected by Type: days, weeks, months, or years. Separate from the account's generation horizon. |
|
Month |
|
Month used by a yearly pattern. List values run from January ( |
|
Month Pattern |
|
Monthly or yearly selection: Day ( |
|
Day of Month |
|
Calendar day used with Month Pattern Day. |
|
Day of Week |
|
Multiple weekday selections for weekly patterns or applicable monthly/yearly patterns. Values run from Sunday ( |
|
Start Date |
|
Starting date of the current definition, initially taken from the primary occurrence's Field Service Start Date. A forward segment or primary promotion can change it. |
|
End Type |
|
None ( |
|
End Date |
|
Date boundary when End Type is By. Forward changes and Delete Future Instances can also maintain this boundary. |
|
End Count |
|
Maximum occurrence count when End Type is After, including the primary occurrence. |
The relevant lists are customlist_nx_recurrence_type, customlist_nx_month, customlist_nx_recurrence_month_pattern, customlist_nx_recurrence_day_of_week, and customlist_nx_recurrence_end_type.
Identity and Relationships with Saved Values
The following table describes the recurrence record's identity, relationships, and saved values.
|
Field |
Field ID |
Meaning and Important Values |
|---|---|---|
|
Primary Type |
|
Stored record-type name for occurrences: |
|
Created From |
|
Reference to the source definition of a forward segment. The supplied field clears this reference if that source definition is deleted. |
|
Idempotency Key |
|
Technical key used to recognize a previously applied request to create or update a definition. A matching key is not proof that all occurrences were generated or updated. |
|
Field Values |
|
Saved values used to create later occurrences. Stored as encoded JSON through FSM's |
|
Deleted Instances |
|
Comma-separated occurrence indexes recorded as deleted and excluded from recreation. These are indexes, not Case or Task internal IDs. Splits and primary promotion can adjust them. |
The definition's Idempotency Key is separate from native External ID used by standard FSM Mobile record creation. Field Service Recurrence Data on an occurrence is also separate from Field Values on the definition.
Processing Fields and Indicators
The following table describes recurrence processing fields and indicators.
|
Field |
Field ID |
Meaning |
Significant Update Sources |
|---|---|---|---|
|
Create/Update Instances |
|
Requests maintenance of the definition. The box doesn't indicate whether a script is running, and a cleared box doesn't indicate that the series has stopped. |
Occurrence save handling and Delete Future Instances can set it. Background assessment clears the box when it identifies no further actions for the definition. |
|
Last Create Date |
|
Maintenance timestamp. It doesn't prove an occurrence was created at that time. |
FSM writes it when updating the maintenance flag. Unfinished definitions with an empty timestamp or one from an earlier day can qualify for periodic maintenance. |
|
Completed |
|
Generation-completion result for a finite definition. FSM subtracts recorded deletions from the expected occurrence count and compares the result with the linked occurrence count. Open-ended definitions remain incomplete. |
Background assessment maintains it. A date-ended definition whose Start Date is after End Date is also treated as ended. |
|
For Deletion |
|
Marks the definition for deletion. It is not proof that the definition or its occurrences have been removed. |
Delete Future Instances on the primary, or deletion of a primary with no remaining occurrence, can set it. Recurrence processing performs removal. |
Completed doesn't mean the Cases or Tasks have been completed, that Program-created child Tasks exist, or that every saved field matches the requested result. The calculation compares counts. It doesn't validate each occurrence's identity and service outcome.
FSM maps the standard Inactive field (isinactive), but recurrence maintenance doesn't use this field as a stop condition. Don't treat inactivity or a cleared request flag as a supported pause control. The Administration and Retirement explains the limits of series retirement.
FSM maintains these processing fields. A pending request flag doesn't indicate that a script execution is running. A completed execution doesn't confirm that every intended record was processed. Associated failures are recorded separately. For information about processing eligibility and the effects of blocking errors, see the Processing Model and Lifecycle. For execution and monitoring information, see FSM Script Reference.
Data Held on Occurrences
These fields belong to the linked Case or CRM Task, not to the definition.
|
Occurrence Field |
Field ID |
Meaning |
|---|---|---|
|
Field Service Recurrence |
|
Reference to the current definition. |
|
Field Service Instance Index |
|
Position within the current segment. |
|
Field Service Exempt Sync |
|
IDs of fields excluded from subsequent series updates after individual changes. |
|
Field Service Recurrence Updates |
|
Comma-separated list of IDs for fields that changed, used to propagate those changes. The list doesn't contain changed values in JSON. |
|
Field Service Recurrence Data |
|
Serialized JSON for recurrence requests and internal processing markers. Separate from both the definition and its saved Field Values. |
|
Field Service Propagate Changes |
|
Pending forward association/index work. |
|
Field Service Propagate Complete |
|
Temporary marker for propagation of occurrence associations and indexes. FSM later clears it. It is not permanent generation completion. |
|
Field Service Delete Future Instances |
|
Supporting occurrence field. The Delete Future Instances button changes the definition's end conditions and deletion data. This box doesn't confirm that deletion is complete. |
|
Field Service Copy with Parent |
|
Reserved field. Copy with Parent is not an implemented recurrence action. |
Creation and Update Sources
The following table lists the sources that create or update recurrence definitions.
|
Source |
Effect on the Definition |
|---|---|
|
Case or CRM Task recurrence controls |
Submit pattern data on the occurrence. Background handling creates or updates the supporting definition and its association. |
|
Forward series changes |
Can create a definition linked through Created From and end the preceding definition. |
|
Primary copied-field changes |
Supply changed values for the definition's saved Field Values through recurrence processing. |
|
Copied-field configuration changes |
Subsequent assessment can add newly included primary values or remove values no longer included. |
|
Normal occurrence deletion |
Records deleted indexes or adjusts the primary, start date, and index bookkeeping. |
|
Delete Future Instances |
Updates End Type, End Date, and the maintenance request, and on the primary, also marks the definition For Deletion. |
|
Recurrence background processing |
Maintains saved values, occurrence changes, generation completion, maintenance timestamp, and deletion. |
Definition processing uses Field Service Scheduled : Recurrence (customscript_nx_scheduled, deployment customdeploy_nx_recurrence). Record handling for the recurrence definition uses Field Service User Event (customscript_nx_userevent, deployment customdeploy_nx_recurrence_userevent). To change a series, use the supported actions on its occurrences. Direct edits of hidden fields don't replace these actions.
Used by FSM Features
The following table identifies the FSM feature that uses this record.
|
Feature |
How the Record Is Used |
|---|---|
|
Defines repeating same-type service occurrences and holds the data used for their maintenance. |
FSM Program is a separate producer of service work. For recurring Cases with Program Tasks, the recurrence definition controls the Case series. Program rules control the creation of child Tasks, which are not stored on the definition.
Record Constraints and Data Requirements
None of the definition's 19 custom fields is required. The three custom checkbox fields are cleared by default, with no initial selections or values declared for the other custom fields. These field settings don't establish that recurrence can use an empty or incomplete definition.
The Case and Task controls require inputs for the selected pattern and end condition, including a start date, interval, and appropriate day selection. A dated end must follow the start date. These recurrence-control validation rules are separate from the required-field settings on a Case or Task form. For information about detailed validation rules and calendar limits, see Pattern and Start-Date Changes.
Copied references must remain valid when later records are saved. Pattern data, saved copied values, occurrence exemptions, and business status are distinct information. No single flag establishes that all stages of the series have succeeded.
Additional Information
- FSM Case and Task Recurrence
- FSM Recurrence Changes and Forward Propagation
-
Investigating FSM Recurrence Errors and Partial Results