Jonathan Baker, Author at Microsoft Dynamics 365 Blog http://approjects.co.za/?big=en-us/dynamics-365/blog Modernizing Business Process with Cloud and AI Tue, 09 Jul 2024 20:29:27 +0000 en-US hourly 1 http://approjects.co.za/?big=en-us/dynamics-365/blog/wp-content/uploads/2018/08/cropped-cropped-microsoft_logo_element.png Jonathan Baker, Author at Microsoft Dynamics 365 Blog http://approjects.co.za/?big=en-us/dynamics-365/blog 32 32 .cloudblogs .cta-box>.link { font-size: 15px; font-weight: 600; display: inline-block; background: #008272; line-height: 1; text-transform: none; padding: 15px 20px; text-decoration: none; color: white; } .cloudblogs img { height: auto; } .cloudblogs img.alignright { float:right; } .cloudblogs img.alignleft { float:right; } .cloudblogs figcaption { padding: 9px; color: #737373; text-align: left; font-size: 13px; font-size: 1.3rem; } .cloudblogs .cta-box.-center { text-align: center; } .cloudblogs .cta-box.-left { padding: 20px 0; } .cloudblogs .cta-box.-right { padding: 20px 0; text-align:right; } .cloudblogs .cta-box { margin-top: 20px; margin-bottom: 20px; padding: 20px; } .cloudblogs .cta-box.-image { position:relative; } .cloudblogs .cta-box.-image>.link { position: absolute; top: auto; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); bottom: 0; } .cloudblogs table { width: 100%; } .cloudblogs table tr { border-bottom: 1px solid #eee; padding: 8px 0; } ]]> Improve Mobile Offline performance with Offline Table Column Selection http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2024/07/08/improve-mobile-offline-performance-with-offline-table-column-selection/ Mon, 08 Jul 2024 23:07:52 +0000 Choosing columns for Dynamics 365 Field Service Mobile offline mode enhances Offline sync performance and user experience.

The post Improve Mobile Offline performance with Offline Table Column Selection appeared first on Microsoft Dynamics 365 Blog.

]]>

In today’s fast-paced business environment, efficiency and speed are key to staying ahead. That’s why we’re excited to preview* a new feature for Model Driven applications (Canvas application support coming soon) which is designed to improve your mobile applications offline sync performance, saving valuable time and bandwidth.

Offline table column selection brings a significant enhancement to the offline capabilities of your mobile app. Now, Dynamics customers have the power to customize their offline data sync by selecting specific columns within a Dataverse table to download. This granular control means that only the most relevant data is downloaded to the offline device, reducing the overall volume of data that needs to be downloaded.

An example of how this preview feature can be used is shown with the standard Contacts table. This is a standard out of the box Dataverse table which typically includes 240 columns. By leveraging offline table column selection, you can now reduce the number of columns downloaded offline by **greater than half.

User Benefits:
  • Reduced Download Time: By downloading only the necessary columns, the time required for offline sync is significantly decreased. 
  • Improved User Experience: Faster offline sync times will lead to less waiting for the mobile application to be ready to go offline, and large updates to the device will happen even faster. This will lead to a smoother and more efficient user experience. 
  • Optimized Data Usage: This feature helps in managing data consumption, especially in areas with limited connectivity or data plans. 
  • Enhanced Performance: With less data to process, the mobile app will use less battery and bandwidth, allowing for quicker access to critical information. 

The offline table column selection feature is a testament to our commitment to providing solutions that not only meet but exceed the needs of our customers. By enabling enterprise users to tailor their offline data access, we’re empowering them to work smarter, not harder. Experience the difference today and take your field service operations to the next level. 

* Offline table column selection is currently in preview only, please refer to the release plan for general availability

** Required columns may be different by organization and unique business scenarios. Be sure to review your custom business logic to ensure all columns required are selected.

Additional resources

The post Improve Mobile Offline performance with Offline Table Column Selection appeared first on Microsoft Dynamics 365 Blog.

]]>
Experience the power of Copilot in Dynamics 365 Field Service in the mobile application http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/12/18/experience-the-power-of-copilot-in-dynamics-365-field-service-in-the-mobile-application/ Mon, 18 Dec 2023 18:27:24 +0000 Field Service mobile is a powerful application that helps frontline workers manage their tasks, access information, and communicate updates with the back office.

The post Experience the power of Copilot in Dynamics 365 Field Service in the mobile application appeared first on Microsoft Dynamics 365 Blog.

]]>

Introducing Copilot for the new Field Service mobile user experience 

Field Service mobile is a powerful application that helps frontline workers manage their tasks, access information, and communicate updates with the back office. But we know that sometimes, using an app can be cumbersome or distracting, especially when you are busy with your hands-on work. That’s why we are excited to announce Copilot for the Field Service mobile app, a new feature that makes Field Service mobile even more user-friendly and efficient. 

graphical user interface, text, application, chat or text message

The new Field Service mobile (Preview) user interface has two Copilot skills that help to summarize and update work orders. Copilot update uses natural language processing and artificial intelligence to understand your input via text or voice command, then suggests form updates based on that input. While the Copilot summary provides the Frontline Worker a concise summary of their booking with the click of a button.  

graphical user interface, application

Let’s learn more about these features and how they work. 

How Copilot Summarizes You Work 

