A versioned, named ordering of a Visit Route's stops - the source of record behind the per-visit sequence snapshots (Visit plannedSequence/optimizedSequence/mostlyFollowedSequence). Every optimization run or history refresh appends a new header plus RouteSequenceEntry lines and flips isCurrent within its (route, type, resource) family, so runs stay comparable and auditable. resourceId scopes a salesperson-specific variant (their personally followed order on the beat); null means route-generic. The planner copies the current sequences onto a plan's visits at creation, and a background maintenance job keeps them fresh as visit history accrues.
Fields
| Field | Label | Type | Required | What it does |
Algorithm | Algorithm | MultiLineText | | Producer of the run - for example NearestNeighbour for the free geo pass, a routing-provider name for paid road-network runs, History for mostly-followed refreshes, Manual for hand-built orders. |
ComputedDateTime | Computed On | Date | | |
CreatedById | Created By | Lookup → UserAccount | Yes | |
EstDurationMins | Est. Duration (min) | Number | | |
Id | Id | Guid | Yes | |
IsCurrent | Is Current | Boolean | | Marks the active run within its (route, type, resource) family. Runs are append-only: a new run or the Activate action flips this flag rather than editing old rows, so the full history stays auditable. |
ModifiedById | Modified By | Lookup → UserAccount | Yes | |
Name | Name | Text | Yes | |
OwnerId | Owner | Lookup → UserAccount | Yes | |
RecordTypeId | Record Type | Guid, hidden | | |
ResourceId | Salesperson | Lookup → Resource | | Scopes a salesperson-specific run (their personal mostly-followed order on the beat); null = route-generic. When the planner stamps visits, a current run matching the plan's assignee wins over the route-generic one. |
SequenceType | Sequence Type | PickList | | Which ordering family the run belongs to: Planned, Optimized, MostlyFollowed or Custom. The planner copies the current Optimized and MostlyFollowed runs onto a plan's visits at creation. Values: Planned, Optimized, Mostly Followed, Custom. |
StopsResequenced | Stops Resequenced | Number | | How many stops this ordering moves off their authored (planned) position - a quick signal of how different the run is from the beat as drawn. |
TotalDistanceKm | Total Distance (km) | Number | | |
VisitRouteId | Visit Route | Lookup → VisitRoute | | |
Actions
| Action | Label | Type | What it does |
ActivateRouteSequence | Activate | ServerAction (ActivateRouteSequence) | Makes this run the current one within its (route, type, resource) family by flipping isCurrent flags only - runs are append-only and no ordering data changes. Future plans of the route are cut with this ordering; existing plans keep theirs unless ApplySequenceToPlan is used. |
ActivateRouteSequenceRow | Activate | ServerAction (ActivateRouteSequence) | List-row variant of the activate flow: same behavior as ActivateRouteSequence (flips isCurrent within the run's family; append-only history is preserved), exposed on each row of the sequence list. |
Clone | Clone | ServerAction (Clone) | Create a copy of this record |
DeleteHeader | Delete | Delete | DeleteHeader |
DeleteRow | Delete | Delete | DeleteRow |
EditInLine | Edit | EditInline | EditInLine |
EditRow | Edit | Edit | EditRow |
New | New | New | New |