FSM Project Record

In Field Service Management (FSM), a project provides a wider service context for a customer. Examples include a maintenance contract, warranty period, or other group of related service work. It can identify an asset and bring together cases, tasks, time, and transactions associated with that work.

FSM extends the standard NetSuite project record with Field Service fields. A subproject is a project beneath a parent project. Cases, customer relationship management (CRM) tasks, and project tasks are separate records. The project provides context, and the related records describe service requests and work to perform.

Record Information

The following table identifies the record type, FSM model, and supplied form.

Property

Value

Record type

Standard NetSuite

Record name

Project, also called Job in NetSuite technical references

Record type ID

job for FSM record operations and project searches

FSM model

models/project

Supplied FSM form

Field Service Project (custform_nx_project)

Record identity

Internal ID (internalid). Number / Project ID (entityid) is the user-facing identifier.

The FSM model name project is an alias, not a different NetSuite record type. An Entity search can identify projects with the native type value Job. For native scripting and feature requirements, see Project.

Forms

The supplied Field Service Project form exposes the FSM classification, Customer and Asset links, project dates, Program values, and processing requests. Its definition marks the form as preferred and enables Store Form with Record. Project forms created in the account are separate customizations, with fields, labels, and requirements that can differ.

NetSuite uses form preferences when entering a record. A form stored with a record supplies its layout when that record is viewed or edited. For information about native form selection and storage behavior, see Custom Entry Form Properties.

The supplied FSM form marks the following fields as required:

  • Number (entityid)

  • Custom Form (customform)

  • Parent (parent)

  • Type (custentity_nx_project_type)

  • Start Date (startdate)

Field Service Project Type is labeled Type on this form. The form requires a value, although the field definition doesn't. Customer, Asset, Assets, End Date, and the Program fields are not marked required on that form. NetSuite record validation and particular creation actions can impose additional requirements.

FSM form scripts can add a Contact selector available only during project creation, a read-only Program list, and an Add Subprojects entry list. These controls are separate from stored project fields. Each row in Add Subprojects requires Asset, Project Type, Start Date, and End Date. These row requirements don't make all four fields required on every project.

FSM Mobile uses its configured resources and creation actions. A project's stored NetSuite UI form doesn't determine every FSM Mobile field or validation requirement. A form selected to generate FSM Mobile resource fields is a separate configuration choice. For information about FSM Mobile presentation controls, see FSM Mobile Resource Properties Reference and FSM NetSuite View Configuration.

Record Relationships

Each relationship is held on the record identified in the table. Native NetSuite relationships and supplied FSM custom fields have different purposes.

Related record

Relationship and field ID

Purpose

Customer

Project Field Service Customer (custentity_nx_customer) references one customer. Native Parent (parent) can identify the customer directly.

Keeps the service Customer available when Parent contains another project.

Parent project and subprojects

A child project stores its immediate parent in native Parent (parent). Several child projects can reference the same parent.

Creates the project hierarchy. A subproject remains a job record.

Asset

Project Field Service Asset (custentity_nx_asset) references one Field Service Asset (customrecord_nx_asset). Several projects can reference the same asset.

Supplies the primary equipment or service-location context used by the standard Project model.

Additional Assets

Project Field Service Assets (custentity_nx_assets) stores multiple asset references.

Records a separate selection of assets. It doesn't replace the primary Asset relationship.

Project Type

Project Field Service Project Type (custentity_nx_project_type) references customrecord_nx_project_type.

Supplies the FSM classification used by applicable rules.

Contact

Contacts are attached to the project through native contact relationships. The FSM model reads the primary contact through contactprimary.internalid.

Identifies customer contacts associated with the project, including its primary contact.

Case

Each case stores its project relationship in native Company (company).

Allows several service requests or Program occurrences to belong to one project.

CRM Task

A CRM task can identify the project through native Company (company) and separately identify its case through supportcase when writing, or case in searches.

Associates visits with the wider service context and, where applicable, a case.

Project Task

A project task uses its native project relationship, exposed as Company (company) in the FSM model.

Connects native project-planning work to the project. It is separate from a CRM task.

Transaction

The transaction stores its project relationship in job with Project Management, or in entity without Project Management, through the standard FSM transaction mapping.

Associates sales and financial transactions with the project.

Time Bill

The time bill's native Customer/Project relationship (customer) identifies the project.

Associates recorded time with the project, including time considered for labor-cost posting.

Maintenance or Repair record

The maintenance record stores custrecord_nx_maintenance_project. The repair record stores custrecord_nx_repair_project.

Associates a service record with the project independently of its asset, case, and task links.

Time Zone

Project Field Service Time Zone (custentity_nx_time_zone) references customrecord_nx_time_zone.

Supplies service-time context for related work and Program calculations.

