Route Sequence
The Route SequenceRoute sequenceAn ordered list of a resource's appointments for a day, optimized by location so travel between jobs is minimized. grid is the list-view companion to the map. The map plots a route as pins and lines; this grid lays the same stops out as rows, with the numbers the planner actually needs to act on: cumulative travel time, distance per leg, time spent at each stop.
Editing a route on the map alone is fiddly: clicking pins to add, dragging lines to reorder, squinting at the legend to read distances. The grid turns those moves into ordinary table operations. Drag a row to reorder, hit delete to remove, group by column to analyze, and in round-trip mode commit the result back to the planning board in a single click.
How a trip becomes a listโ
The grid and the map stay in lockstep. Select pins on the map and they appear as rows here; reorder rows here and the route on the map recalculates. Stop numbering on the pins themselves is optional and configured globally or per profile.
For instance, this route:

becomes this grid:
Free composition versus round tripsโ
The component runs in one of two modes, and the toolbar shifts accordingly:
- Free composition is the default. The planner picks pins on the map and the grid composes the route from the selection. Useful for ad-hoc trip planning where the goal is to inspect or compare a sequence, not commit it.
- Round trip mode is committed planning. A round trip starts and ends at a resource'sResourceAn entity that can carry out work - a person, vehicle, tool, or room - that you schedule on the planning board. home location and visits the appointmentsAppointmentA task scheduled to a resource for a specific period - the scheduled instance you see on the planning board. already planned for that resource on a given date. The grid enters this mode automatically when a round trip is created from the map, typically by clicking the round-trip pin on a resource for a day.
Only round-trip mode unlocks the actions that write the result back to the planning or call the optimization solver, because both need a specific resource and date as context.
Reading the tripโ
A live summary anchored at the bottom of the grid keeps the trip-wide totals visible no matter how many stops are in view:
- Distance total, in kilometers
- Travel time between stops, rounded to the nearest five minutes
- Work time at the stops, same rounding
- Total is travel + work
The summary refreshes every time the trip changes.
Per row, the grid adds route-specific columns to whatever taskTaskA unit of work that belongs to a job. It appears in the open task list until it is scheduled to a resource. and jobJobA high-level container, comparable to a project, that bundles related tasks together with common information such as customer, billing, and address. columns the planner already configured:
| Column | What it tells you |
|---|---|
| Distance | Distance between the previous stop and this one |
| Total distance | Cumulative distance from the start of the trip up to this stop |
| Travel time | Travel time from the previous stop to this one |
| Total travel time | Cumulative travel time from the start of the trip up to this stop |
| Working time | Time spent at this stop |
| Total duration | Cumulative travel + working time from the start of the trip up to this stop |
These columns are computed in memory as the route changes, not stored in the database. They behave like any other column: hide them, reorder them, save them as part of the layout.
Running totals on free decimalsโ
Any free decimal field among the task and job columns gets a paired Running Total column that adds the bound value into a per-row cumulative, the way a spreadsheet would. Same in-memory pattern as the route columns: recalculated as waypoints move, saveable as part of the layout.

Editing the tripโ
Reordering is a drag. Select one or more rows (CTRL to multi-select) and drop them at the position you want. The route on the map and the totals at the bottom recalculate immediately.

When multi-selecting, the order of selection decides the drop order:

The map reflects the new order:

Remove a waypoint with the delete button or the Delete key. CTRL-select multiple rows and delete clears them all. When a removed waypoint belongs to a task container, its sibling tasks come out too, keeping the bundle consistent.
Committing and optimizingโ
In round-trip mode, two actions in the toolbar bridge between the grid and the live planning:
- Update planning writes the current order back to the planning board as the resource's planning for that date. The order on screen becomes the order on the schedule.
- Optimize route hands the trip to the routing solver. The solver returns a new order that minimizes travel time and distance; the grid and map update in place. The action is purely a re-ordering of the existing stops, never an add or remove, and it does not touch the planning until Update planning commits it. Available when the tenant has the Advanced Map add-on and route optimization is enabled.
Both actions require every appointment in the trip to be enabled and unlocked. Locked or disabled appointments would otherwise be moved silently, which is exactly the kind of foot-gun the requirement is there to prevent.
Two more actions are always available:
- Action URLs opens action URIs for the current selection. Only enabled when every stop belongs to the same source app.
- Detach route clears the active route and exits round-trip mode. Use it to start over with a fresh selection.
Side actionsโ
When a stop is a project task, its context menu carries an Open project item that loads the project into the Gantt chart. Same shortcut as in the open and planned tasks grids.
Referenceโ
The grid is stateful, just like the other grids: column selection, order, and totals carry into the saved layout.
Because rows are drag-by-default for reordering, copying cell text needs an explicit switch. The Toggle drag mode button on the toolbar flips between drag-to-reorder and ordinary text-selection; see Copy data for the broader pattern.