Copilot Summarize provides a quick overview of the scheduled booking for the frontline worker. This gives frontline workers a better understanding of the job to be done without needing to click through multiple forms to find the information. Copilot will summarize a booking based on the following fields related to that booking:  

  • Booking information 
  • Activity details 
  • Notes from the work order and bookings 
  • Work order product details 
  • Work order service details 
  • Work order service tasks 
  • Asset information and work order History 
graphical user interface, text, application

Copilot work order summary is also available for the back office or from the web-based Field Service application. For more information please see Work order recap with Copilot in Field Service (preview) – Dynamics 365 Field Service | Microsoft Learn

How Copilot updates data on forms 

Another benefit of Copilot is that it can help you easily fill out forms. Instead of hunting for fields within the mobile app, you can simply tell Copilot what you want to update.  Tell Copilot to update data with phrases such as: 

  • I’ve completed all tasks and finished this booking at 10:00AM 
  • I’ve used {product name} as part of my work to complete this booking. 
  • I’ve completed {service task name}.  

Copilot will understand your natural language input and propose updates to data on the form accordingly. All changes proposed by Copilot will be presented to the frontline worker where they can exclude or accept recommended updates.  

graphical user interface, text, application
graphical user interface, application
graphical user interface, text, application

Today the Copilot update is limited to updates of the forms within the new mobile UX only. Scope of these updates are: 

  • Update your booking status and times 
  • Change the state of at task to completed 
  • Consume estimated products 
  • Complete work order services 
  • Complete service tasks assigned to the work order 

Keep an eye out for additional enhancements and capabilities of this feature! 

How to Get Started with Copilot for Field Service Mobile 

Copilot Summary and Update are available for the new Field Service mobile (Preview) experience today. To enable Copilot, the org admin will need to enable the features within Field Service Settings. Once enabled, app users will find the copilot entry point in their application under the Copilot logo located in the header of the booking form.  

We hope that Field Service mobile with Copilot will make your work even more productive. We would love to hear your feedback and suggestions on how to improve Copilot. Please feel free to leave comments in the Dynamics 365 Community Forum or Ideas portal. Thank you for using Field Service Mobile! 

The post Experience the power of Copilot in Dynamics 365 Field Service in the mobile application appeared first on Microsoft Dynamics 365 Blog.

]]>
Best Practices for Offline Mode in the Field Service mobile app – Part 3 http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/11/10/best-practices-for-offline-mode-in-the-field-service-mobile-app-part-3/ Fri, 10 Nov 2023 19:09:00 +0000 In this final part of the Field Service Mobile offline blog series, we will discuss some of the more advanced configuration and recommendations for IT pros and partners to get the most out of their offline application. 

The post Best Practices for Offline Mode in the Field Service mobile app – Part 3 appeared first on Microsoft Dynamics 365 Blog.

]]>

Advanced Configuration

In this final part of the Field Service Mobile offline blog series, we will discuss some of the more advanced configuration and recommendations for IT pros and partners to get the most out of their offline application. 

Learn more about the offline user experience in Part 1

Learn more about best practices and configuration in Part 2

Limit relationships to avoid slow-running data queries. 

In addition to limiting data being downloaded, it is also important to limit the complexity of expensive SQL queries that are run to fetch that data. Gains realized by reducing data can be offset by complex queries which take longer run on the server. The following best practices can be considered when defining relationships: 

  • If your data model includes several levels of relationships generating multiple joins across tables, consider using simple filters like ‘all records’; it can be faster to download more data up front as part of the one-time initial sync so more frequent delta syncs will be faster without the complex queries.
  • If using time-based filters to reduce records, it is recommended to use time ranges with fixed boundaries. For the most efficient sync experience, you could include fixed time window of last month, current month and next month. If requiring more dynamic time-based filtering, filter using Created on in the last N-days. Using these filtering techniques will help support downloading only recent, relevant data for the Frontline Worker. 
  • Avoid using both custom data filters and selecting relationships on the same table. This will result in complex queries impacting performance.

NOTE: Be aware that using a custom filter creates an OR with relationships, and each relationship creates as an OR as well.

  • Avoid self-joins, where a table is making a circular reference with the same table within customer filters. 
  • If using time-based calendar items that result in downloading many related records and files, consider reducing that time window to reduce total data download

Leveraging ODATA to view Offline Profile configuration. 

Makers may be able to better evaluate joins and complexity of their offline profile by viewing those joins directly via API. The following APIs can be used to view details of the offline profile. 

OData call used to return JSON of the mobile offline profile showing profile filters.

This is the fetch xml for offline profile items for any entity within the profile. This could be used to inspect the complexity and relationships. 

NOTE: For the snippets below

  • {orgurl} is your CRM organization URL 
  • {profileID} is the GUID for your mobile offline profile 
  • {entityname} the logical name of your entity 
  • {entitysetname} is the plural name you assign for your entity (must be lower case) 
  • {fetchXml}: Return value from your get filter ODATA call 

To get started you can locate your profile id leveraging:

https://{orgurl}/api/data/v9.0/mobileofflineprofiles?$select=name,mobileprofileid

To fetch the profile items and filters: 

https://{orgurl}/api/data/v9.0/mobileofflineprofileitemfilters?$filter=_mobileofflineprofileid_value eq ‘{profileID}’ and returnedtypecode eq '{entityname}' and type eq 2&$select=fetchXml,returnedtypecode 