FSM reconciles Field Service Customer with native Parent. When Parent identifies a project, that project supplies the Customer. Selecting an Asset can fill a blank Customer. Changing the Asset can retain an existing permitted Customer or source the Asset's Customer. See FSM Customer and Asset Selection for the form and save-time rules.

The project hierarchy is separate from the asset hierarchy. A project parent relationship doesn't provide the asset's field-inheritance behavior. Similarly, a custom record linked to a project doesn't automatically gain FSM Mobile access, history, reporting, or synchronization. Those capabilities require their own supported definitions.

FSM Fields

The following tables use the supplied English field labels. The FSM form shortens several labels, and an account can rename them without changing their field IDs.

Identity and Classification with Service Context

The following table lists project identification, classification, and service-context fields.

Field

Field ID

Purpose and important values

Name / Project Name (standard)

companyname

Describes the project. FSM automatic naming can replace it when Field Service Project Type is populated.

Number / Project ID (standard)

entityid

User-facing identifier, separate from Internal ID and Project Name. Native automatic numbering and FSM automatic naming are separate mechanisms.

Field Service Project Type

custentity_nx_project_type

FSM classification. The supplied form labels it Type. Selecting native Project Type doesn't populate this field.

Project Type (standard)

jobtype

Native NetSuite project classification. This field is separate from Field Service Project Type (custentity_nx_project_type) and the FSM Project Type record.

Details / Comments (standard)

comments

Project description. Configured Program mappings can carry it to new service records. It is not automatically synchronized to every related case or task.

Field Service Customer

custentity_nx_customer

Service Customer, reconciled with native Parent.

Field Service Asset

custentity_nx_asset

Primary Asset used by the standard Project model.

Field Service Assets

custentity_nx_assets

Additional Asset selections. The supplied field filter restricts choices to Assets whose Parent matches the primary Asset. This multiselect is separate from the standard model's single Asset input. It doesn't establish equivalent sourcing or Program behavior for every selected Asset.

Subsidiary (standard)

subsidiary

Project subsidiary in OneWorld. FSM uses it where the Subsidiaries feature and applicable processing require it.

Currency (standard)

currency

Project currency when Multiple Currencies is enabled and can supply currency context for labor-cost journals.

For generated names and numbering differences between basic projects and Project Management, see FSM Automatic Record Naming. Primary Contact selection and customer-contact attachment are described in FSM Contact Sourcing and Synchronization.

Project Schedule and Business State

The following table describes the project's date, time zone, and business-state fields.

Field

Field ID

Purpose and important values

Start Date (standard)

startdate

Native project start date. Supplies the lower date boundary for Program. Program also uses this date as the pattern's starting date when Program Start Date is blank.

End Date (standard)

enddate

Native project end. Can bound the initial Program schedule. It is separate from completion values on a case or task.

Program Start Date / Field Service Start Date

custentity_nx_start_date

Starting date for the Program pattern. When blank, Program uses the native project Start Date. It is not a technician's actual start timestamp.

Field Service Program Create Until

custentity_nx_program_create_until

Nonnegative integer horizon in days, relative to the time Program is assessed. A positive value supplies a rolling horizon. It is not a stored end date. The field has no supplied value.

Field Service Time Zone

custentity_nx_time_zone

Stored service-time context. Project sourcing can use the Asset, subsidiary, or current user's preference. It is not a live link to the source record.

Status (standard)

entitystatus

Native project business status. The FSM Project model supplies an initial In Progress value (2). Account status definitions and configured classifications determine subsequent interpretation.

Inactive (standard)

isinactive

Native record inactivity, used by the standard Case Project selector. Separate from Program's configured inactive-status classification.

A status labeled Closed doesn't by itself establish that Program classifies the project as inactive or that all related work has completed. Project dates and Program values are planning inputs and don't confirm that cases or tasks have been generated. See FSM Program.

Projects don't use the CRM task's four-field date/time conversion or Reserve Time restoration. See FSM Service Time Zone Sourcing and Synchronization for project sourcing and the differences between record types.

Processing Fields and Indicators

The following table describes the processing fields and indicators.

Field or indicator

Field ID

Meaning and significant update sources

Field Service Update Program

custentity_nx_program_update

Requests assessment of the project's Program for eligible case additions and removals. Project change assessment, applicable case closure processing, or an explicit saved request can set it. Background assessment clears it when no eligible changes remain, including when required inputs or matching rules are absent.

Field Service Update Contacts

custentity_nx_contact_update

Requests attachment of missing matching customer contacts. The field definition starts unchecked. The typed project model supplies the contact-update default on its applicable initialization, type-change, and creation paths. Saving the typed project requests processing. Assessment clears the request when no matching attachments remain, including when there is no Customer.

Field Service Idempotency Key

custentity_nx_idempotency_key

