---
schema_version: "1"
id: fb22a03d79a6493548b334297906dce192d125f81af99b23136ad854b46edbfc
title: Maintenance Plan Fields
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/service/264-0-0/fs_maintenance_fields.md
canonical_url: https://help.salesforce.com/s/articleView?id=service.fs_maintenance_fields.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 24870b858f813bde19ef06c20137d62ab72dccc8da1d416a7078c681ebc543e0
description: Maintenance plans, maintenance assets, and maintenance work rules have the following fields. Sometimes you can't see or edit certain fields because of your page layout and field-level security settings.
products:
  - Field Service
release: "264"
---
# Maintenance Plan Fields

Maintenance plans, maintenance assets, and maintenance work rules have the following fields. Sometimes you can't see or edit certain fields because of your page layout and field-level security settings.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: both Salesforce Classic (not available in all orgs) and Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">The Agentforce Field Service and Operations core features, managed package, and mobile app are available in <strong>Enterprise</strong>, <strong>Unlimited</strong>, and <strong>Developer</strong> Editions.</td></tr></tbody></table>

## Maintenance Plan

Maintenance plans let you define how often maintenance visits occur and mass-generate work orders for future visits. Maintenance plans can be associated with accounts, work types, assets (creating records known as maintenance assets), locations, and service contracts.