To get the ODATA to test FetchXML for an entity you are including in your profile:

https://{orgurl}/api/data/v9.1/{entitysetname}?fetchXml={fetchXml} 

OData call to find the number of users assigned to a profile.

NOTE: This does not apply to role-based access to profile/apps

https://{orgurl}api/data/v9.0/usermobileofflineprofilememberships?$filter=_mobileofflineprofileid_value eq {profileID}&$count=true 

Understanding Application data & schema changes and their impact on Offline Sync 

The offline sync client uses Dataverse change tracking to find updated records to download. Even a minor change to one column will trigger the re-download of the entire record. Watch out for processes that automatically update many records on a frequent basis as this will lead to longer synchronization times. 

Similarly, when the schema of a data table changes, the offline sync client will re-download records in that table to ensure that no data is missed. Whenever possible, avoid schema changes to offline-enabled tables. When schema changes are required, group them together in a single release or solution update so that data is only re-downloaded for each table one time. 

Leverage “online light up” for edge cases, or scenarios that may not require offline access. 

There are some scenarios where offline access may not be necessary. An example of this may be iOT data which is only a live feed from a connected device that is only accessible online.  

In these cases, you can include that table as part of the user experience in the application, but not include it in the mobile offline profile. By doing so, the views for that table will be accessible to the Field Service Mobile users only when the network is available. 

Leveraging online light up for online-only scenarios helps to reduce data which would otherwise need to be synchronized to the device. It is a great way to meet business needs for uncommon or edge-case scenarios without having to download more data for standard business scenarios that must function offline.  

For standard out of the box forms and views this works without additional logic. When implementing customizations which are intended to be online-only, please refer to Xrm.WebApi (Client API reference) in model-driven apps – Power Apps | Microsoft Learn

Conclusion

This concludes our 3-part blog series on getting the best of your Dynamics 365 Field Service mobile application setup. If there are new enhancement suggestions, it is recommended to submit those asks via the Field Service Mobile Ideas portal: Field Service Mobile – Ideas. This will allow the product team to evaluate new requests and plan for future product release waves. 

And for more best practices, please refer to Platform Offline Best Practices for further offline guidance.  

The post Best Practices for Offline Mode in the Field Service mobile app – Part 3 appeared first on Microsoft Dynamics 365 Blog.

]]>
Best Practices for Offline Mode in the Field Service mobile app – Part 2 http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/11/08/best-practices-for-offline-mode-in-the-field-service-mobile-app-part-2/ Wed, 08 Nov 2023 20:46:06 +0000 In this second part we will go through some of the configuration and best practices for a successful offline rollout.

The post Best Practices for Offline Mode in the Field Service mobile app – Part 2 appeared first on Microsoft Dynamics 365 Blog.

]]>

In Part 1 of this series, we discussed the end-user experience of the offline-first Field Service Mobile application. In this second part we will go through some of the configuration and best practices for a successful offline rollout. 

Mobile Offline Configuration & Best Practices

Leverage the out of the box mobile offline profile 

The out of the box Field Service Mobile offline profile is a great starting point when enabling offline for your organization. It has common Field Service tables pre-configured along with some recommended filters to limit data. When modifying the mobile offline profile, it is recommended to not remove existing tables, but only add new/custom tables required by your organization. If you do want to remove tables from the OOTB profile, be sure there are no references or cross-linking in the views as relationships between tables can at times be difficult to identify at first glance. 

Limit offline data synchronized to the device 

One of the most important things to set your organization up for success with mobile offline is enabling the right data for your business scenarios. Given bandwidth and device constraints it is critical that data being synced from the server is limited as much as possible to have a fast and efficient experience.  

We recommend you evaluate your offline data needs by considering the following: 

  • What are the core business scenarios for a given Work Order assigned to the frontline worker using the application? 
  • What is the minimum historical data which is required offline? 
  • What relationships exist between tables which will be required to drive lists/views/lookups and cross references?
  • What elements on the application may not be needed offline and can be considered online only (excluded from the offline profile)?

Determining above may take several conversations with business stakeholders and frontline workers. It is recommended to document these details in text before diving in to configure your mobile offline profile. 

Offline sync and application data 

In addition to the data sync, the first sync will include app data which is used to drive the views and forms of the application. This app data is highly compressed when downloading over the network and unpacks after being downloaded to the device.  

App data includes scripts, images, and other resources from the Microsoft Field Service solution and any additional customization from solution providers and admins. 

While many of the out-of-the-box scripts should not be modified by the organization, for custom app data be sure to follow best practices: 

  • Minify scripts to reduce file size. 
  • Reduce image assets sizes. 
  • Only include assets which are strictly required for mobile app usage.  
Test as a user in real world conditions  

It is important to test changes to your offline profile directly on the mobile application while using an account that mirrors the role that real end-users will ultimately be using to access the device. This is important because different roles in the organization may have different data access levels and have dramatically different results during offline synchronization. 

When testing you can evaluate the Offline Status Page in the application to see which tables are being synchronized and how many records per table are being downloaded.  

In addition to testing with the correct user role, be sure to test or simulate real world conditions; for example, you will want test cases to mirror the following: 

  • Wi-Fi 
  • Cellular (strong) 
  • Cellular (weak/low signal) 
  • No network 

