Best Practices for Offline Mode in the Field Service mobile app – Part 3

Best Practices for Offline Mode in the Field Service mobile app – Part 3

This article is contributed. See the original author and article here.

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.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.

Microsoft at PASS Data Community Summit 2023!

Microsoft at PASS Data Community Summit 2023!

This article is contributed. See the original author and article here.

 


t’s gearing up to be an exciting week November 14th – 17th as we prepare for this year’s Microsoft Ignite and PASS Data Summit all happening at once! While across the way we’ll be sharing the latest from Microsoft all up, taking place at the Convention Center. We’re excited to be with our community digging into all things data. We’re back as premier sponsors together with our partners at Intel.  With over 30+ sessions we’ll cover everything from ground to the cloud, with SQL Server, Azure SQL, all the way up to powering analytics for your data with Microsoft Fabric. This year, we’ll also bring in our developer community with sessions covering our solutions for open-source database, PostgreSQL.


 


We hope you’ll join us to “Connect, Share and Learn” alongside the rest of your peers at the PASS community. The official event kicks off with our keynote Wednesday morning with Shireesh Thota Vice President of Azure Databases who’s been hard at work getting ready for the event:


https://twitter.com/AzureSQL/status/1720185734689079787 


 


Below you’ll find just some of the highlights happening at this year’s PASS Summit:


 


Pre-Cons


Monday: The Cloud Workshop for the SQL DBA


Bob Ward


This workshop will provide a technically led driven approach to translating your knowledge and skills from SQL Server to Azure SQL. You will experience an immersive look at Azure SQL including hands-on labs, no Azure subscription required.


 


Tuesday: Azure SQL and SQL Server: All Things Developers


Brian Spendolini, Anagha Todalbagi


In this workshop, we’ll dedicate a full day to deep diving into each one of these new features such as JSON, Data API builder, calling REST endpoints, Azure function integrations and much more, so that you’ll learn how to take advantage of them right away. Also being covered:



  • Understand the use cases

  • Gain practical knowledge that can be used right away


 


Keynote


Wednesday:
Shireesh Thota, Vice President of Azure Join Microsoft’s Shireesh Thota and Microsoft engineering leaders for a keynote delivered live from Seattle. We’ll showcase how the latest from Microsoft across databases, analytics, including the recently announced Fabric, seamlessly integrate to accelerate the power of your data.


 


General Sessions


30+ more sessions over three days: Check them all out here.
From SQL Server to Azure SQL and analytics and governance, Microsoft’s experts will bring the latest product develops to help you build the right data platform to solve your business needs.


 


Connect, Grow, Learn with us!


As a special offer from Microsoft, enter the code AZURE150 at checkout to receive $150 off on the 3-Day conference pass (in-person).


SQL Server: 30 and thriving!


Already registered? Pop on by opening night as we say Happy Birthday SQL Server!


Govanna_0-1699578230172.png


 


Register today at https://passdatacommunitysummit.com/ 


 


See you there!


 


 


 

Performance and Storage Improvements Coming to Financial Dimensions

Performance and Storage Improvements Coming to Financial Dimensions

This article is contributed. See the original author and article here.

Introduction

A new feature is coming that is designed to improve performance when working with financial dimensions and reduce the overall storage cost of storing financial dimension values. The initial changes for improved performance and reduced storage will being rolling out in application release 10.0.38.  There are 3 new fields being added to the table Dimension code combination (DimensionAttributeValueCombination) for this initial application release.  

You will see this improvement fully realized in application release 10.0.42 when 22 fields and related indexes are removed.  These fields all begin with SystemGeneratedAttribute and are used for processes like financial journal entry.  

Feature details 

Enabling the feature Financial dimension performance and storage improvement feature will allow your environment to use just the 3 fields newly added to this table.   

graphical user interface, application

If you would like to test the removal of the 22 fields and indexes please contact technical support for further information and early enablement before application 10.0.42. Testing this change with any customizations that utilize data directly from this table – which should be very uncommon – will ensure smooth transition when they are permanently removed in 10.0.42.  

Why is this a benefit? Removing these fields and indexes from this highly used table will provide an improved query and insert performance as well as reduced storage cost.  While removing 22 fields is a great benefit, the larger gain for your environment is the removal of the related indexes.   

Call to action 

After enabling this feature in your test environment, verify all of your customizations and key business scenarios. Because all of these data model changes are fully encapsulated in Microsoft owned API calls, there should be no impact for environments with proper customizations. Any customization accessing this table should review the business need and consider other API endpoints for proper access.  

