We just completed a round of updates of Dynamics 365 Field Service from version 7 to 8 and wanted to share some of our lessons learned. Although this is the last of the manual updates – from here on, Microsoft will be updating Field Service in April and October with the rest of the Customer Engagement platform (details here) – we think these lessons learned may still apply.
Lesson #1: Upgrading “Field Service” means upgrading many components
Field Service upgrades are not as simple as upgrading a typical solution; there are many components involved that are all interrelated. The following components were involved with the v8 upgrade:
Lesson #2: The new Mobile Project required a manual update process
As mentioned above, a new Mobile Project file from Microsoft was included with the v8 upgrade. The Mobile Project contains all the screens, views, automations and standard functionality of the Field Service Mobile app (powered by Resco), which gets installed in the Woodford configuration tool. If the original Mobile Project file has been changed or customized in any way, all those changes will need to be migrated to the new Mobile Project. Changes can include reorganizing the home screen, adding views, updating view filters, adding form rules, customizing the theme, etc. It’s a good idea to keep a running list of your Mobile Project updates so you can easily know what updates need to be migrated. Currently there is no way to automatically apply existing customizations to the new Mobile Project. You will either need to manually move your customizations to the new Mobile Project, or use GitHub to compare the two projects and copy over files into the new project. You can find the steps to use GitHub here.
- Import the new Mobile Project provided by Microsoft and publish
- Select the new project and click “Derive” to create a child project. This will be the project that you will customize and publish to your users.
- Compare and merge any existing customizations. If merging manually (or using the hybrid approach mentioned above), you can open both projects (your previously customized project and the new project) and compare side by side. You can export the XML for forms and views from the old project and import into the new, however keep in mind that this import will override any new standard customizations included in the new field service mobile project. The GitHub comparison was helpful in identifying which forms and views had changes.
As Microsoft adds new features to Field Service, it’s likely that updated Mobile Projects will also ship with the updated main solutions. We hope to see a more automated way to merge in Mobile Project changes in the future, but until then, we’ll need to continue with the manual merges.
Lesson #3: Look out for JavaScript errors
Field Service version 8 requires use of the Unified Client Interface (UCI), and will remove the Field Service area from the site map in the classic interface. When using the UCI, you may see some new JavaScript errors, even on standard Microsoft form scripts after the upgrade. One common error we have seen is “Cannot read property ‘getFormContext’ of undefined”. This error may pop up on Work Order, Bookable Resource Booking, and Resource forms as soon as the form loads. To resolve this error:
- Navigate to the form editor and open “Form Properties”
- Under “Event Handler”, double click to open the event
- Check off “Pass execution context as first parameter” and then click OK
- Repeat for each event handler listed in the form properties, and for each form that displays this error
Lesson #4: New features are not automatically enabled
With this update and with future updates, Microsoft will release new features which will usually be disabled or will require some setup in order to work properly. As an example, one of the new features included in the Field Service version 8 upgrading is Geofencing. Geofencing workflows automatically create a perimeter around a work location, and we can use this perimeter to trigger push notifications or custom workflows whenever a technician moves in or out of this area. There are a few geofencing solutions that were installed with the Field Service upgrade, which include the entities and workflows required. To enable Geofencing:
- Confirm the 3 geofencing solutions are installed and activate the geofencing processes (these will be in “Draft” status by default).
- Navigate to “Geofencing Settings” and “Entity Configuration” to review and update the default radius, unit, etc. as needed.
- Open the Mobile Project within Woodford for the Field Service mobile application, then navigate to “Auditing”. Confirm that “Enable Auditing”, “Include GPS Location”, and “Log Synchronization Event” are checked.
- In the mobile project navigate to “Location Tracking”, then check “Enable background GPS monitoring” and uncheck “Enable real-time position flushing via Resco web service”. Please note that you may see a warning that Location Tracking is only available with a Resco Routes license, but this function is covered by the Microsoft Field Service license.
Once these steps are completed, you should see “Geofence” records created when a work order is booked and “Geofence Event” records created when a user enters or exits a service location. Of course, each new Field Service feature that rolls out in the future will have different steps to implement, but this is a great example of the level of effort required to get a new feature up and running. __ The 2020 Wave 1 round of updates is scheduled for North America to release over the weekend of May 22, which for many of us will be the first experience with the automatic updates for Field Service. If you haven’t already, we recommend opting in a Sandbox environment at least 30 days beforehand to test and iron out any issues. If you need help moving to Field Service v8 or have questions about any steps in the process, please feel free to Contact Us.