Testing in various network conditions will help you identify hidden issues where a table is missing from the profile or filter condition may be excluding a necessary record. In some cases, internal business logic may go to the server to get the missing record from the mobile offline profile; this provides a better user experience by avoiding errors for connected scenarios but can result in errors when the application is running without network.  

This level of testing will give further validation that your offline configuration has met your business requirements and frontline workers will have success in any network condition. 

Avoid extensive use of Web Resources with the offline application 

Web resources have several offline limitations which can differ by mobile operating system. Due to these limitations and inconsistency between device operating systems, it is recommended to leverage PowerApps Composition Framework (PCF) controls 

Details on web resource limitations can be found in Power Apps documentation. 

Be aware of larger file types such as images, videos, and documents  

Large files and images require some special handling to enable for offline and limit so to avoid consuming excessive amounts of bandwidth or disc space.   

For details on best practices when configuring files and images, please refer to Configure mobile offline profiles for files and images – Power Apps | Microsoft Learn 

Leverage client-side business logic 

The offline-enabled Field Server Mobile application will sync data from the server at regular intervals. If part of a workflow depends on interaction with the server, the response may take minutes to return to the client when the network is available, and not at all if the user is truly offline. To avoid the delay and make the offline experience more consistent, it is recommended to move as much business logic to the client as possible.  

This may involve moving some capabilities traditionally handled by a server-side plugin to the client so it can function properly in offline mode.  

More information on Business Rules: Apply custom business logic with business rules and flows in model-driven apps – Power Apps | Microsoft Learn 

Set sync intervals for your tables 

Within the Mobile Offline Profile configuration each table can have its own sync interval. This interval determines how often that table is checked for updates.  

You can change the sync interval for each table to reduce the frequency of syncing as users use the app. This may reduce network and battery usage.   

It is recommended to set intervals to be less frequent on tables which are not updated often. 

If you’d like to slow down all data downloads, update the sync interval for all tables in the offline profile to a higher interval. 

With the release of Offline Sync Settings in Wave 2 2023, users can control their individual sync settings and set their client to only sync while on Wi-Fi.  These settings can be leverages for scenarios where the Frontline Worker may for work extended periods of time without the need to sync, or have data capacity limits on their cellular plans. 

Moving the mobile offline profile between environments 

Commonly, configuration of the mobile offline profile is done in a sandbox environment and will need to be moved up to a test environment before ultimately being updated in production. To ensure consistently between environments it is recommended you move the offline profile as part of a managed solution. 

This can be accomplished by creating a new solution and then binding the offline profile to that solution which can be exported. Simply re-import the solution to the new environment then publish and your changes will be updated with consistency between environments.  

Read Part 3 of this blog series!

If there are new enhancement suggestions, it is recommended to submit those asks via the Field Service Mobile Ideas portal: Field Service Mobile – Ideas. This will allow the product team to evaluate new requests and plan for future product release waves. 

And for more best practices, please refer to Platform Offline Best Practices for further offline guidance.  

The post Best Practices for Offline Mode in the Field Service mobile app – Part 2 appeared first on Microsoft Dynamics 365 Blog.

]]>
Best Practices for Offline Mode in the Field Service mobile app – Part 1  http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/11/06/best-practices-for-offline-mode-in-the-field-service-mobile-app-part-1/ Mon, 06 Nov 2023 20:23:24 +0000 This is a 3-part blog series aimed to get the maximum benefits of using the Field Service mobile application in the 'Offline' mode.

The post Best Practices for Offline Mode in the Field Service mobile app – Part 1  appeared first on Microsoft Dynamics 365 Blog.

]]>

This is a 3-part blog series aimed to get the maximum benefits of using the Field Service mobile application in the ‘Offline’ mode. Follow along as we share the knowledge that would allow the frontline workers using the Field Service mobile application to get the best results.

Mobile Offline Overview

Frontline workers often perform tasks in areas with variable network connectivity. While using an online-only application, poor network connections can lead to slow app performance. Requests over the network may have delayed responses or even fail with errors when the network isn’t available.  

Field Service Mobile solves this problem by running “offline-first”, where after syncing data from the server, the application’s primary data source is a local database which is accessed without the need for a network connection. Running an offline-first application provides a more efficient and performant experience for your end users regardless of network conditions.  

This three-part series of blog posts will provide in-depth information about the offline application and user experience as well as recommendations to make the most out of your offline Field Service mobile application.  

Understand the Mobile Offline user experience 

Offline-first mode in Dynamics 365 Field Service Mobile provides a seamless experience for end users. The application will automatically sync with Dataverse to keep data up to date when the network is available.   

Having a solid understanding of how offline mode works will help the Makers and IT Admins configure and support if issues or question arise.  

The offline-enabled application will download data for offline-enabled Tables as defined by the Mobile Offline Profile. The Mobile Offline Profile is where makers configure queries and build relationships between tables to limit data that is downloaded and ensure an efficient synchronization performance and that data required for application operation is available on the device. 

First time sync

When a user logs into the offline-enabled application, the first sync will start. This sync brings down all records within scope of the mobile offline profile. Additional tables may be added to the application which are not part of the mobile offline profile. These tables are considered “online” and would only have data available when the device has network access. 

During the first sync, records will be downloaded and stored in the secure SQLite database on the device. While the first sync is happening, the application user can start to work but updates would be made against live server data. It is important to be aware that after the first sync completes the application will transition to read only from the offline database, so any changes made while that first sync was happening would not be available to the application until the following sync. This is why we recommend allowing that first sync to be completed prior to making data changes on the application. 

