Sometimes the Resource Scheduling Optimization (“RSO”) engine will fail, or the optimization requests will stop generating. This seems to sometimes happen when a system update occurs or occasionally for no obvious reason at all. To reset the Optimization Schedule:
Navigate to the Resource Scheduling Optimization app
Click on Optimization Schedules, and open the schedule that is causing the issue.
Click “Reset Schedule” at the top of the screen. Refresh the screen every so often until the status changes from “Unpublishing” to “Unpublished”. Note that this can take a few minutes.
Once the status says “Unpublished”, click “Publish” at the top of the screen. It will then take a couple minutes for the schedule status to update to “Published”.
Once Published, confirm that the “Next Scheduled Run At” date and time is correct – it should be set to some amount of time in the future based on the “Timer” setting on the schedule. Once that time has passed, refresh and check the Optimization Requests subgrid to ensure that the schedule is running as expected.
Error: System could not fetch selected requirement view”
In order for the RSO to run successfully, the Resource Scheduling Optimization” user must have access to all views involved in the scheduling engine. If the requirement or resource view being used is a shared view, you may see an error either on an Optimization Request or on the Optimization Schedule itself that says something like this:
To resolve this, first locate the Scheduling Optimization Scope by opening the default Optimization Schedule and clicking on the “scope”. Depending on the error, identify the appropriate Resource View or Requirement View that the error message is referring to (in the case of the example above, we want to look at the Requirement View).
Navigate to Advanced Find and locate the view you identified, then click “Share” from the ribbon.
Once the Share window opens, confirm that the view is shared with the “Resource Scheduling Optimization” user (with Read, Write, Assign, and Share permissions) and click Share.
While the RSO should usually run successfully on its own, it can be useful to set up alert workflows to send automated notifications when something goes wrong. You can easily set up monitoring alerts using the Dataverse connector in PowerAutomate. Here are some examples of ways that the RSO might fail, and suggestions for the alert you may want to set up to monitor each issue:
Optimization Schedule “Status” changes: Sometimes the Optimization Schedule will become unpublished, or will have an error. To monitor, set up a PowerAutomate workflow that runs when the “Status” field on an Optimization Schedule is changed, and sends an email to your distribution group when that Status equals “Unpublished” or “Error”.
High Number of Optimization Request Errors: In this scenario, the Optimization Schedule is running, but there are an abnormally high number of Optimization Request records that are ending with an error status. For this, create a recurring PowerAutomate workflow that runs once a day and looks at all Optimization Request records that have run in the last 24 hours with a status other than “Completed”. If this number of requests is higher than a threshold (this would depend on how often you’re running the RSO), then send an email to your distribution group.
Low Number of Optimization Requests: In this scenario, the Optimization Schedule is Published, but Optimization Requests are not being generated. Create a recurring PowerAutomate workflow that runs once a day and looks at all Optimization Request records that have run in the last 24 hours (in any status). If this number of requests is lower than a threshold (this would depend on how often you’re running the RSO), then send an email to your distribution group.