> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.kodelabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Preventive Maintenance Schedules

> Building-level scheduling for recurring preventive maintenance in AssetOps

Preventive Maintenance schedules are used to generate recurring work orders focused on routine maintenance activities. They help ensure assets are regularly serviced to optimize performance, extend lifespan, and reduce the risk of unexpected failures.

```mermaid actions={false} theme={null}
---
config:
  theme: neutral
---
flowchart LR
 subgraph s1["Work Order Types"]
        B1["Preventive Maintenance"]
  end
 subgraph s2["Assets"]
        A1["Asset 1"]
        A2["Asset 2"]
        A3["Asset 3"]
  end
    A["AssetOps"] --- B["Schedules"]
    B -- Work Order Type --- B1
    B1 -- scheduled maintenance --- A1 & A2 & A3

     B1:::Sky
     A1:::Rose
     A2:::Rose
     A3:::Rose
    classDef Sky stroke-width:1px, stroke-dasharray:none, stroke:#374D7C, fill:#E2EBFF, color:#374D7C
    classDef Ash stroke-width:1px, stroke-dasharray:none, stroke:#999999, fill:#EEEEEE, color:#000000
    classDef Peach stroke-width:1px, stroke-dasharray:none, stroke:#FBB35A, fill:#FFEFDB, color:#8F632D
    classDef Aqua stroke-width:1px, stroke-dasharray:none, stroke:#46EDC8, fill:#DEFFF8, color:#378E7A
    classDef Rose stroke-width:1px, stroke-dasharray:none, stroke:#FF5978, fill:#FFDFE5, color:#8E2236
    classDef Class_02 fill:#B0E4CC, color:#285A48, stroke:#285A48
```

## Preventive Schedule Configuration

To create a preventive maintenance schedule, follow the steps outlined below.

<Steps>
  <Step title="Enter the building level">
    From the portfolio-level, navigate to the **Buildings** section and select a building.
  </Step>

  <Step title="Navigate to Schedules">
    Navigate to the **Schedules** section in the building-level sidebar.
  </Step>

  <Step title="Create Schedule">
    To create a new schedule click the `+ Create` button.

    Select **Preventive Maintenance** as the work type and click `Continue`.
  </Step>

  <Step title="Configure General Information">
    Configure the required general information fields.

    <Expandable defaultOpen={true} title="Example Configuration">
      | Field       | Example Configuration            |
      | ----------- | -------------------------------- |
      | Title       | `Preventive Schedule - AC Units` |
      | Asset Type  | `AC Unit`                        |
      | Assignee    | `John Doe`                       |
      | Assign Team | `AC Maintenance Team`            |
      | Description | `Check AC Units A-200 and A-201` |
      | Attachments | `img1.png` `process-outline.pdf` |
    </Expandable>
  </Step>

  <Step title="Configure Scheduling Details">
    Configure the required scheduling details.

    <Warning>
      The selected **Schedule Type** dictates the configuration process.
    </Warning>

    <Tabs>
      <Tab title="Type - Just Once">
        <Expandable defaultOpen={true} title="Example Configuration">
          | Field                                                                                                            | Configuration         |
          | ---------------------------------------------------------------------------------------------------------------- | --------------------- |
          | Schedule Type                                                                                                    | `Just Once`           |
          | Start Date & Time                                                                                                | `03/25/2026`, `14:00` |
          | End Date & Time                                                                                                  | `Autofilled`          |
          | <Tooltip tip="Number of days the assignee has to complete the task after it is scheduled.">Due by Days</Tooltip> | `5`                   |
        </Expandable>
      </Tab>

      <Tab title="Type - Recurrent">
        <Info>
          You can define **custom frequencies** for the `Daily`, `Weekdays`, `Weekly`, and `Monthly` options. All other options are fixed presets.
        </Info>

        <Expandable defaultOpen={true} title="Example Configuration">
          | Field                                                                                                            | Configuration                                                                                                                                                                                                                                                                                                               |
          | ---------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
          | Schedule Type                                                                                                    | `Recurrent`                                                                                                                                                                                                                                                                                                                 |
          | Start Date & Time                                                                                                | `03/25/2026`, `14:00`                                                                                                                                                                                                                                                                                                       |
          | End Date & Time                                                                                                  | `03/25/2026`, `15:00`                                                                                                                                                                                                                                                                                                       |
          | <Tooltip tip="Number of days the assignee has to complete the task after it is scheduled.">Due by Days</Tooltip> | `5`                                                                                                                                                                                                                                                                                                                         |
          | Frequency                                                                                                        | <ul><li><code>Daily</code></li><li><code>Weekdays</code></li><li><code>Weekly</code></li><li><code>Biweekly</code></li><li><code>Monthly</code></li><li><code>Bimonthly</code></li><li><code>Quarterly</code></li><li><code>Semi-annually</code></li><li><code>Annually</code></li><li><code>Every 5 Years</code></li></ul> |
        </Expandable>
      </Tab>

      <Tab title="Type - On Demand">
        <Expandable defaultOpen={true} title="Example Configuration">
          | Field                                                                                                            | Configuration       |
          | ---------------------------------------------------------------------------------------------------------------- | ------------------- |
          | Schedule Type                                                                                                    | `On Demand`         |
          | Start Date & Time                                                                                                | `Remains undefined` |
          | End Date & Time                                                                                                  | `Remains undefined` |
          | <Tooltip tip="Number of days the assignee has to complete the task after it is scheduled.">Due by Days</Tooltip> | `5`                 |
        </Expandable>
      </Tab>
    </Tabs>
  </Step>

  <Step title="Assign Assets">
    You can assign assets to a schedule by **type** or by **list**.

    * **Asset Type** – Includes all assets of that type in the schedule automatically.
    * **Asset List** – Allows you to select specific assets from the chosen type.

    Select a method to proceed with assigning assets.
  </Step>

  <Step title="Assign Tasks">
    Assign predefined [task templates](/products/assetops/resources/task-templates) for the schedule.

    You can select one or more task templates based on your schedule needs.
  </Step>

  <Step title="Finalize">
    Lastly, click `Complete` to create the schedule.
  </Step>
</Steps>