During that first sync the user will see an icon in the header of the application with animated iconography showing sync is in progress. Additionally, they will see a banner informing them of the progress of the sync. When the first sync is completed, the user must navigate within the application to complete the offline setup and be “offline ready”. From this point the mobile app will get data from the offline database and can be used in areas of low-to-no network connectivity.  

Delta Sync

Following the first sync, the application will perform “Delta” syncs of tables at intervals configured in the mobile offline profile for each table. The client app will check for updates and sync records from tables based on the tables sync interval set in the Mobile Offline Profile. For example, if one table is set to “5 minutes” and every other table is set for 30 minutes, the client will check that table for changes every 5 minutes and other tables will sync changes every 30 minutes.   

In addition to regular delta syncs, the application will do a longer “clean-up” sync once per day. This sync will run through all tables irrespective of sync duration to ensure all data changes are up to date and ready for the application.  

Up Sync

When changes are made to offline records on the device, those records are synced to the server via up-sync process. This up-sync will happen immediately on save when network is available, or stored locally on the device and then up-synced later once network becomes available.  When an up-sync is pending or in progress, the offline iconography in the header of the application transitions to show that the up sync is pending.  

Product Enhancement

As part of Wave 2 2023, new Offline Sync Settings provide Frontline Workers more control to determine their own automatic sync interval, as well as the ability configure the application to sync only when connected to Wi-Fi connection.  

Additional tips on Offline user experience 
  • If the application is minimized or closed during sync, the sync will resume once the application is restored. 
  • Android, iOS, and Windows will continue some limited syncing while the application is in the background, however new syncs will not start while the application is in the background. 
  • The application will check for network connectivity with Dataverse when navigating between forms. If the network is not detected, or response from Dataverse is too slow (>5 seconds) the application will function in offline-only mode and not perform automatic syncs. The Offline status icon will display in a non-connected state. This network check with Dataverse is independent from the devices own network status.  
  • At any point after the users’ app has transitioned to run in Offline mode, the user can visit the Offline Status page and initiate a full sync by pressing the “Update” button. This sync will get the latest data from the server for all offline-enabled tables irrespective of sync interval.   
  • While using the offline ready application viewing a Grid, pressing the “Refresh” button from the mobile commanding bar will invoke a sync and refresh the view. The refresh button while viewing a form will refresh the view and not result in a new sync.  
  • When the application is not connected to Dataverse, elements which are not enabled for offline will be hidden. This includes some Command bar items and inline maps. 
Understand offline limitations

Offline is an important capability for Dynamics 365 and Field Service Mobile application. There are many capabilities, but also some limitations of offline when evaluating it along with the wider Dynamics 365 Power Platform. It is important to be aware of these limitations when implementing offline and especially with customizations and unique scenarios for your organization. 

Please review Power Platform offline limitations documentation for more details. 

Suggestions & feedback

Additionally, if there are new enhancement suggestions, it is recommended to submit those asks via the Field Service Mobile Ideas portal: Field Service Mobile – Ideas. This will allow the product team to evaluate new requests and plan for future product release waves. 

And for more best practices, please refer to Platform Offline Best Practices for further offline guidance.  

Continue reading Part 2 of this blog series.

The post Best Practices for Offline Mode in the Field Service mobile app – Part 1  appeared first on Microsoft Dynamics 365 Blog.

]]>
Working With Field Service Mobile Customizations  http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/09/27/working-with-field-service-mobile-customizations/ Wed, 27 Sep 2023 23:01:29 +0000 The Power Platform also offers significant customization opportunities in Field Service Mobile.

The post Working With Field Service Mobile Customizations  appeared first on Microsoft Dynamics 365 Blog.

]]>

Field Service Mobile is a Dynamics Power Platform Model Driven Application. This offers several advantages to the mobile application, including re-use of forms and views and consistency of user experience while accessing on the web, mobile, or tablet.  

The Power Platform also offers significant customization opportunities, both when customizing forms, adding business logic or integrations with other Power Platform capabilities like Power Automate, Canvas, or PCF Controls.  These capabilities make the Field Service Mobile application uniquely positioned to streamline your workflows, improve data quality and enhance your user experience.  

Customization Best Practices 

Customizing the Field Service Mobile application is a balance of enabling an ideal workflow for your business and providing the best possible user experience for your Frontline Workers. This balance must consider data availability of the mobile workforce, along with application performance and the overall user experience.  

