# Scheduling

> Build and update the project schedule in a Gantt with CPM logic, work calendars, baselines and versions, lookaheads, P6 import, and PDF printing.

Source: https://docs.specset.com/docs/scheduling · Section: Scheduling · Last updated: 2026-10-09

Scheduling keeps a critical path method (CPM) schedule inside the project, next to the documents it depends on. Open **Schedule** from the project sidebar for the Gantt, with **Lookahead** and **Versions** beneath it.

Scheduling is currently in beta. Reach out to your account team to request access.

## Bring in a schedule

1. Open the **⋯** menu above the Gantt and choose **Import schedule (.xer, .mpp, .xml)**.
2. Pick a Primavera P6 (.xer) or Microsoft Project (.mpp, .xml) file.
3. Choose how to handle dates:
   - **Keep the file's dates (recommended)** keeps the dates the file shows. Anything Specset's engine can't reproduce is listed on the import version.
   - **Recalculate from logic** re-derives the dates from the relationships and the data date, the way P6 does.
4. Click **Import**.

Calendars, activity calendars, and remaining durations come in with the file, and each import is saved as a version. Importing into an existing schedule matches activities by ID: matched activities are updated, new ones are added, and activities missing from the file are removed. Submittal links on matched activities are kept.

To build a schedule from scratch instead, click **New** to add an activity. Activities sit in WBS groups; choose **+ New group…** in the activity form to add one.

