Loading
Upcoming Mandatory Changes to Public Key Infrastructure (PKI)Read More
Agentforce Field Service and Operations
Table of Contents
Select Filters

          No results
          No results
          Here are some search tips

          Check the spelling of your keywords.
          Use more general search terms.
          Select fewer filters to broaden your search.

          Search all of Salesforce Help
          Guidelines for Using the Scheduling Policy Commit Mode

          Guidelines for Using the Scheduling Policy Commit Mode

          Define what happens when a dispatcher or scheduling operation makes a change to the schedule that conflicts with an ongoing optimization process.

          Required Editions

          Available in: both Salesforce Classic (not available in all orgs) and Lightning Experience
          The Field Service core features, managed package, and mobile app are available in Enterprise, Unlimited, and Developer Editions.

          Package icon This is a Field Service managed package feature.

          Various conflicts can occur in the schedule during an optimization run. For example, while optimization is running, a dispatcher pins a service appointment, a customer cancels an appointment at the last minute, or an emergency service appointment is created and scheduled automatically. These actions can result in discrepancies between the schedule at the start of optimization and the schedule upon completion. If a scheduling change during optimization creates scheduling conflicts, you can commit the optimization recommendations despite the conflicts or roll back to the original schedule without making any changes.

          • Always Commit (default for Salesforce orgs created before Summer ’23): If a user tries to make a potentially conflicting change to the schedule while optimization is in progress, a message is shown to warn the user that their change can conflict with the optimization results, but lets them opt to save the change. If the conflicting change is made by automation or a user outside of the Classic Dispatch Console, no message is shown.
          • Rollback (default for Salesforce orgs created from Summer ’23): If a potentially conflicting change is made to the schedule for the dates being optimized—with a buffer day before and after—don’t complete the optimization. This choice is a conservative scheduling option that helps you avoid possible conflicts. For example, if you begin a scheduled job to optimize from April 2 to April 5, changes made to the April 1 to April 6 schedule cause the optimization to be rolled back. Changes include creating and deleting resource absences and service appointments, any resource absence updates, and updates to the service appointment assigned resource, Scheduled Start or Scheduled End.

          The default when you’re using Enhanced Scheduling and Optimization is Rollback, but consider selecting Always Commit during global optimization. Rollback is recommended with in-day optimization schedule policies due to a high chance of conflicts. During night-optimization, where conflicts are limited, consider selecting Always Commit.

          Note
          Note In rare cases, a service appointment can incorrectly have two assigned resources even if the scheduling policy is set to Rollback. This can occur if a dispatcher manually assigns a service appointment on the Gantt at the exact same time an optimization request is about to commit its results. The rollback check (which looks for Gantt changes) can finish right before the manual drag-and-drop action completes. Because the check detects no change at that moment, the rollback isn't triggered, and the optimization results are committed, resulting in the duplicate assignment.

          Here are examples of potentially conflicting schedule changes and what happens depending on the selected Commit Mode.

          Scenario Always Commit Rollback
          The dispatcher pins a service appointment while an optimization request is running (the Pinned checkbox on the service appointment is selected). The pinned service appointment remains in its place. An overlap can occur with another service appointment if optimization had planned to move the pinned appointment to schedule another job in place of it. The pinned service appointment remains in its place. An overlap can occur with another service appointment.
          The status of a service appointment is updated. The schedule is updated. The service appointment can move to another time and resource as per the optimization results. The status remains unchanged from the latest update. The optimization result is committed.
          A service appointment is created and scheduled. The schedule is updated as per the optimization results. An overlap can occur with another service appointment. No changes are made to the schedule.
          The dispatcher schedules an appointment that is currently unscheduled. During optimization, the optimization run overrides the dispatcher's decision and assigns the appointment to the service resource suggested by the engine (commits the recommended solution). No changes are made to the schedule.
          A scheduled service appointment is canceled. If a scheduled service appointment is canceled during an optimization run, the service appointment remains canceled and doesn't appear on the Gantt. No changes are made to the schedule.
          A scheduled service appointment is unscheduled. The schedule is updated as per the optimization results. No changes are made to the schedule.
          Optimization tries to schedule a service appointment and the unscheduled appointment is canceled. Scheduled Start and Scheduled End times are added to the service appointment. No assigned resource is added to the service appointment. No changes are made to the schedule.
          A resource absence is created within the optimization horizon. The schedule is updated as per the optimization results. An overlap can occur with another service appointment. No changes are made to the schedule.
          A resource absence is updated within the optimization horizon. The schedule is updated as per the optimization results. An overlap can occur with another service appointment. No changes are made to the schedule.
          A resource absence is deleted within the optimization horizon. The schedule is updated as per the optimization results. No changes are made to the schedule.
          A scheduled service appointment is rescheduled to another time (the Scheduled Start Time or Scheduled End time, or both, is updated). The service appointment moves to another time or service resource, or both, as per the optimization results. No changes are made to the schedule.
          A scheduled service appointment is rescheduled to another service resource (Assigned Resource is updated). The service appointment moves to another time or service resource, or both, as per the optimization results. No changes are made to the schedule.
          The Arrival Window Start time of a service appointment or Arrival Window End time, or both, is updated. The service appointment moves to another time or service resource, or both, as per the optimization results. No changes are made to the schedule.
           
          Loading
          Salesforce Help | Article