In this blog post we’ll share some of the key best practices when evaluating and implementing customizations. 

  1. Use the default Field Service Mobile app module. The out-of-the-box Field Service Mobile app module has all the basic features and functionality your frontline workers require to get started with Field Service. Custom app modules can be used with the Field Service Mobile application but will not include some of the internal business logic such as Travel Calculations. Another advantage of using the default app module is that it will automatically receive product updates over time, while additional effort would be required to merge the same enhancements into a custom app module.  
  2. Avoid using HTML Web Resources.  Web Resources have many limitations on a mobile application when working with offline mode. It is highly recommended to use PowerApps Component Framework (PCF) controls, which are a better option for a more consistent cross-platform experience without the same limitations. 
    • Tip: If your situation necessitates the use of custom web resources, use code splitting and check code coverage in a browser to ensure only the minimum amount of code is loaded. Package shared code in their own shared web resource library instead of duplicating in each consuming resource. 
    • Tip: Be sure to define a unique namespace for custom JavaScript libraries to avoid having functions overwritten by other functions in another library. Learn how to write your first client script in model-driven apps
    • Tip: If using Offline mode, be sure to test your customizations on the mobile device in Airplane mode and variable cellular network conditions.  
  3. Handle errors properly and present the right message to end users. When implementing customizations, it is very important to handle edge-cases and errors in a way that provides a positive experience for your end users. This is especially true for async calls and network errors, where the Frontline Worker may have different results depending on devices network state.  
  4. Use XRM Web APIs instead of XHR/Fetch calls directly to the server.  XRM Web ApIs will route correctly to the local offline database or server based on offline configuration and network state of the app. 
    • Making direct server calls from the mobile application is not recommended as they can be unreliable and fail unexpectedly with poor network conditions.  By ensuring that all dependencies are in the offline data store by configuring the Mobile Offline profile with the correct data necessary for your user scenarios.   
    • If server calls are necessary, build an appropriate user experience to handle cases when the call may fail, or response is slow to return from the server. Making the network calls trigger based on explicit user actions, with a interface giving visual cues that a network call is happening and a response will be needed, will provide a better experience for the Frontline Worker.  
    • If using onload/onchange/command handlers and fetching data using XRM WebAPis, make sure you test the impact of those calls on application performance while in various network conditions. 
  5. Optimized resources for bandwidth. If adding custom JavaScript or images, be sure to optimize files which are downloaded to the device. We recommend to always trim and compress your JavaScript files and using SVG images instead of PNG to save bandwidth.  
  6. Declare solution dependencies between commands, web resources, and strings. Dependencies must be used to make a Web Resource available offline. For example, when an entity/form is enabled for offline usage, the JavaScript which is attached to the form for onload/onsave, would also be available offline.  For other files such as localization XML files, they need to be added as a dependency to your JavaScript so these XML files will also be available offline. Learn more about web resource dependencies
  7. Be aware of timing issues or race conditions. This is especially relevant when dealing with async calls. Test by adding network latency and CPU throttling to ensure a positive experience in real-world conditions. 
  8. Use Business Rules as first choice over custom client-side JavaScript. Business rules provide a mechanism to implement business logic with some guardrails to avoid some of the complexity that comes with custom JavaScript code. Please be aware there are some limitations with business rules, such as cases when OnChange events are required.  It is good to evaluate your business scenarios and choose the best path for your organization. 
    • Tip: If using JavaScript-based business logic, make sure you fetch minimal data and avoid joins/sorting if not needed.  
  9. Leverage out of box controls. As much as possible use out of the box controls, such as the Booking Calendar Control, which will be easier to support and receive product enhancements over time. 
  10. When enabling offline mode, make sure forms and views are aligned with configuration of the mobile offline profile. The individual configuring the forms and views should work closely with the person who will configure the mobile offline profile to ensure tables which are enabled on views will be available while running in offline mode. Be sure to include error handling if there are instances when an entity will not be available while offline.  
  11. Leverage tools to debug customizations. Debugging is important when introducing JavaScript customizations to your experience. Debugging a mobile app has unique challenges versus a web browser. This is especially true with capabilities like Offline mode are enabled on the mobile app. To meet this need, leverage debugging tools shipped with the Android and Windows model driven apps. Detailed steps to debug are found in Power Apps documentation.  

Customizing a model driven application can be a powerful way to enhance the user experience and functionality of your solution. However, it also requires careful planning and testing to ensure optimal performance, usability, and compatibility. In this blog post, we have shared some best practices and tips on how to customize your model driven application effectively. We hope you have found this information useful and that you will apply it to your own projects. Thank you for reading and happy customizing! 

Additional Resources 

The post Working With Field Service Mobile Customizations  appeared first on Microsoft Dynamics 365 Blog.

]]>
Top 5 “dos and don’ts” when you implement Dynamics 365 Field Service Mobile http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/07/12/top-5-dos-and-donts-when-you-implement-dynamics-365-field-service-mobile/ Wed, 12 Jul 2023 21:19:40 +0000 Dynamics 365 Field Service Mobile is a robust and scalable mobile application created for your frontline workers. With the capabilities of Microsoft Power Platform and Dataverse, you can customize and configure the mobile application to meet your unique business needs. In this post, we'll explore the most important things you can do—and not do—to create the best possible experience for your frontline workers when you implement Field Service Mobile.

The post Top 5 “dos and don’ts” when you implement Dynamics 365 Field Service Mobile appeared first on Microsoft Dynamics 365 Blog.

]]>

Dynamics 365 Field Service Mobile is a robust and scalable mobile application created for your frontline workers. With the capabilities of Microsoft Power Platform and Dataverse, you can customize and configure the mobile application to meet your unique business needs. In this post, we’ll explore the most important things you can do—and not do—to create the best possible experience for your frontline workers when you implement Field Service Mobile.

5 “Dos” when you implement Field Service Mobile

Do use “mobile offline for frontline workers

Frontline workers often perform tasks in areas with variable network connectivity. Online-only applications can experience slow performance when network connections are poor. Responses can be delayed or even fail when the network isn’t available.