The Frequency and Frequency Type fields began their phased retirement in Summer ‘22. To prepare for this retirement and take advantage of updated features, migrate your frequency and frequency type data to maintenance work rules. The retired frequency fields impact work order generation. Complete migration as soon as possible to avoid being impacted by this change.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d49743e78">Field Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d49743e81">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Account</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">The associated account, which typically represents the customer receiving the
              maintenance service.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Auto-generate work orders</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">Turns on auto-generation of work order batches for a maintenance plan and prohibits
              the manual generation of work orders via the Generate Work Orders action. If this option is
              selected, a new batch of work orders is generated for the maintenance plan on the next
              suggested maintenance date* listed on each maintenance asset, or on the maintenance plan if
              no assets are included. If a Generation Horizon is specified, the date of generation is that
              many days earlier.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Contact</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">The associated contact.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Date of the first work order in the next batch</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">
              <p>The suggested date of service for the first work order, not the date the work order is
                created. This date corresponds to the work order’s Suggested Maintenance Date. You can use
                this field to enforce a delay before the first maintenance visit, for example, where you
                want monthly maintenance to begin one year after the purchase date. </p>
              <p>For example, if you
                want the first maintenance visit to take place on May 1, enter May 1. When you generate
                work orders, the earliest work order lists a Suggested Maintenance Date of May 1. And the
                dates on the later work orders are based on the Generation Timeframe and Frequency
                settings.</p>
              <div class="slds-box slds-box_x-small slds-theme_shade slds-m-top_medium slds-m-bottom_medium">
                <div class="slds-media slds-media_responsive">
                  <div class="slds-media__figure"><span class="slds-icon_container slds-icon_container_circle slds-icon-note-note"><img style="margin-bottom:0;" src="https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-service-support_field_service-264-0-0-production-enus/3f7dceb9-dd70-454a-b49e-bbb4526a158d/images/icon_note.png" alt="Note"></span></div>
                  <div class="slds-media__body" style="padding-top:.5rem;padding-bottom:.5rem;"><span class="slds-text-title_caps">Note</span> Maintenance assets also list a date of the first work
                    order in the next batch, which is initially inherited from the maintenance plan. If the
                    plan has maintenance assets, this date auto-updates on the maintenance assets after each
                    batch is generated. However, it doesn’t update on the maintenance plan itself because batch
                    timing is calculated at the maintenance asset level. If the plan doesn’t have maintenance
                    assets, this date auto-updates on the maintenance plan after each batch is
                    generated.</div>
                </div>
              </div>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Description</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">A brief description of the plan.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">End Date</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">The last day the maintenance plan is valid.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Frequency</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">(Optional) Amount of time between the plan’s work orders. The unit is specified in the
              Frequency Type field.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Frequency Type</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">
              <p>(Optional) The unit of frequency:</p>
              <ul>
                <li>Days</li>
                <li>Weeks</li>
                <li>Months</li>
                <li>Years</li>
              </ul>
              <p style="margin-bottom:0;">For example, to perform monthly maintenance visits you need a work order for each
                visit, so enter 1 in Frequency and select Months.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Generate new batch upon completion</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">
              <p>If this option is selected, a new batch of work orders isn’t generated until the last
                work order generated from the maintenance plan is completed. A work order is considered
                completed when its status falls into one of the following status categories: Cannot
                Complete, Canceled, Completed, or Closed.</p>
              <p style="margin-bottom:0;">If a maintenance plan covers multiple assets,
                work orders are generated per asset. If a maintenance asset’s final work order is completed
                late, its work order generation is delayed, which causes a staggered generation schedule
                between maintenance assets.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Generation Horizon (Days)</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">The next batch of work orders is generated this number of days before the maintenance
              plan’s Date of the first work order in the next batch. A generation horizon of 5 means that
              the new batch of work orders is generated 5 days before the maintenance asset’s or
              maintenance plan’s next suggested maintenance date*. If there are no assets, the new batch
              is generated on the next suggested maintenance date*. The generation horizon must be a whole
              number.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Generation Timeframe</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">(Required) How far in advance work orders are generated in each batch. The unit is
              specified in the Generation Timeframe Type field.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Generation Timeframe Type</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">
              <p>(Required) The generation timeframe unit:</p>
              <ul>
                <li>Days</li>
                <li>Weeks</li>
                <li>Months</li>
                <li>Years</li>
              </ul>
              <p style="margin-bottom:0;">For example, to generate 3 months’ worth of work orders at a time, enter 3 in
                Generation Timeframe and select Months.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Location</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">Where the service takes place.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Maintenance Plan Number</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">(Read Only) An auto-assigned number that identifies the maintenance plan.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Maintenance Plan Title</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">A name for the maintenance plan.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Maintenance Window End (Days)</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">Days after the suggested service date on the work order that its service appointment
              can be scheduled.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Maintenance Window Start (Days)</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">
              <p>Days before the suggested service date on the work order that its service appointment
                can be scheduled.</p>
              <p style="margin-bottom:0;">The maintenance window start and end fields affect the Earliest Start
                Permitted and Due Date fields on the maintenance plan’s work orders’ service appointments.
                For example, if you enter 3 for both the maintenance window start and end, the Earliest
                Start Permitted and the Due Date is 3 days before and 3 days after the Suggested
                Maintenance Date on each work order. If the maintenance window fields are left blank, the
                service appointment date fields list their work order’s suggested maintenance
                date.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Owner</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">Maintenance plan owner.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Service Appointment Generation Method</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">How service appointments are generated when more than one asset is associated with the
              maintenance plan and work order generation method is <strong class="uicontrol">One work order line item per
                asset</strong>. Choices are one service appointment for the parent work order or one
              service appointment for each work order line item.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Service Contract</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">The service contract associated with the maintenance plan. If any child maintenance
              asset is associated with a contract line item from the service contract, the service
              contract can’t be updated.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Start Date</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">The first day the maintenance plan is valid.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Work Order Generation Method</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">How work orders are generated when more than one asset is associated with the
              maintenance plan. Choices are one work order for each asset or one parent work order and
              work order line items for each asset.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Work Order Generation Status</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">
              <p>(Read Only) Indicates whether work order generation is:</p>
              <ul>
                <li>needs review</li>
                <li>no work order generated</li>
                <li>completed</li>
                <li>unsuccessful</li>
              </ul>
              <p style="margin-bottom:0;">You can generate only one batch at a time.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e78 ">Work Type</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e81 ">The associated work type. Work orders generated from the maintenance plan inherit its
              work type’s duration, required skills and products, and linked articles. Maintenance assets
              covered by the plan use the same work type, though you can update them to use a different
              one.</td>

          </tr>
        </tbody>
      </table>

## Maintenance Asset

A maintenance asset is a part or product covered by the maintenance plan. The Assets related list on the maintenance plan lists all covered assets. An asset can be covered by multiple maintenance plans.

 
| Field Name | Description |
| --- | --- |
| Asset | Asset associated with the maintenance plan. |
| Contract Line Item | Contract line item associated with the maintenance asset. This field can only list a contract line item that is associated with the asset, and whose parent service contract is associated with the parent maintenance plan. |
| Date of the first work order in the next batch | The suggested date of service for the first work order, not the date the work order is created. This date corresponds to the work order’s Suggested Maintenance Date. If left blank when the maintenance asset is created, this field inherits its initial value from the related maintenance plan. It auto-updates after each batch is generated. |
| Maintenance Asset Number | (Read Only) An auto-assigned number that identifies the maintenance asset. |
| Maintenance Plan | Maintenance plan associated with the maintenance asset. |
| Work Type | Work type associated with the maintenance asset. Work orders generated from the maintenance plan inherit its work type’s duration, required skills and products, and linked articles. Maintenance assets covered by the plan use the same work type, though you can update them to use a different one. |

