Troubleshoot issues with bookings in Resource Scheduling Optimization

This article helps troubleshoot issues with bookings created by the Resource Scheduling Optimization add-in for Microsoft Dynamics 365 Field Service.

Symptoms

  • Completed, canceled, or other bookings are optimized or removed, although they shouldn't be moved.
  • Past or future bookings that are outside the optimization start and end range are removed.
  • Bookings show in a simulation status.

Resolution

Avoid deletion of bookings

After an optimization runs, Resource Scheduling Optimization can make decisions to create, update, or delete bookings as needed based on objective and constraint settings. Hence, it's expected to find bookings deleted to optimize results throughout the schedule. If you don't want Resource Scheduling Optimization to delete existing bookings, try the following options:

Scheduling method mapping to booking status

Booking status has a Scheduling Method field that dictates how Resource Scheduling Optimization should consider booking records of that status:

  • If the booking status is set to Optimize, Resource Scheduling Optimization moves those bookings around.
  • If the booking status is set to Don't Move, Resource Scheduling Optimization doesn't move or optimize those bookings. Use this option for booking statuses that indicate work is in progress or completed.
  • If the booking status is set to Ignore, Resource Scheduling Optimization doesn't consider that booking record. Use this option for booking statuses that indicate work got canceled.

Block Resource Scheduling Optimization from moving past bookings

  • Set the booking status to Don't Move.
  • Remove the booking from the booking view.
  • Lock the booking to a time or time range in the past.
  • Set a promised date from/to while enabling the time window constraint.

Bookings in simulation status

If an exception or error happens when an optimization schedule is still running, you might see some overlap on the schedule board. Some bookings are created or updated from the latest run, while other bookings from the previous run failed to be deleted due to an issue. To avoid this issue, the optimization process uses transactional bookings in the Simulation status.

During the optimization process, the create, update, and delete operations are visible. All new, updated, and to-be-deleted bookings are simulated. If the optimization run completes successfully, these simulated bookings become real bookings. During the optimization run, simulation status bookings are transparent and move around the schedule board. When the run completes, simulation bookings change to real bookings with a solid color.

If an exception occurs and the optimization request fails, these simulation bookings remain in simulation status for troubleshooting purposes unless you manually delete them. Otherwise, a system job deletes them automatically every two weeks.

You can hide simulation bookings by changing the schedule board settings. Select the gear icon on the top right, and then select the Hide Canceled option.