Learn more 

Financial dimensions – Finance | Dynamics 365 | Microsoft Learn 

Define financial dimensions – Finance | Dynamics 365 | Microsoft Learn 

The post Performance and Storage Improvements Coming to Financial Dimensions appeared first on Microsoft Dynamics 365 Blog.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.

Best Practices for Offline Mode in the Field Service mobile app – Part 3

Best Practices for Offline Mode in the Field Service mobile app – Part 2

This article is contributed. See the original author and article here.

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.  

Watch this space – the next blog is coming in 2 days!

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.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.

Microsoft is a Leader in The Forrester Wave™: Sales Force Automation, Q3 2023

Microsoft is a Leader in The Forrester Wave™: Sales Force Automation, Q3 2023

This article is contributed. See the original author and article here.

Selling is all about relationships. We hear a lot these days about the disconnect that our increasingly digital world can create. But at Microsoft, we believe that digital tools, especially those powered by generative AI and real-time insights, can help strengthen sellers’ relationships with their customers. We’re continually investing in Microsoft Dynamics 365 Sales to enable sellers to engage with their customers more meaningfully. We are pleased to announce that Microsoft has been named a Leader in The Forrester WaveTM: Sales Force Automation, Q3 2023 report, with top scores possible in the Vision, Innovation, and Roadmap criteria for our sales force automation (SFA) platform.

placeholder

Reducing complexity to drive seller success

The role of a seller has only grown more complex. A process that used to involve a couple of phone calls and face-to-face meetings now includes everything from targeted emails to impromptu online chats. Organizations rely on everything from digital sellers to field sellers to customer success champions to ensure their customers are supported end-to-end throughout the sales journey. Especially with hybrid workplaces and shrinking travel budgets, sellers need assistance from technology to build connections—between colleagues, across multiple data sources, and with customers. 

The challenge is that sellers need to build these connections and foster relationships without sacrificing productivity. According to the Microsoft Work Trend Index, sellers spend more than 66 percent of their day managing email, leaving only about a third of their time for actual sales activities. Our answer is to provide simple solutions—focusing on collaboration, productivity, AI, and insights—to help sellers focus on closing deals. As Forrester states in its report, “Dynamics [365 Sales] showcases how SFA and office productivity solutions work together.” We believe this is what has earned our position as a Leader: we built solutions to give sellers access to real-time customer insights, subject matter experts, relevant data across different sources, and important customer and account information right in their app of choice—no context switching necessary.

Dynamics 365 Sales works natively with Microsoft Teams to create open lines of communication for collaborating and aligning on work items across marketing, sales, and service departments. Additionally, copilot capabilities bring next-generation AI and customer relationship management (CRM) platform updates into collaborative apps like Outlook and Teams, unlocking productivity for sellers whether they are working in Dynamics 365 Sales or Microsoft 365 apps. By helping to eliminate manual data entry, meeting summarization, and other cumbersome processes, Dynamics 365 Sales ensures sellers have more time to create and nourish their customer connections, ultimately driving sales.

Providing insights that improve customer retention—and grow revenue

Referring to Microsoft, Forrester also reports that “Embedded insights are a highlight of the product”—something that Microsoft customer, DP World, knows well. DP World is the leading provider of worldwide, end-to-end supply chain and logistics. DP World implemented Dynamics 365 Sales to help the company diversify and scale after an acquisition that was driving new demand and traffic to the company. Dynamics 365 Sales provides its sellers predictive lead scoring and prioritized worklists based on AI, giving full visibility into its sales funnels and helping it effectively qualify leads and opportunities. This reduced DP World’s sales cycle, enabling five times more proactive sales and two times greater customer retention.

Learn more about sales

We’re excited to have been recognized as a Leader in The Forrester Wave and are committed to providing innovative sales force automation platform capabilities to help our customers accomplish more.

Businesswoman in remote office working on laptop

Microsoft named a Leader

We received top scores in The Forrester Wave™: Sales Force Automation, Q3 2023.

Learn more about:

Contact your Microsoft representative to learn more about the value and return on investments, as well as the latest offers—including a limited-time 26 percent savings on subscription pricing—for Dynamics 365 Sales Premium.


Source: Forrester: “The Forrester Wave™: Sales Force Automation, Q3 2023”, Forrester Research, Inc., 20 September 2023.

The post Microsoft is a Leader in The Forrester Wave™: Sales Force Automation, Q3 2023 appeared first on Microsoft Dynamics 365 Blog.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.