## Maintenance Work Rule

A maintenance work rule is associated with a maintenance plan or maintenance asset and defines the frequency at which a maintenance task is performed on the asset. An asset can have multiple maintenance work rules.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-service-support_field_service-264-0-0-production-enus/3f7dceb9-dd70-454a-b49e-bbb4526a158d/images/icon_note.png)

Note If you encounter problems with text wrapping in Recurrence Pattern, update your Density Setting from Compact view to Comfy view. [Tell me more](https://developer.salesforce.com/blogs/2018/08/new-density-settings-for-the-lightning-experience-ui-in-winter-19).

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d49743e471">Field Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d49743e474">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Date of the first work order in the next batch</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The suggested date of service for the first work order, not the date the work order is
              created. This date corresponds to the work order’s Suggested Maintenance Date. If left blank
              when the maintenance rule is created, this field inherits its initial value from the related
              maintenance asset. It auto-updates after each batch is generated.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Maintenance Asset</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The asset associated with the maintenance plan.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Maintenance Work Rule Name</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">(Read Only) A name assigned to this maintenance work rule in the format
              MWR-nnnn.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Maintenance Plan</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">Maintenance plan associated with the maintenance asset.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Maintenance Work Rule Title</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The title of this work order rule.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Maintenance Work Rule Type</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">
              <p>The type of maintenance work rule:</p>
              <ul>
                <li>Calendar-based (default): uses a recurrence pattern</li>
                <li>Criteria-based: uses a recordset filter criteria that defines conditions</li>
              </ul>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Generate on a Floating Schedule</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">
              <p>Generates work orders based on a floating, not fixed, cadence. </p>
              <div class="slds-box slds-box_x-small slds-theme_shade slds-m-top_medium slds-m-bottom_medium">
                <div class="slds-media slds-media_responsive">
                  <div class="slds-media__figure"><span class="slds-icon_container slds-icon_container_circle slds-icon-note-note"><img style="margin-bottom:0;" src="https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-service-support_field_service-264-0-0-production-enus/3f7dceb9-dd70-454a-b49e-bbb4526a158d/images/icon_note.png" alt="Note"></span></div>
                  <div class="slds-media__body" style="padding-top:.5rem;padding-bottom:.5rem;"><span class="slds-text-title_caps">Note</span> To display this
                    field, from Setup enter Field Service Settings and select <strong class="uicontrol">Update the work order
                      generation based on the completion date of the previous work
                      order.</strong></div>
                </div>
              </div>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Owner</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The maintenance work rule owner.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Parent Maintenance Plan Record</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The maintenance plan this work rule applies to.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Parent Maintenance Record</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The maintenance asset this work rule applies to.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Recordset Filter Criteria Name</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The recordset filter criteria associated with this maintenance work rule.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Recurrence Pattern</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">For calendar-based rules, how frequently the event occurs during the selected time
              period. Recurrence pattern is defined on Maintenance Work Rules.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Sort Order</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">The sort order that applies to this work order rule.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e471 ">Work Type</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d49743e474 ">Work type associated with the maintenance work rule. Work orders generated from the
              maintenance work rule inherit its work type’s duration, required skills and products, and
              linked articles.</td>

          </tr>
        </tbody>
      </table>

\* The field label for the next suggested maintenance date on maintenance plans and maintenance assets is Date of the first work order in the next batch.

#### See Also

- [Set Up Field Service Maintenance Plans](https://help.salesforce.com/s/articleView?id=service.fs_create_maintenance.htm&release=264.0.0&type=5 "Create Field Service preventive maintenance plans for assets so your customers never miss a beat. With maintenance plans you define how often maintenance visits occur and generate work orders for future visits.")
- [Guidelines for Generating Work Orders from a Maintenance Plan](https://help.salesforce.com/s/articleView?id=service.fs_generate_work_orders_plan.htm&release=264.0.0&type=5 "Field Service maintenance plans offer a quick way to automate the creation of work orders for periodic maintenance visits. Learn how to generate work orders from a maintenance plan.")