Using offline-first mode with Field Service Mobile provides a consistent user experience for frontline workers regardless of network conditions. Even if the network is often available, offline mode has advantages for your organization.

  • The offline-enabled application stores and retrieves data from a local database on the device. App performance improves without the dependency on network calls to fetch data from the server.
  • When a network is available, the offline application automatically synchronizes data with the server. Without a network connection, the sync pauses until the device is back online. Frontline workers can focus on completing their tasks without worrying about network connectivity.
  • Frontline workers’ job progress is not delayed by long waits or networking errors in cases when they temporarily lose network access.

Learn more about offline mode:

Do keep the mobile workflow simple

When configuring Field Service Mobile, you have control over the precise layout of forms and fields. It’s important to keep core user scenarios in mind when defining the layout of your forms to create a streamlined experience. Focus your customizations on making the interface intuitive and efficient. This is especially useful for new employees to help them familiarize themselves with the necessary processes and steps to complete their work.

Here are some suggestions to simplify the application:

  • Use fields in a logical sequence. Avoid forcing users to move between forms.
  • Consider performance when you lay out form fields and tabs. Fields that are off-screen are loaded on a delay to avoid impacting the user accessing data that’s visible on the screen. However, sub-grids and charts are loaded with the initial form and can have an impact on performance if they’re added to the form’s default tab.
  • Use Work Order Service Tasks, Services, and Products. These out-of-the-box tables help guide frontline workers to complete a work order.

Do minimize customizations

Field Service Mobile provides much of the necessary app experience out of the box, but there are times when business requirements necessitate business logic unique to your organization.  When customizations are necessary, follow best practices and use common Power Platform capabilities. This enables your organization to get the latest new features and enhancements sooner. It also helps to improve supportability and lower maintenance costs.

We recommend documenting your customizations. This helps you to understand changes and set yourself up for success when making future revisions.

Do train users and use feedback for improvements

Training your users on how to use the app and any unique workflows leads to higher productivity and satisfaction. Training should include a feedback loop to assess user satisfaction and be responsive to misunderstandings or requested changes that will improve the frontline workers’ workflow.

Do take advantage of documentation and the Field Service community 

A wealth of information is available in Field Service documentation and learning sites. Help is also available in the community-driven Field Service forum. Use these resources to build solid understanding of Field Service, Dynamics 365, and the Power Platform.

General documentation:

Customization:

Community support and feature requests:

5 “Don’ts” when you implement Field Service Mobile

Don’t skip user acceptance testing 

Assessing the end-to-end application in real-world scenarios with your organization’s customizations and data is critical to a successful rollout. This can be a challenge when introducing diverse Field Service scenarios in addition to complex online and offline capabilities.

  • Focus testing on the “happy path” workflow through the application. Make sure frontline workers can complete that workflow without error in various situations.
  • Test with the same set of devices that users will have.
  • Test with the same security role and data access that users will have.
  • Test with production-level amounts of data.
  • Test offline mode in variable network conditions emulating real-world usage.
    • Strong network access: Wi-Fi or stable cellular networkNo network access: Device disconnected
    • Intermittent or ‘flaky’ network access: Weak or variable cellular signal or areas of high latency
  • Test customizations and make sure they work well on different devices with the network and in offline scenarios.
  • Enable a feedback loop with your tests. Listen closely to actual users who are taking part in user acceptance testing. Plan a phase to incorporate feedback, which will help users during the final rollout.

Don’t use low-performance hardware or outdated software 

Mobile devices evolve quickly, and it’s best to keep up to date by using recent hardware with sufficient memory and processing power. Using modern, high-performance mobile devices increases productivity through faster access to data and better battery life. Additionally, apps on modern devices are more reliable and less prone to slowdowns or crashes.  

Field Service Mobile recommends evaluating the device based on CPU benchmark scores as given in the system requirements documentation.  

Don’t implement offline mode without understanding data needs

It’s highly recommended that you use offline mode with Field Service Mobile. When implementing offline mode, plan based on your scenarios and data needs for a successful experience for your users.

Include only the required data. It’s important to take a minimal amount of data offline as required for frontline workers to perform their work. Reducing data helps with the sync time, cellular data usage, device battery usage, and device storage. It’s important to understand users’ true data needs and how security roles influence data access.

Minimize the number of relationships between tables to reduce query complexity. The amount of data isn’t the only factor to consider. Complex queries with multiple joins against large tables can also have a high impact on offline sync time.

Avoid frequent schema changes. Schema changes may force the redownload of tables that had changes, resulting in longer sync times.

Be aware of server-side business logic. The offline-enabled Field Server Mobile application syncs data from the server at regular intervals. If part of a workflow depends on interaction with the server, the response may take minutes to return to the client when the network is available and not at all if the user is truly offline. It’s recommended that you move as much business logic to the client as possible to reduce wait time and dependency on the network.

Understand limitations. There are limitations on the offline capabilities of the Power Platform.

Refer to the offline profile guidelines for more information.

Don’t design a workflow that includes switching applications or context 

Try to bring as much of the Field Service workflow into the Field Service Mobile application as possible so frontline workers don’t need to switch between multiple applications. Maintaining multiple applications is time-consuming and frustrating for the user and increases organizational overhead. Use the Power Apps Component Framework (PCF) to build custom experiences, bringing in other data sources when necessary.

If alternate applications are required, try to ease the burden of context switching by using deep links to navigate between the apps.

Don’t reuse web forms on mobile devices 