Older custom creation-identity field retained for compatibility and visibility. It is not a Program-complete or labor-posting indicator. Standard FSM Mobile record synchronization uses native External ID instead.

External ID (standard)

externalid

Standard FSM Mobile record synchronization can store technical creation identity here with the fsm_ prefix. This applies to the standard synchronization path, not automatically to every custom creation action.

Project processing banner

No stored project field

Can show assessed Contact or Program work and New Subprojects callbacks. Some entries identify outstanding work. Callbacks can carry execution status. The banner is separate from the business Status field.

A checked request doesn't prove that a script is running. A cleared request or completed execution doesn't establish that every expected record or attachment exists. Check the resulting records and saved relationships to verify the outcome. The relevant feature topics explain selection rules and failure consequences.

Labor-cost posting has no project-level costed flag. Field Service Time Costed (custcol_nx_time_costed) is stored on each processed time bill. It is separate from the journal's approval or ledger-posting state. See FSM Project Labor Cost Posting.

Field Service Error records can identify a project through their Record Type (custrecord_nx_error_record_type) and Record ID (custrecord_nx_error_record_id), with action and deployment context where captured. These references are stored on the error record. There is no supplied project error-link field in this inventory. For error data, see FSM Error Record. For execution monitoring, see FSM Script Reference.

Creation and Update Sources

The following table summarizes how projects are created and updated.

Source

Effect on the record

NetSuite project entry or import

Creates or updates the native project and its FSM fields, subject to the applicable form, record, and script requirements.

Asset New Project button

Opens a Project form with the Asset supplied. The project exists after saving.

Automatic Project creation for a new Asset

Requests a linked project using Item-supplied Project Type and duration, with dates resolved from the new Asset's time context.

Case new-Project selection

Requests background creation of a project, then links the case to it. Creation and the case-link update are separate operations.

Project Add Subprojects

Creates child projects from submitted rows after the parent is saved. Parent, Customer, and the submitted date and Program values provide context for the child projects.

Optional FSM Mobile Add New Task action

Can create a project before its new case and CRM task, or use an existing project. Local entry and successful NetSuite creation are separate stages.

FSM record handling

Maintains automatic naming, Customer/Parent reconciliation, time-zone sourcing, and applicable defaults.

Contact and Program processing

Maintains contact attachments and processing requests. Program creates or removes qualifying related service records.

Applicable Case closure handling

Can request Project Program assessment or close an eligible project and supply its end date under the separate automatic-closing conditions.

Typed projects apply model defaults during initialization and validation. Ordinary non-Boolean defaults fill empty values. Boolean defaults can replace existing values. The model's expense and resource/time-entry preferences depend on the enabled NetSuite project features. These are model defaults, not universal field-definition defaults. See FSM Record Model Configuration (models/project).

Without Project Management, server-side validation of a typed project can populate its address book from the Customer, except during inline editing. Project addresses are separate from the asset's saved service address. The model reference describes the address-search configuration.

Used by FSM Features

The following table describes how FSM features use project records.

Feature

How the Project is used

FSM Related Service Work

Supplies service context and supports project creation, subprojects, and related-record links.

Projects Created in Response to Asset Creation

Creates a dated project associated with a new asset, commonly for warranty context.

FSM Customer and Asset Selection

Uses Customer, Asset, and Parent relationships for sourcing and reconciliation.

FSM Automatic Record Naming

Generates the Name from Project Type, identifier, and Asset.

FSM Contact Sourcing and Synchronization

Attaches contacts and supplies primary-contact context for cases.

FSM Program

Uses type, dates, time zone, and mapped context to calculate and request service cases.

FSM Service Time Zone Sourcing and Synchronization

Sources the project time zone and uses it as a source for related work.

FSM Profitability Reporting

Supplies project context to a report shortcut.

FSM Project Labor Cost Posting

Identifies eligible project time and supplies accounting context for journals.

Record Constraints and Data Requirements

The ten supplied project custom-field definitions are not required and have no supplied selections or entered values. Their two request checkboxes start unchecked. Form requirements, model defaults, and Feature prerequisites are separate. A valid native project is not automatically eligible for every FSM capability.

Native customer-change restrictions depend on the NetSuite project mode and related activity. Basic projects retain their customer after creation. Project Management provides conditional customer-change support. FSM form handling prevents editing the Field Service Customer field when the native Parent field is absent, hidden, or read-only. Don't treat the FSM Customer field as an independent way to reparent a saved project. See Creating a Basic Project Record and Creating a Project Record.

The standard Project model's Parent mapping writes to parent but returns a blank search value. You cannot use this model attribute to retrieve the parent value from search results.

Custom links or additional asset selections don't automatically create related cases, duplicate a Program across equipment, propagate field changes, or enable editing in FSM Mobile. Use the relevant Feature and Configuration definitions for the intended behavior.

Additional Information

Related Topics

General Notices