![Import schedule dialog with a P6 or Microsoft Project file picker and the choice to keep the file's dates or recalculate from logic](https://docs.specset.com/images/docs/scheduling/import.png)

## Read the Gantt

The grid lists each activity's ID, name, original duration (**Dur**), remaining duration (**Rem**), start, finish, and total float (**TF**). An **A** after a date marks an actual date. The column settings button adds optional columns: % complete, actual start and finish, calendar, predecessors, and successors.

On the timeline:

- Red bars are on the critical path. Turn the highlight on or off with the critical path button.
- A gray line under a bar is its baseline, so slippage shows at a glance.
- The blue line is the data date, and shaded columns are non-working days.
- Switch between **Day**, **Week**, **Month**, and **Quarter**, or pinch or Ctrl+scroll (⌘+scroll on a Mac) to zoom smoothly. The **Today** button scrolls to today.

The footer counts activities, critical activities, and milestones, and explains each bar style.

![Gantt with activities grouped by WBS, critical activities in red, gray baseline bars under slipped work, and the data date line](https://docs.specset.com/images/docs/scheduling/gantt.png)

## Edit in place

1. Double-click a cell in the grid: name, duration, remaining duration, start, finish, % complete, actual dates, calendar, predecessors, or successors.
2. Type the new value and press **Enter**, or **Esc** to cancel.

The schedule recalculates as soon as you save. Undo any edit with the undo button or ⌘Z / Ctrl+Z.

- **Start** on unstarted work is an earliest start; logic can still push the activity later. On started work, **Start** is the actual start.
- **Finish** on unfinished work is an expected finish. Specset works out the duration needed to meet it, and tells you if the logic won't allow that date. On finished work, **Finish** is the actual finish.
- **Predecessors** and **Successors** take shorthand: activity IDs separated by commas, each with an optional relationship type (FS, SS, FF, or SF) and lag, such as `A2020, A2010 SS+3d`. A plain ID is finish-to-start with no lag.

You can also work on the timeline: drag a bar to move it, drag its end to change the finish, or drag the dot on a bar onto another activity to add a finish-to-start link. For every field, including constraints and the WBS group, select the activity and click **Edit**.

![Gantt grid with the Predecessors cell of an activity open for editing, showing link shorthand](https://docs.specset.com/images/docs/scheduling/edit-cell.png)

## Follow the logic

Click an activity to open its side panel. It shows the activity's dates, duration, float, calendar, and progress, plus its **Predecessors** and **Successors** with each relationship's type and lag, which you can change in place. A red dot marks a driving relationship, and clicking a linked activity jumps to it. On the Gantt, the selected activity's links are highlighted, with non-driving links dashed.

To isolate a chain of work:

1. Select an activity and click the **Trace logic** button.
2. Choose **Predecessors**, **Successors**, or **Predecessors and successors**.
3. Optionally limit the trace to **1 link deep** or **2 links deep**, or to **Driving links only**.

The Gantt narrows to the traced activities. Choose **Stop tracing** to see the whole schedule again.

![Trace logic menu over a Gantt narrowed to one activity's chain of predecessors, with the activity's side panel open](https://docs.specset.com/images/docs/scheduling/trace-logic.png)

## Calendars and progress

Open **⋯ → Calendars…** to manage the schedule's work calendars. Each calendar has a name, a work week, holidays and shutdowns, and make-up days (working days that fall on an otherwise non-working day). The default calendar applies to every activity without its own. Use **Duplicate** to start a new calendar from an existing one, then assign it in an activity's **Calendar** column, for example a seven-day calendar for concrete cure.

Durations, lags, and float count workdays on each activity's own calendar, and a lag counts on its predecessor's calendar.

To status work in progress:

1. Open **⋯ → Set data date…** and choose the progress cutoff. Unstarted work is never scheduled before it.
2. For each activity under way, enter its actual start and update **Rem** with the workdays left. The remaining work is scheduled from the data date.
3. When an activity completes, enter its actual finish.

![Calendars dialog with a Standard and a Seven-day calendar, the Standard work week, and a holiday](https://docs.specset.com/images/docs/scheduling/calendars.png)

## Baselines and versions

Choose **⋯ → Set baseline** to snapshot every activity's current dates with a reason, such as the contract award schedule. Gray baseline bars and variance compare against it until you set a new one.

The **Versions** page lists every snapshot of the schedule, newest first, with its type, data date, author, and **SC Variance**: how far substantial completion has moved from the current baseline.

- Click **New version** to save the current schedule as a monthly snapshot, a TIA (time impact analysis), a recovery schedule, or an ad hoc snapshot.
- Open a version to view its Gantt read-only.
- Use a version's menu to **Set as baseline**, **Restore as current**, or delete it. Restoring tells you first what it would remove.

Imports and changes made by the agent are saved as versions too.

![Versions list with a monthly update marked Current, the contract baseline, and their substantial completion variance](https://docs.specset.com/images/docs/scheduling/versions.png)

## Plan the lookahead

**Lookahead** turns the master schedule into a short-interval field plan.

1. Choose a window of 2, 3, 4, or 6 weeks and its starting Monday, then click **Apply**.
2. Click **Fetch activities** and pick the work to plan. Each unstarted activity can be fetched once.
3. Break the work into subtasks with **Add subtask**, and give each one dates and a crew. Check subtasks off as they're done.

Master activities show as locked gray bars. Subtasks never change the master schedule.

![Three-week lookahead with locked master activities and crewed subtasks, one checked off as done](https://docs.specset.com/images/docs/scheduling/lookahead.png)

## Print and export

Choose **⋯ → Print to PDF…** to print the Gantt as a vector PDF.

1. Pick the paper size and orientation. Tabloid (11 × 17 in) landscape is the default.
2. Choose what to include: the whole schedule, the current view (search, collapsed groups, and trace logic), or critical activities only, and optionally a date range.
3. Choose the columns and timescale, and whether to draw baseline bars, relationship lines, and the critical path.
4. Click **Print**.

To hand the schedule back to another scheduling tool, choose **⋯ → Export (P6 .xer)** or **Export (MS Project .xml)**.

![Print to PDF dialog with paper, include, date range, column, and timescale options](https://docs.specset.com/images/docs/scheduling/print.png)

## Ask the agent

The project agent can read the schedule: the critical path, float, variance against the baseline or an earlier version, and the lookahead. Ask why the completion date moved, or what changed since the last update. When you ask it to, it can also add, update, and link activities, set the data date or baseline, and plan lookahead subtasks. Each change it makes is saved as a version, so you can review or restore what it did.