A benefit of working on the Power Platform is being able to reuse forms on both web and mobile. This capability can make development of your form more efficient, reduce maintenance, and provide a common user experience regardless of how the form is accessed.

However, a form intended for use on a larger-screen device may have information that’s not necessary for a technician using the mobile application. For this reason, we recommend creating mobile-specific forms in some cases to provide an optimized experience that contains only the data that’s necessary for the user.

Conclusion

Field Service Mobile is a powerful application that brings the robust capabilities of Dynamics 365 and the Power Platform into the field. Following these best practices and avoiding common mistakes will help you implement Field Service Mobile successfully.


Not yet a Dynamics 365 customer? Take a tour and get a free trial.

The post Top 5 “dos and don’ts” when you implement Dynamics 365 Field Service Mobile appeared first on Microsoft Dynamics 365 Blog.

]]>
Guest Access with Field Service Mobile: Introducing Tenant Switcher for Field Service Mobile http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/06/13/guest-access-with-field-service-mobile-introducing-tenant-switcher-for-field-service-mobile/ Tue, 13 Jun 2023 16:39:45 +0000 Dynamics 365 has made this vendor onboarding process even easier with Wave 1 2023 by introducing Tenant Switcher for Field Service Mobile.

The post Guest Access with Field Service Mobile: Introducing Tenant Switcher for Field Service Mobile appeared first on Microsoft Dynamics 365 Blog.

]]>

A common scenario for Field Service organizations is to augment their staff with external vendor resources.  Leveraging Azure Active Directory B2B Guest Access, vendors can be added to the organizational directory without being created as full first party users within the organization. This allows a clean delineation of users to manage security and data access. 

Dynamics 365 has made this vendor onboarding process even easier with Wave 1 2023 by introducing Tenant Switcher for Field Service Mobile. Tenant Switcher provides a user interface where guest users can now easily switch between their Home and Guest Tenants. 

graphical user interface, application, PowerPoint

Other considerations to note: 

  • Guest Users require a Field Service license and appropriate Security role for access to Field Service Mobile. 
  • Model Driven Application Authentication supports work or school accounts. AAD B2B Guest users configured with a personal account would not be able to authenticate and access the Field Service Mobile application directly. 

Field Service (Dynamics 365) mobile app overview  – Dynamics 365 Field Service | Microsoft Learn

The post Guest Access with Field Service Mobile: Introducing Tenant Switcher for Field Service Mobile appeared first on Microsoft Dynamics 365 Blog.

]]>
Fire up your mobile field service game: offline enhancements for a seamless user experience http://approjects.co.za/?big=en-us/dynamics-365/blog/it-professional/2023/06/09/fire-up-your-mobile-field-service-game-offline-enhancements-for-a-seamless-user-experience/ Fri, 09 Jun 2023 22:05:09 +0000 The offline-enabled application will allow frontline workers to perform functions while they are in the field, without depending on an internet connection. This keeps them productive even in environments without high quality network coverage, which can be a common problem in rural locations or even remote urban areas where network coverage is poor.

The post Fire up your mobile field service game: offline enhancements for a seamless user experience appeared first on Microsoft Dynamics 365 Blog.

]]>

‘Offline-first’ with the Dynamics 365 Field Service Mobile application offers many advantages for frontline workers. The offline-enabled application will allow frontline workers to perform functions while they are in the field, without depending on an internet connection. This keeps them productive even in environments without high quality network coverage, which can be a common problem in rural locations or even remote urban areas where network coverage is poor.

In this blog post we will share details on recent enhancements to the Dynamics 365 ‘Offline-first’ as well as some new capabilities to help your organization debug customizations with the offline application. Let’s go!

Wave 1 2023 enhancements

With the release of Wave 1 2023, frontline workers will have a faster sync experience and better visibility into the sync status of their offline-enabled Field Service Mobile application. 

The offline sync icon is now moved from the sitemap to the header of the application providing an ever-present status of their offline app.

graphical user interface, application

Based on states of the icon, the offline-enabled frontline worker can see if their application is connected to Dataverse, a sync is actively running, an up-sync in pending, or if the previous sync resulted in an error.  This will allow the user to make informed decisions while in the field. For example, if an up-sync is pending after a period of being without network access, they will know to connect and allow that sync to complete so all their changes can be viewed by the back office.

graphical user interface, table

The offline status page is also enhanced with more details on the sync, the size on disk and app connectivity status.

graphical user interface, text, application, email

In addition to offline-related interface update, the sync experience is faster and more reliable. This includes optimizations to intelligently sync table or metadata changes, and improved parallelization to bring down data faster – including when the application is accessed in a way which forces a record sync such as launching the app via push notification.

Debugging the offline application

Debugging on a mobile application can be a difficult task, which is made more challenging when introducing unique aspects of ‘Offline’ mode. To help support customers who require customizations and enhancements while working offline we have introduced debugging capabilities for the model driving applications running on Android and Windows platforms, iOS platform compatibility is coming soon.

Debugging on Android

Debugging on Windows

References & resources

Please check out Dynamics 365 Power Apps Documentation for even more information on Offline mode – best practices, limitations to consider, and more

Offline Profile Guidelines

Offline Capabilities & Limitations

The post Fire up your mobile field service game: offline enhancements for a seamless user experience appeared first on Microsoft Dynamics 365 Blog.

]]>