Additional enhancements


These release notes describe functionality that may not have been released yet. To see when this functionality is planned to release, please review Summary of what’s new. Delivery timelines and projected functionality may change or may not ship (see Microsoft policy).

Here are additional enhancements we've added to Resource Scheduling Optimization (RSO) for the Spring '18 release.

Support for location-agnostic resources

RSO now offers the ability to schedule resources with a start and end location as "location agnostic." This capability also extends to location-agnostic equipment-type resources. A few important notes about this new feature:

  • Location-agnostic requirements can be scheduled to either onsite resources or location-agnostic resources.
  • Onsite requirements can only be scheduled to onsite resources.
  • Onsite resources can work on either onsite bookings or location-agnostic bookings.
  • Location-agnostic resources can only work on location-agnostic bookings.

What-if statistic reports to compare optimization results with different optimization requests

Simulation runs give RSO admins the ability to finely tune optimization settings and parameters. Statistic reports provide the added benefit of allowing RSO admins to more closely evaluate optimization results using data.

To find these statistic reports, navigate to Resource Scheduling > Optimization Requests and expand the charts panel. The system shows the following three statistic charts:

  • Working and Travel Time in Minutes by Optimization
  • Count of Priority Bookings by Optimization
  • Count of Locked Bookings by Optimization

You can keep filtering optimization requests by various conditions with Dynamics 365 entity view filter; simply refresh the chart panel to update results.

Scheduling Optimization Request Details - work and travel time

Scheduling Optimization Request Details - priority

Reset RSO for selected optimization schedules

If your schedule has been running for a long time and seems stuck or blocked, you can use the Reset Resource Scheduling Optimization button to clear the blocked job and reset schedules into a fresh state. Before this update, you could only reset for all optimization schedules. Now, you can:

  • Reset RSO for selected optimization schedules.

    Resetting RSO for selected optimization schedules

  • Reset RSO in the context of the optimization schedule form.

    Resetting RSO in the optimization schedule form

Improved validation logic when modifying optimization scope/goal/schedule

Previously, while making changes against scope/goal/schedule for a published optimization schedule, the schedule status would be changed to Out of Sync. With this update, changing the optimization scope or goal doesn't require a republish of the schedule; instead, you have options to keep the schedule published, or to choose Save and Unpublish to unpublish the schedule.

New Confirm Change interaction

If there are any optimization requests still running while you're trying to modify scope/goal/schedule, the system displays a message reminding you that unpublishing the schedule will cancel the ongoing optimization request.

Warning message about canceling ongoing optimization requests

There's also a new dialogue to remind you that changes made on an optimization goal will impact related published optimization schedules.

Dialogue message about optimization goals

New field to indicate the type of optimization request

We've added a Type field to indicate if an optimization request was triggered by a recurring schedule, or by clicking the Run Now button.

The new Type field for optimization requests

New optimization request statuses

We've revised and added new optimization request statuses to better indicate which step optimization is currently running through. Take a look at the following table for additional details.

Optimization Request Status Code Existing or New Description
Submitted New RSO is preparing and validating data (resources, requirements, bookings) based on optimization scope/goal settings. Invalid data will be filtered out during this operation.
Optimizing New Valid data sent to Azure for optimization.
Completed Existing Optimization request successfully completed.
Simulation Completed New Optimization status will be set to "Simulation Completed" if it’s a simulation run.
Blocked Existing If an optimization request is running for the same optimization schedule, and you try to trigger the same schedule, RSO will block the second optimization request. The status will be blocked. If there are overlapping resources, requirements, or bookings across multiple optimization schedules, and there are optimization scopes and schedules running at the same time, one schedule will block the other one, and the status will be blocked.
Failed Existing Optimization request didn’t finish successfully due to various reasons.
Canceled Existing Ongoing optimization request will be canceled in the following scenarios: Resetting optimization schedule; modifying related optimization scope/goal/schedule, and chose "Save and Unpublish"; and discarding a simulation optimization request.
Pending Deprecated This status code will no longer be used by RSO.

Enhancements for booking/resource details of optimization requests

We've also revised and added a new operation status to better indicate data eligibility and optimization decisions. See the following table for additional details.

Operation Status Apply for Booking Details section and/or Resource Details section Description
Invalid Booking Details and Resource Details sections Invalid indicated resource, requirement, or booking is being included in optimization scope, but has invalid data and can't be optimized until the data is corrected.
Optimizing Booking Details and Resource Details section Valid data; RSO is optimizing.
Optimized Resource Details section RSO completed optimization, and created/updated/deleted bookings for these resources.
Created Booking Details section RSO created new booking based on its optimization decision.
Updated Booking Details section RSO updated existing booking based on its optimization decision.
Deleted Booking Details section RSO deleted existing booking based on its optimization decision.
Unchanged Booking Details section For unchanged requirements, RSO didn’t schedule anything for that requirement based on its optimization decision. For unchanged bookings, RSO didn’t update anything for that booking based on its optimization decision.

New field to indicate when resource/bookings are invalid

The new Operation reason field shows:

  • When an invalid resource is included in optimization scope, but the scheduling method is set to No.

    An invalid resource with a message explaining why

  • When an invalid resource requirement is included in optimization scope, but with bad data (in this case, duration is set to 0).

    An invalid resource requirement and a message explaining why

Resource Scheduling Optimization app module

We've introduced the RSO app module, which works with the Unified Interface framework. To find the module, navigate to Settings > My Apps and select the Resource Scheduling Optimization app.

The RSO app module

The RSO app module showing resource scheduling