Menu
No guides match that.

Don't have an account? Already have an account?

Move jobs around the schedule board

Why a drag silently refuses, every rule that blocks a move, and what happens to assignees and ordering when a job changes team.

Updated Aug 24, 2026 Version 1.0 Schedule

The schedule board at Jobs management → Schedule is where the day is assembled: two grids, teams holding jobs, and the order within a team being the running order for the crew.

Refusals are silent — read the highlight

This is the single most important thing to know about the board. No refused drag produces a message, toast or tooltip. The only signal is that the row you are hovering never turns blue, and the card snaps back when you let go.

So when a move “does nothing”, the app is not broken and it is not lagging — one of the rules below refused it, and you were not told which. Watch for the drop highlight before releasing.

What blocks a move

A job cannot be picked up at all when it is a blocked stay, when it is already completed, when its team belongs to a locked group, or when you lack schedule edit permission. Sorting the grid by any column also disables dragging entirely.

Once moving, a drop is refused when:

  • A clean is dropped on a maintenance team, or a maintenance job on a clean team.
  • A team with a service zone is dropped outside that zone.
  • The target belongs to a different locked group than the source.
  • A pinned job is dropped relative to an unpinned one inside a team, or the reverse.
  • Anything is dropped onto the company-level row.
  • A rest slot is moved out of its team, or onto anything other than a job or another rest slot.

The filter trap

With a column filter active on the assigned grid, jobs will not pick up at all — an unusual but at least visible refusal.

With a filter active on the unassigned grid, the behaviour is worse: the card picks up, drags normally, appears to land, and then nothing happens. No error, no revert animation, no explanation. If moves from the unassigned side are vanishing, clear the column filters before assuming anything else.

Assignees travel with the job

Dragging a job to another team keeps the individual assignees it already had. They are not cleared and not swapped for the new team’s people.

The result is a job showing both its carried-over assignees and the new team’s derived cleaners — people who may not work together. After moving a job between teams, check the assignee list rather than assuming it followed the team.

Ordering and pinning

Dropping a job between two others gives it a position midway between them; dropping at either end extends past the last card. Positions are never renumbered, so the gap between two neighbours halves with each insert between the same pair. After a dozen or so inserts in one spot the ordering can stop being reliable — spread work out rather than repeatedly threading jobs into the same gap.

Pinning sends a job to the top of its team and holds it there. Two limits are not stated in the interface: only cleans can be pinned, and only when they already belong to a team. Audit and maintenance jobs have no pin control at all. Dragging a pinned job into the unassigned area quietly unpins it.

When a move fails on the server rather than being refused up front, the board can be left in a mixed state: a failed team move rolls the teams back but leaves the job changes already applied. If the board looks wrong after an Update failed toast, reload before making further changes — otherwise you are dragging against a view that no longer matches the server.

More in Schedule