Bulk Routing Travel Calculations and Non-Assignment Reasons
Effective from 25B, the travel calculation rules have been enhanced to enable more accurate travel calculations, even between locations with lower accuracy. The maximum duration of a single travel segment within a routing plan is now available, regardless of whether SLR is enabled for the plan. Additionally, routing non-assignment reasons, particularly those related to travel, have been revised for greater clarity.
Travel Calculation Rules
- Travel calculation rules have been improved to enhance accuracy, even for travel between locations with lower accuracy.
- When both locations have high accuracy, travel calculations remain unchanged, as OFS already uses SLR for these scenarios.
- If one or both locations have low or medium accuracy, SLR travel may still be calculated as long as the areas do not intersect. If they do intersect, travel calculations will rely on airline distance between locations.
- To improve accuracy for airline distances between low or medium accuracy locations, travel calculations now use an average distance between points within those areas instead of the airline distance between their coordinates.
Routing Plan
- Within a routing plan configuration, the Travel segment limit, minutes and Travel segment limit, kilometers/miles fields can now be set even if SLR travel is not enabled for the routing plan.
- If no value is specified for these fields, the default values of 240 min and 200 km will apply. These are the same values previously used by the routing engine, ensuring there is no impact on routing results.
Non-Assignment Reasons
- Preassigned activities that were not moved during a routing run are no longer counted as non-assigned in the Routing Report.
- A new non-assignment reason, 6032 – "Travel statistics for specified travel keys are missing", has been introduced. This applies to travel-enabled activities when their coordinates are not geolocated and statistics for their travel keys are missing.
- The text and descriptions for other non-assignment reasons have been updated, as detailed in the table below:
Routing may prioritize longer travel with higher accuracy over slightly shorter travel with lower accuracy. When evaluating the most probable activity location areas, less accurate travel estimates may result in significantly longer distances than initially expected.
Error Code | Error Message | Description | |
---|---|---|---|
1 | 6000 | Dynamic routing | This is a common error that you can expect to see when using dynamic routing. It means the activity was filtered out because it falls outside the dynamic routing time or activity limitations. If you want to route the activity, change either the dynamic routing time or activity limitations, or turn dynamic routing off. |
2 | 6003, 6077 | No appropriate resources |
This means that the activity has requirements that cannot be met by any available resources. This message does not necessarily indicate an error. It informs you that the application could not find a matching resource for the activity. Check the following settings to confirm that they are accurate for your mobile workforce:
|
3 | 6005 | Service window start is greater than service window end | This is a data validation error. The service window end time falls before the service window start time on the activity. Please, fix the activity configuration |
4 | 6007 | Unacceptable overdue | The activity was not scheduled because it would be late and would start after the lateness settings specified in the filter parameters. Check the settings in the filter parameters. Go to the Filters section of the routing plan and click Settings to view filter parameters. |
5 | 6008 | Resource is overloaded or has not enough inventory | The activity was left unscheduled because of the Limit work by points parameter or lack of inventory. The assignment of this job would have caused a tech to use extraneous inventory or incur more points than his max threshold. You can adjust the resource’s point allotment in Daily View. |
6 | 6009 | Resource workday stop | The activity was left unscheduled because it would have caused overtime for the resource. If you want to allow overtime for resources, change the Resource Overtime settings in the routing plan. |
7 | 6010 | Unacceptable travel time | The activity was left unscheduled because the travel time would have exceeded the maximum travel time allowed. If you want to allow longer travel, change the Travel time settings in the routing plan. |
8 | 6011, 6013, 6063 | Linked activity cannot be scheduled | The activity is a part of the group of linked activities and the group can not be assigned without link constraint violation |
9 | 6016 | May cause SLA violation | Activity was unscheduled because it would cause a SLA violation by another following activity. It is normal to obtain this unscheduling reason when using SLA windows. |
10 | 6017 | Other | Reserved for cases where there are no other specific or precise unscheduling reasons. There is a very low chance to see this error code. |
11 | 6018 | Improper cost configuration |
Activity was not routed due to improper cost configuration. For example, either its non-assignment cost is too low or resources' time and travel costs are too high. |
12 | 6019, 6079 | Activity cannot be assigned due to SLA restrictions |
The activity was not scheduled because it would be late and would start after the lateness settings specified in the filter parameters. Check the settings in the filter parameters. Go to the Filters section of the routing plan and click Settings to view filter parameters. |
13 | 6020, 6070 | Provider preferences | Activities cannot be assigned without Provider Preferences violation. Insufficient Capacity: There is no available employees to handle the activity among required/allowed employees. |
14 | 6021 | May cause unacceptable overdue on other activities | Assignment will cause unacceptable overdue on other activities. Insufficient Capacity: The activity assignment pushes another, more important or non-movable, activity into unacceptable overdue. |
15 | 6022 | May cause unacceptable overtime on other activities | Assignment will cause unacceptable overtime on other activities. Insufficient Capacity: The activity assignment pushes another, more important or non-movable, activity into unacceptable overtime. |
16 | 6024 | Unable to reach activity |
Street level routing engine cannot make a route from the giving activity to any of the activities in the route. This occurs due to an error in the data. Check the activity address, the coordinates or travel key. |
17 | 6025 | Unacceptable travel distance | The activity was left unscheduled because the travel distance would have exceeded the maximum travel distance allowed. If you want to allow longer travel, change the Travel distance settings in the routing plan. |
18 | 6027 | Segmentable activity was partially assigned | This message does not necessarily indicate an error. It informs you that the segmentable activity was partially assigned due to resource availability in combination with configured minimal and maximal length of single segment. It may be a result of Insufficient Capacity and/or small maximal segment length. |
19 | 6028 | Unable to fit bundling policy constraints | Assignment will cause violation of bundling policy constraints. If at least one bundled activity according to all or none bundling policy is not assigned, it may cause of non assignment of the whole group of bundled activities. |
20 | 6094 | Activity location is missing | The travel-enabled activity can not be assigned due to its location is not specified neither by coordinates nor by travel key. |
21 | 6032 | Travel statistics is missing | The travel can not be defined because the activity has travel key only but required statistics is missing. |
22 | 6037 | Unacceptable daily travel distance | The activity was left unscheduled because the total daily travel distance exceeds the allowed value. |
23 | 6050 | Activity was removed from route while routing was running | Activity was removed from route while routing was running. |
24 | 6051 | Resource was removed while routing was running | Resource was removed while routing was running. |
25 | 6052 | Target route was deactivated while routing was running | Target route was deactivated while routing was running. |
26 | 6053, 20189 |
Target route was changed while routing was running |
Target route was changed while routing was running. |
27 | 6054, 6081 | Status of activity or activity segment was changed while routing was running | Status of activity or activity segment was changed while routing was running. |
28 | 6055 | Activity was moved while routing was running | Activity was moved while routing was running. |
29 | 6056 | Activity has no Work Zones | Activity has no Work Zones when the information is expected. |
30 | 6057 | Activity has no Work Skills | Activity has no Work Skills when the information is expected. |
31 | 6058 | Resource was deactivated while routing was running | Resource was deactivated while routing was running. |
32 | 6059 | Resource calendar was changed to non-working while routing was running | Resource calendar was changed to non-working while routing was running. |
33 | 6061 | Activity is not movable | Activity is not movable according to the activity type configuration. |
34 | 6064 | Result is not accepted according to optimization criteria | This message does not necessarily indicate an error. The message means that the activity might be routed, but according to configured optimization criteria for chosen Optimization Goal , routing run was either not started or run results were not applied. |
35 | 6067 | No required Work Zones | No technicians with required Work Zones available. Insufficient Capacity: there is not enough resources in the required work zone to handle the activity. |
36 | 6068 | No required Work Skills | No technicians with required Work Skills available. Insufficient Capacity: there is not enough resources with the required work skills set to handle the activity. |
37 | 6069 | No required inventory | Technician does not have the required inventory. Insufficient Capacity: there is not enough resources with the required inventory available to handle the activity. |
38 | 6071 | Not enough points |
Technician does not have enough points to perform this activity. |
39 | 6072 | Calendar | Field Resources with matching working calendar are not found. |
40 | 6073, 6074, 6075, 6076 | Appropriate field resources are not found |
It is the message from immediate routing that there is no field resources with active users or just field resources who may perform the activity. Insufficient Capacity: There is no available Field Resources to handle the activity. |
41 | 6084, 6085, 6086, 6087, 6088, 6089 | Resource cannot be used as a warehouse | Resource cannot be used as a warehouse because it does not have Start Location, or working calendar, or inventory or other reason. |
42 | 6090 | Link constraints are not supported by chosen routing plan | Link constraints are not supported by chosen routing plan |
43 | 6091 | The resource located outside of the routing bucket is partially excluded due to another run that is currently in progress. Please repeat the routing to include the resource. | The resource located outside of the routing bucket is partially excluded due to another run that is currently in progress. Please repeat the routing to include the resource. |
44 | 6092 | Activity can not be moved | Activity type constraints or routing plan settings prevent the activity from being moved between days and/or resources. |
45 | 6093 | Field Resources calendars and activity windows do not intersect |
The activity's requirements cannot be met by any available resource because there is no intersection between available working calendars and activity SW/SLA. While this error does not necessarily indicate an error, you should check the following settings to confirm that they are accurate for your mobile workforce:
|
46 | 6096 | Appropriate activities were not found | The routing report shows that this issue pertains to field resources rather than activities. This signifies that when the routing run was scheduled to commence, the field resources met the criteria but were not included in the routing due to the absence of appropriate activities that could be allocated to them. |
47 | 20186 | Broadcast has timed out | An activity was not assigned for allowed time for broadcasting. It may be a result of insufficient capacity when resources are loaded fully. |
48 | 20188 | No matching resources to broadcast | An activity was not assigned by broadcasting because there was no matching resources for it. |
Business Benefit
- Increased number of activities with lower accuracy locations are now reliably auto-routed.
- Improved non-assignment reasons reduce the effort required to investigate routing results.
Steps to Enable
You don't need to do anything to enable this feature.