Dynamic Resource Scheduler
Whats New!
User Experience Changes
Security and Authentication
Modules and Utilities
Cyclical Scheduling - Configuration Interface
Cyclical Scheduling - Now Bulk Scheduling
Resource Quotas Improvements - Percentages
Architecture and Scheduling
Configuration
User Guides and Help
Get to Know Dynamic Resource Scheduler
How Does Dynamic Resource Scheduling Work
Speaking the Language of Scheduling
Navigating Dynamic Resource Scheduler
How your Data Links Together
Managing your Organisation
Viewing your Data
Your Customer Data
Your Service Orders
Your Jobs
Your Workers and Resources
Manage Your Tasks
Actioning your Jobs and Tasks
Job Templates
Find A Jobs Possible Workers
Locking Your Jobs
Create a Follow On Task
User Queues and Organising Your Tasks
Schedule and Organise
How to Optimise Your Scheduling
How to Schedule Manually
Scheduling Mutliple Jobs at Once
Reassign and Reschedule your Tasks
Managing Your Time and Durations
Managing your Comments and Contacts
Using Bookmarks to Drive Efficiency
Managing Your Job Status
Visualising Your Planning
Workers and Resources
Advanced Data Management
Creating Unavailability in your Workforce
Adding an Unavailability to an Individual Worker
Creating Unavailabilities for Multiple Days or Workers
Maps And Journey
Using Maps to Visualise Your Data
Using Maps With Your Data
Learn about our Closest Function
Your Journeys
Meetings and Non-Productive Planning
Administer Your Scheduler
Managing Your Organisations and Agencies
Managing Your Custom Data
Managing your Contracts
Customising Your Experience
Managing Depots and Starting Locations
Managing Diary Bookmarks
Managing your External Chart Views
KPI Settings
Managing Your Priorities
Learn about Sectors
Managing Your Follow On Templates
Get To Know Your Working Time Calendar
Managing your SOR Templates
Managing your Job Templates
Managing Your Vocabulary
Managing Your Bookmarks
Manage Your Customer Templates
Get to Know Import and Export
Managing Your Tenant Code Rules
Managing your Order Templates
Managing Your Unavailability Reasons
Get To Know Your Working Time Calendars
Managing your Worker Templates
Releases and Readiness
DRS 6, DRS 5.7 and Job Manager
User Guides and Help
Get to Know DRS
Dynamic Scheduling - How does it work
Navigating DRS
Vocabulary and Concepts
Customers
Orders
Jobs
Scheduling Jobs
Job Functions
Workers
Views
Object Inheritance
Agencies
DRS Modules
Scenario Based Planning
Managing your SMS Service
5.7 Documentation
Technical Documentation
Release Notes
DRS 6.1 Release Notes
DRS 6.1.22 - February 20, 2026
DRS 6.1.21 - September 10, 2025
DRS 6.1.20 - April 20th, 2025
DRS 6.1.19 - 11th April, 2025
DRS 6.1.18 - 13 February 2025
DRS 6.1.17 - 20th December 2024
DRS 6.1.16 - November 8th, 2024
DRS 6.1.15 - October 10th, 2024
DRS 6.1.14 - 6th September 2024
DRS 6.1.13 - 9th August 2024
DRS 6.1.12 Release Notes
DRS 6.1.11 Release Notes
DRS 6.1.10 Release Notes
DRS 6.1.9 Release Notes
DRS 6.1.8 Release Notes
DRS 6.1.7 Release Notes
DRS 6.1.6 Release Notes
DRS 6.1.5 Release Notes
DRS 6.1.4 Release Notes
DRS 6.1.3 Release Notes
DRS 6.1.2 Release Notes
DRS 6.1.1 Release Notes
DRS 6.1.0 Release Notes
DRS 6.0 Release Notes
DRS 6.0.0.0 Release Notes
DRS 6.0.0.1 Release Notes
DRS 6.0.0.2 Release Notes
DRS 6.0.0.3 Release Notes
DRS 6.0.0.4 Release Notes
DRS 6.0.0.6 Release Notes
DRS 6.0.1.0 Release Notes
DRS 6.0.1.1 Release Notes
DRS 6.0.1.2 Release Notes
DRS 6.0.1.3 Release Notes
DRS 6.0.1.4 Release Notes
DRS 6.0.1.5 Release Notes
Kirona Housing
Job Manager 9
Job Manager 9.3.0 - October 2024
Job Manager 9.1.0 - December 2022
Job Manager 9.2.0 - November 2023
Release Notes Disclaimer
Administering your Field Service Products
Supported Versions Policies
Contents
- All categories
- Dynamic Resource Scheduler
- Whats New!
- Modules and Utilities
- Cyclical Scheduling - Now Bulk Scheduling
Cyclical Scheduling - Now Bulk Scheduling
Updated
by Andrew Dotto
With the release of Dynamic Resource Scheduler, Cyclical Scheduling has been significantly enhanced to support all of your Bulk Scheduling needs.
Bulk Scheduling can now run against any job list you define. Using the power of Scheduled Services, user-defined datasets now drive your scheduling configuration, allowing you to control which jobs form part of your scheduling backlog. This introduces greater flexibility while retaining the capabilities of the original cyclical scheduling functionality.
Alongside this enhancement, two new scheduling operations have been introduced.
Cyclical Scheduling - Why it Works
The Cyclical Module allows you to schedule large quantities of jobs using configurable scheduling parameters. These parameters can be tailored to support the specific timing requirements of compliance, servicing, or any other type of large scale work that you need to organise for your resource pool.
Previous versions of this function would typically take tasks raised in bulk from a back-office system, identifies them though fixed data points, and then uses a combination of sorting and line-of-site scheduling, to efficiently fill your resource diaries.
This approach produces structured and efficient routes while remaining lightweight and fast. By avoiding the full dynamic optimisation engine, large volumes of cyclical work can be scheduled quickly and predictably.
Introducing Two New Scheduling Modes!
The new Bulk Scheduling function introduces two scheduling modes.
Greedy Mode works similarly to the previous implementation, using sorting and line-of-sight scheduling to place work quickly and efficiently.
Optimised Mode uses the power of the optimisation solver to generate schedules aligned with the standard dynamic scheduling experience.
Greedy Mode
Greedy Mode works similar to the original Cyclical Scheduling you have previously used. The process is simple, defined and efficient.
- Load unplanned jobs from DB via grid definition or service order query
- Sort jobs by configured sequence (postCode, targetDate, priority, template, distance)
- Optional pre-run: if possible, match jobs to existing scheduled jobs at same location
- For each job: set planning period, call DSS ScheduleJob command
- AM/PM cascade: up to 4 passes per job (AM → PM → allDay → nextDay) to determine best fit within the schedule
- Track diary fill % and maxJobs per worker in-memory to ensure scheduling rules are met
- Post-schedule: create Unavailabilities, remove locks, commit batch and resources.
Optimized Mode
Optimised mode is our new scheduling function for bulk scheduling tasks. Still focusing on your configuration requirements, jobs are no longer sorted via line of sight or proximity, but passed, sorted and ordered, in bulk to our optimising Solver. This scheduling will take longer, but will provide an optimised result based on your configuration and our adaptative travel time matrix.
- Load unplanned jobs from DB via grid definition or service order query
- Update planning periods in DB for all the jobs selected within the batch
- Build a scheduling queue for the Solver using scheduling criteria and restrictions
- Manage daily Unavailabilities within the Solver to manage your defined AM/PM configurations
- Manage resource availability with limitations, quotas and job limits
- Schedule jobs using Solver Optimisation within ordered batches
- Complete batch schedule and commit to resources.
Key Differences
Key Differences | ||
Greedy | Optimized | |
AM/PM enforcement | Managed though manipluating the planning period through customer configuration | Solver Determined based on Unavailabilities and Slot rules |
How does it fill the Diary? | An in-memory tracker resolves conflicts and availability per diary, or configured scheduling resource | The Dynamic Resource Scheduler Solver uses Scheduling Quotas and current loading to determine the best scheduling solution |
Max jobs/worker/day | An in-memory tracker resolves conflicts and Job Loading per diary | The Dynamic Resource Scheduler Solver uses Scheduling Quotas and current loading and configurations to determine the best scheduling solution |
Travel optimization | Jobs are sorted and a custom heuristic algorithm is used to determine optimal job scheduling and diary fit | Our Dynamic Resource Scheduler Solver is engaged to ensure that the most optimal route is applied at each scheduling request |
Scalability | Slow for large batches, but does not require large scale Solver interactions, providing for scheduling with limited solver performance impact. | Faster for large batches, but requires high volume Solver calculations which may slightly impact solver performance. |