Jump to content

Releases/Winter 2025: Difference between revisions

From Resco's Wiki
No edit summary
 
(47 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Releases TOC}} {{WIP}}
{{Releases TOC}}  
The 18.0 / Winter 2025 release is {{Popup|planned|The apps are released first (gradual rollout). The server part follows within a few days.}} for '''January 2025'''. Find the '''download''' links for the latest preview version on the '''[[Preview#Where_to_find_beta_releases|Preview page]]'''.
The 18.0 / Winter 2025 release was {{Popup|released|The apps are released first (gradual rollout). The server part follows within a few days.}} on February 15, 2025.
* [https://www.resco.net/blog/winter-2025-update/ Winter 2025 update: AI in Woodford, Data Model Explorer, multiple UI/UX enhancements, and more] {{Badge|Blog}}
 
{{YT|-F5Ww5t_kBc}}


== Mobile App Development Toolkit ==
== Mobile App Development Toolkit ==
=== Important: Deprecating legacy WebView in Microsoft Store app ===
The Microsoft Store version of [[Resco mobile apps]] hosts all iframes in two different WebView controls:
* The legacy WebView, which is based on the outdated Microsoft Edge v18 engine
* The alternative Edge WebView2 is based on the latest Chromium-based engine, which is similar to the Microsoft Edge browser.
WebView2 is integrated into the Windows operating system as a separate application and is updated automatically. As legacy WebView doesn't meet upcoming web standards, we decided to fully replace it with Edge WebView2 and deprecate it in early 2025.
See [[Deprecations#Active_deprecations|Active deprecations]] for information about the rollout plan and recommended actions.


=== Important: Whitelist new Resco web services ===
=== Important: Whitelist new Resco web services ===
Line 42: Line 56:


After the change, Resco Mobile CRM will no longer connect to the servers directly but instead go via a [https://learn.microsoft.com/en-us/azure/frontdoor/ Front Door], <code>svc.resco.net</code>. If this fails, the app will try to connect directly to the servers, i.e., their IP addresses should remain allowed. It is necessary, however, to add the IP address of the Front Door. The Front Door infrastructure is managed by Microsoft. You can find the IP addresses using the Service Tag "AzureFrontDoor.Frontend". If you need assistance, contact Resco support.
After the change, Resco Mobile CRM will no longer connect to the servers directly but instead go via a [https://learn.microsoft.com/en-us/azure/frontdoor/ Front Door], <code>svc.resco.net</code>. If this fails, the app will try to connect directly to the servers, i.e., their IP addresses should remain allowed. It is necessary, however, to add the IP address of the Front Door. The Front Door infrastructure is managed by Microsoft. You can find the IP addresses using the Service Tag "AzureFrontDoor.Frontend". If you need assistance, contact Resco support.
=== Sync config: parameter change ===
We have renamed one of the parameters in [[Advanced_sync_setup#Platforms%2C_devices|Advanced sync setup (sync config)]]: The platform-specific switch <code>WinRT</code> was replaced with <code>WinUI</code>. If you are using platform-specific setup of sync config, you might need to revisit and update the file.
[[File:Sync-config-editor-in-woodford.png|600px|alt=Sync config editor]]
=== Multiselect records on maps ===
The map view allows you to select multiple records. The [[View#Actions_when_multiple_records_are_selected|multi-select commands]] available on the view can be started from the map.
[[File:Multi-select-records-on-the-map.png|600px|alt=select multiple records on the map view and run commands.]]
The lasso tool is not available in the iOS version of the app for users who opt to use Google Maps. However, these users can still manually select the records one by one.
=== Redesigned Setup/Settings section of the mobile app ===
Resco Mobile CRM is a highly flexible and configurable tool. As a consequence, it has many various settings that users can configure. Over time, the [[setup]]/settings section of the app grew unorganized. We have now categorized the settings into different groups, moving popular settings to a prominent position.
[[File:Setup-settings-page-in-resco-mobile-crm.png|400px|alt=setup/settings page in resco mobile CRM]]
As part of the redesign, some setup options were deprecated and are no longer accessible to users. If some of the deprecated settings are useful to you, you need to contact Resco support to unlock the deprecated section of Setup for you.
[[File:Deprecated-setup-options.jpg|250px|alt=deprecated setup options]]


=== Safer background sync ===
=== Safer background sync ===


Background synchronization means that users can continue using the app while the sync is in progress. Rarely, this can result in data integrity problems when records change in the offline database which the synchronization is in progress. Woodford administrators now have the tools to prevent these issues.
[[Background synchronization]] means that users can continue using the app while the sync is in progress. When both the user and the synchronization process attempt to write to the database at the same time, users are notified and have to wait. However, in rare situations, data integrity problems may occur, for example, when slow server processes are combined with fast user actions. Woodford administrators now have additional tools to prevent or mitigate these issues.
 
In [[Form#Creating_a_form|form properties]], you can now set up '''Background sync behavior'''.
* '''Block save during sync''' - forbids form save while background sync is running. It applies for Save button click as well as invoking form Save via rules or JSBridge. This option favors keeping the schedule of background sync at the expense of potentially slowing down the data entry.
* '''Block save during sync, don’t start sync while form is opened''' - blocks background sync while the form is open. If sync is already running, Save is forbidden until sync finishes. This option sacrifices the frequency of background sync, favoring uninterrupted data entry.
* '''No action''' - this is the current behavior where concurrent changes in both client and server may (in rare cases) cause data inconsistency or even data loss.
 
[[File:Background-sync-behavior.png|400px|alt=background-sync-behavior-in-forms]]
 
You can set up project-specific default behavior in the app project [[Configuration#UI|configuration]] on the UI tab.
 
For more fine-grained control, the JSBridge object [https://github.com/Resconet/JSBridge/wiki/MobileCRM.UI.EntityForm EntityForm] offers functions tryEnterUiTransaction and leaveUiTransaction that can be used to define more granular UI transactions scopes. For example, you can block sync while custom code invoked from a custom button click is modifying and saving related records.


=== Managing security roles for app projects ===
=== Managing security roles for app projects ===
Line 51: Line 100:
Woodford admins can now enable, disable, and publish security roles in app projects much faster. The improvements are most notable for organizations with an extreme number of security roles.
Woodford admins can now enable, disable, and publish security roles in app projects much faster. The improvements are most notable for organizations with an extreme number of security roles.


=== Google Maps for Android ===
=== Google Maps for Android version of Resco Mobile CRM ===
[https://developers.google.com/maps/documentation/android-sdk/renderer New map renderer]
 
The map renderer (part of Maps SDK for Android) used in the Android version of Resco Mobile CRM is being decommissioned by Google. We have now updated our app to use a [https://developers.google.com/maps/documentation/android-sdk/renderer new renderer].
 
=== Google Maps for Microsoft Store version of Resco Mobile CRM ===
 
The Microsoft Store version of Resco Mobile CRM previously used Bing Maps. Unfortunately, [https://www.microsoft.com/en-us/maps/bing-maps/discontinued-services Bing Maps for Enterprise is being deprecated]. Therefore, we have switched to Google Maps on this platform. This change affects standard maps as well as the [[Route plan]]ner.
 
=== New map providers for Geocoding ===
 
The [[geocoding]] feature of Woodford is also affected by [https://www.microsoft.com/en-us/maps/bing-maps/discontinued-services Bing Maps for Enterprise deprecation]. We are now supporting additional map providers: Azure, Google, and OpenStreetMap. Make sure to provide a valid map key when switching map providers.
 
[[File:New-map-providers-for-geocoding.png|alt=new map providers for geocoding]]
 
=== Photo permissions on Android ===
 
[https://support.google.com/googleplay/android-developer/answer/14115180 Google Play's Photo and Video Permissions policy] is changing to better protect photos and videos, which are considered personal and sensitive user data. As a result, the way how users can take new images or access images in the storage may change.


=== Google Maps configuration changes ===
=== Google Maps configuration changes ===
Line 79: Line 143:


[[Global constants]] in rules are now supported in the web app version of Resco Mobile CRM.
[[Global constants]] in rules are now supported in the web app version of Resco Mobile CRM.
=== Open a form as "dirty" ===
In rules, you can use the [[Rules_editor#openForm|OpenForm operation]] to open a form and optionally modify some form data in the process. Before this release, such form was not "dirty", i.e., the form does not appear as having any pending changes (the save button is not displayed, and the back button does not trigger the prompt to save the record). With this release, the OpenForm operation can mark the form as dirty if you want to warn the user that the record data changed and requires saving.
[[File:Specify-dirty-in-openform.png|600px|alt=mark form dirty when using openform]]


=== Single card forms ===
=== Single card forms ===


You can now configure [[flexible form]]s to display only a single card expanded at a time. All other cards are collapsed.
You can now configure [[flexible form]]s to display only a single card expanded at a time. All other cards are collapsed.
[[File:Cards-expanding-single-card.png|x470px|alt=set flexible form to display a single card at a time]]
[[File:Single-card-layout-in-the-app.png|x470px|alt=single card layout in action]]
=== Custom home and theming ===
The interaction between the custom home and modern theming with [[Theme#Advanced_color_settings_and_tokens|color tokens]] is now more intuitive. Moreover, we have greatly improved the documentation about home screen colors and custom row design: [[Home_screen#Custom_colors_and_design|Custom colors and design]].
=== Restore parent style for child projects ===
If you are using [[App_projects#Project_hierarchy|app project hierarchy]], the [[style editor]] now allows you to delete a child project's custom style and restore its dependency on the parent app project.
[[File:Style-editor-restore-parent-style.png|alt=restore parent style]]
=== New link types "in" and "exists" ===
We are introducing new options in the [[Sync Filter]] (and other Woodford tools) that can optimize sync performance for large datasets. In many scenarios, such as in field service, Woodford administrators use [[Sync Filter examples with linked entities|Sync Filter with linked entities]] to finetune the records transferred to the mobile app during synchronization. In addition to <code>inner</code> links and <code>outer</code> links, we now support <code>link-type='in'</code> and <code>link-type='exists'</code>.
The new link types are available for Dataverse, and only in the Woodford tool.
For an in-depth discussion about linked entities in FetchXML and the rationale behind the new link types, see [[Linked entities in FetchXML]].


=== Salesforce chatter changes ===
=== Salesforce chatter changes ===
Line 88: Line 179:
When using [[Chat#Chatter_for_Salesforce|Salesforce Chatter]], it is now possible to configure different sync filters for Feed Items based on parent entity. To do so, admin can use Sync Filter of FeedItem entity. Just add separate inner link per parent entity via ParentId lookup and add conditions in the filter.
When using [[Chat#Chatter_for_Salesforce|Salesforce Chatter]], it is now possible to configure different sync filters for Feed Items based on parent entity. To do so, admin can use Sync Filter of FeedItem entity. Just add separate inner link per parent entity via ParentId lookup and add conditions in the filter.


<gallery heights="212px" mode="packed-hover" style="text-align:left">
In the example below, separate filters are used for User and Account.
Sample-sync-filter.png|Example: separate filters for User and Account
 
</gallery>
[[File:Sample-sync-filter.png|600px|alt= example: separate filters for user and account]]


Note: Only inner links are allowed. Nesting inner links is also possible. However, conditions outside links referred via alias are not supported. Such sync filters will fail in runtime. You need to add all filter conditions inside the link.
Note: Only inner links are allowed. Nesting inner links is also possible. However, conditions outside links referred via alias are not supported. Such sync filters will fail in runtime. You need to add all filter conditions inside the link.
=== Check entity usage in JSBridge ===
In the latest addition to the check field usage feature ([[Data_model_in_mobile_apps#Which_fields_are_used?|Which fields are used]]), we are now searching in your custom code (offline HTML folder) for '''entity names'''. More specifically, the check usage displays occurrences of the strings <code>'entity_name'</code> and <code>"entity_name"</code> in JS and HTML files. We are not scanning for field names.
=== RFID scanning ===
[[Resco mobile apps]] can connect to [[Zebra]] Technologies' RFD4031 RFID scanner using Bluetooth. When the user scans RFIDs, the app can handle this event using [[JSBridge]]. The list of all nearby RFID tags is available for further processing.
This feature is available for iOS only.
Several new functions are available in JSBridge to handle the communication ([https://github.com/Resconet/JSBridge/wiki/MobileCRM.Services.ZebraScanner MobileCRM.Services.ZebraScanner object]), including:
* MobileCRM.Services.ZebraScanner.connect - Connects to the Zebra scanner.
* MobileCRM.Services.ZebraScanner.onScan - Registers the handler for the scan event.
=== Modernize JSBridge API for generating mobile reports ===
Working with the [https://github.com/Resconet/JSBridge/wiki/MobileCRM.MobileReport MobileReport object] has been simplified. The runReport and runReportAsync functions no longer require additional boilerplate code. For example, you can
* choose source record by Name or ID
* choose report by Name or ID
* choose report language (questionnaires only)
* provide the recordToAttach argument that automatically handles creating of attachment to the report
* provide a wait message, etc.
The new API is async by default (using promise, not callback).
=== New support tool: POA analyzer ===
The latest addition to Resco Mobile CRM is designed for support providers. It can help analyze problems related to server timeouts on the Power Platform. The PrincipalObjectAccess (POA) table stores information about record sharing in CRM. It tends to grow over time, often full of orphaned unused records. Unfortunately, a large POA table may slow down other server requests, including the communication between Resco mobile apps and the server. The [[POA analyzer]] tool in Resco Mobile CRM displays statistical information about the POA table. Users and tables with the most shared records are listed. This can help you identify potential for optimizing the table.
=== Data model explorer: Relations ===
The [[data model explorer]] in Woodford offers a new feature: you can display all relations of a table at a glance. The screen is divided into three tabs: one-to-many (1:N), many-to-one (N:!), and many-to-many (NN) relations.
[[File:Relationships-at-a-glance.png|alt=table relations at a glance]]
=== Woodford AI assistant updates ===
Woodford includes an AI-powered assistant/chatbot that can provide help related to Resco products and tools. The information is sourced from our wiki and academy. In this release, we upgraded the assistant to use the latest language model. Also, the assistant is now freely available to all users.
[[File:AI-assistant-in-Woodford.png|600px|alt=AI assistant in woodford]]
=== Resco Cloud: File field ===
Resco Cloud now supports a new type of fields, File. It is compatible with [[File column]] from Dataverse/D365, which means that in integration scenarios with these backends, File columns can now be seamlessly synchronized. See [[File_column#File_field_in_Resco_Cloud|File field in Resco Cloud]] for information on how the field works.


== Power Solutions ==
== Power Solutions ==

Latest revision as of 08:34, 7 March 2025

The 18.0 / Winter 2025 release was released on February 15, 2025.

Mobile App Development Toolkit

Important: Deprecating legacy WebView in Microsoft Store app

The Microsoft Store version of Resco mobile apps hosts all iframes in two different WebView controls:

  • The legacy WebView, which is based on the outdated Microsoft Edge v18 engine
  • The alternative Edge WebView2 is based on the latest Chromium-based engine, which is similar to the Microsoft Edge browser.

WebView2 is integrated into the Windows operating system as a separate application and is updated automatically. As legacy WebView doesn't meet upcoming web standards, we decided to fully replace it with Edge WebView2 and deprecate it in early 2025.

See Active deprecations for information about the rollout plan and recommended actions.

Important: Whitelist new Resco web services

We are changing the infrastructure of our web services, most notably license checks. If you are using our solution in a protected enterprise environment and you previously whitelisted access to iservices.resco.net (or its IP address representation), you probably need to whitelist additional hosts/IP addresses.

We strongly suggest to allow additional hosts: svc.resco.net, svc-01.resco.net, svc-02.resco.net. See also the detailed information below.

This change can affect the following services:

  • Resco Mobile CRM license checks
  • Location tracking
  • Woodford license checks
  • Power Solutions license checks (Forms+, Steps+, Docs+)
  • Push notifications

Inbound communication

Old host New host IP address
iservices.resco.net svc-01.resco.net 52.178.108.57, 52.174.189.28, 52.174.197.249, 52.174.184.182, 51.144.110.240, 40.91.197.7, 51.105.222.217, 51.105.223.23, 51.105.223.245, 51.124.144.104, 51.124.144.135, 51.124.144.234, 51.124.145.103, 51.124.146.134, 51.124.146.152, 51.124.146.186, 51.124.146.199, 51.124.147.1, 52.174.184.18
iservices.rescocrm.net svc-02.resco.net 13.67.218.66, 23.101.119.168, 13.67.143.202, 104.43.212.51, 52.173.22.3, 168.61.210.239, 13.89.41.125, 20.221.38.166, 20.221.38.194, 20.221.38.247, 20.221.39.35, 20.221.39.146, 20.15.152.120, 20.15.152.213, 20.15.155.30, 20.15.155.64, 20.15.158.8, 20.15.158.67, 20.221.32.136, 13.89.172.6

Outbound communication

Blocking of outbound communication on the client side is relatively rare. Before this change, clients connected to physical servers; it was enough to add their inbound IP addresses:

Old host New host IP address
iservices.resco.net svc-01.resco.net 52.174.184.18
iservices.rescocrm.net svc-02.resco.net 13.89.172.6
- svc.resco.net see below

After the change, Resco Mobile CRM will no longer connect to the servers directly but instead go via a Front Door, svc.resco.net. If this fails, the app will try to connect directly to the servers, i.e., their IP addresses should remain allowed. It is necessary, however, to add the IP address of the Front Door. The Front Door infrastructure is managed by Microsoft. You can find the IP addresses using the Service Tag "AzureFrontDoor.Frontend". If you need assistance, contact Resco support.

Sync config: parameter change

We have renamed one of the parameters in Advanced sync setup (sync config): The platform-specific switch WinRT was replaced with WinUI. If you are using platform-specific setup of sync config, you might need to revisit and update the file.

Sync config editor

Multiselect records on maps

The map view allows you to select multiple records. The multi-select commands available on the view can be started from the map.

select multiple records on the map view and run commands.

The lasso tool is not available in the iOS version of the app for users who opt to use Google Maps. However, these users can still manually select the records one by one.

Redesigned Setup/Settings section of the mobile app

Resco Mobile CRM is a highly flexible and configurable tool. As a consequence, it has many various settings that users can configure. Over time, the setup/settings section of the app grew unorganized. We have now categorized the settings into different groups, moving popular settings to a prominent position.

setup/settings page in resco mobile CRM

As part of the redesign, some setup options were deprecated and are no longer accessible to users. If some of the deprecated settings are useful to you, you need to contact Resco support to unlock the deprecated section of Setup for you.

deprecated setup options

Safer background sync

Background synchronization means that users can continue using the app while the sync is in progress. When both the user and the synchronization process attempt to write to the database at the same time, users are notified and have to wait. However, in rare situations, data integrity problems may occur, for example, when slow server processes are combined with fast user actions. Woodford administrators now have additional tools to prevent or mitigate these issues.

In form properties, you can now set up Background sync behavior.

  • Block save during sync - forbids form save while background sync is running. It applies for Save button click as well as invoking form Save via rules or JSBridge. This option favors keeping the schedule of background sync at the expense of potentially slowing down the data entry.
  • Block save during sync, don’t start sync while form is opened - blocks background sync while the form is open. If sync is already running, Save is forbidden until sync finishes. This option sacrifices the frequency of background sync, favoring uninterrupted data entry.
  • No action - this is the current behavior where concurrent changes in both client and server may (in rare cases) cause data inconsistency or even data loss.

background-sync-behavior-in-forms

You can set up project-specific default behavior in the app project configuration on the UI tab.

For more fine-grained control, the JSBridge object EntityForm offers functions tryEnterUiTransaction and leaveUiTransaction that can be used to define more granular UI transactions scopes. For example, you can block sync while custom code invoked from a custom button click is modifying and saving related records.

Managing security roles for app projects

Woodford admins can now enable, disable, and publish security roles in app projects much faster. The improvements are most notable for organizations with an extreme number of security roles.

Google Maps for Android version of Resco Mobile CRM

The map renderer (part of Maps SDK for Android) used in the Android version of Resco Mobile CRM is being decommissioned by Google. We have now updated our app to use a new renderer.

Google Maps for Microsoft Store version of Resco Mobile CRM

The Microsoft Store version of Resco Mobile CRM previously used Bing Maps. Unfortunately, Bing Maps for Enterprise is being deprecated. Therefore, we have switched to Google Maps on this platform. This change affects standard maps as well as the Route planner.

New map providers for Geocoding

The geocoding feature of Woodford is also affected by Bing Maps for Enterprise deprecation. We are now supporting additional map providers: Azure, Google, and OpenStreetMap. Make sure to provide a valid map key when switching map providers.

new map providers for geocoding

Photo permissions on Android

Google Play's Photo and Video Permissions policy is changing to better protect photos and videos, which are considered personal and sensitive user data. As a result, the way how users can take new images or access images in the storage may change.

Google Maps configuration changes

New Google Maps implementation requires Google Map ID to support advanced markers. You can set it up in Woodford configuration.

google maps configuration parameters

Google support ends in Resco Mobile CRM

Due to changes in Google integration policies, the following Google services are no longer available in Resco Mobile CRM:

  • Google Calendar: show Google Calendar events in Resco Mobile CRM, show Resco events in Google Calendar
  • Google mail: view and send Google mail in Resco Mobile CRM
  • Google contacts: make your Google contacts available in Contacts entity in Resco Mobile CRM
  • Google Drive: store documents in the cloud

Existing users who created an access token some months ago may temporarily be able to continue using the integration. However, once that expires, new authentication is no longer possible.

In the release 18.0, we will be removing the support of Google from Woodford and the mobile client. If you have any concerns about this change, please contact Resco support.

Note Google Maps are not affected by this change.

Global constants

Global constants in rules are now supported in the web app version of Resco Mobile CRM.

Open a form as "dirty"

In rules, you can use the OpenForm operation to open a form and optionally modify some form data in the process. Before this release, such form was not "dirty", i.e., the form does not appear as having any pending changes (the save button is not displayed, and the back button does not trigger the prompt to save the record). With this release, the OpenForm operation can mark the form as dirty if you want to warn the user that the record data changed and requires saving.

mark form dirty when using openform

Single card forms

You can now configure flexible forms to display only a single card expanded at a time. All other cards are collapsed.

set flexible form to display a single card at a time single card layout in action

Custom home and theming

The interaction between the custom home and modern theming with color tokens is now more intuitive. Moreover, we have greatly improved the documentation about home screen colors and custom row design: Custom colors and design.

Restore parent style for child projects

If you are using app project hierarchy, the style editor now allows you to delete a child project's custom style and restore its dependency on the parent app project.

restore parent style

New link types "in" and "exists"

We are introducing new options in the Sync Filter (and other Woodford tools) that can optimize sync performance for large datasets. In many scenarios, such as in field service, Woodford administrators use Sync Filter with linked entities to finetune the records transferred to the mobile app during synchronization. In addition to inner links and outer links, we now support link-type='in' and link-type='exists'.

The new link types are available for Dataverse, and only in the Woodford tool.

For an in-depth discussion about linked entities in FetchXML and the rationale behind the new link types, see Linked entities in FetchXML.

Salesforce chatter changes

When using Salesforce Chatter, it is now possible to configure different sync filters for Feed Items based on parent entity. To do so, admin can use Sync Filter of FeedItem entity. Just add separate inner link per parent entity via ParentId lookup and add conditions in the filter.

In the example below, separate filters are used for User and Account.

example: separate filters for user and account

Note: Only inner links are allowed. Nesting inner links is also possible. However, conditions outside links referred via alias are not supported. Such sync filters will fail in runtime. You need to add all filter conditions inside the link.

Check entity usage in JSBridge

In the latest addition to the check field usage feature (Which fields are used), we are now searching in your custom code (offline HTML folder) for entity names. More specifically, the check usage displays occurrences of the strings 'entity_name' and "entity_name" in JS and HTML files. We are not scanning for field names.

RFID scanning

Resco mobile apps can connect to Zebra Technologies' RFD4031 RFID scanner using Bluetooth. When the user scans RFIDs, the app can handle this event using JSBridge. The list of all nearby RFID tags is available for further processing.

This feature is available for iOS only.

Several new functions are available in JSBridge to handle the communication (MobileCRM.Services.ZebraScanner object), including:

  • MobileCRM.Services.ZebraScanner.connect - Connects to the Zebra scanner.
  • MobileCRM.Services.ZebraScanner.onScan - Registers the handler for the scan event.

Modernize JSBridge API for generating mobile reports

Working with the MobileReport object has been simplified. The runReport and runReportAsync functions no longer require additional boilerplate code. For example, you can

  • choose source record by Name or ID
  • choose report by Name or ID
  • choose report language (questionnaires only)
  • provide the recordToAttach argument that automatically handles creating of attachment to the report
  • provide a wait message, etc.

The new API is async by default (using promise, not callback).

New support tool: POA analyzer

The latest addition to Resco Mobile CRM is designed for support providers. It can help analyze problems related to server timeouts on the Power Platform. The PrincipalObjectAccess (POA) table stores information about record sharing in CRM. It tends to grow over time, often full of orphaned unused records. Unfortunately, a large POA table may slow down other server requests, including the communication between Resco mobile apps and the server. The POA analyzer tool in Resco Mobile CRM displays statistical information about the POA table. Users and tables with the most shared records are listed. This can help you identify potential for optimizing the table.

Data model explorer: Relations

The data model explorer in Woodford offers a new feature: you can display all relations of a table at a glance. The screen is divided into three tabs: one-to-many (1:N), many-to-one (N:!), and many-to-many (NN) relations.

table relations at a glance

Woodford AI assistant updates

Woodford includes an AI-powered assistant/chatbot that can provide help related to Resco products and tools. The information is sourced from our wiki and academy. In this release, we upgraded the assistant to use the latest language model. Also, the assistant is now freely available to all users.

AI assistant in woodford

Resco Cloud: File field

Resco Cloud now supports a new type of fields, File. It is compatible with File column from Dataverse/D365, which means that in integration scenarios with these backends, File columns can now be seamlessly synchronized. See File field in Resco Cloud for information on how the field works.

Power Solutions

JavaScript support in questionnaires on Power Platform

Questionnaire Player on model-driven apps and Power Pages now supports JavaScript. You can enhance the questionnaires with your own custom logic.

New web resource links

It is now easier to add Results Viewer and Schedule Board to a custom model-driven app. The current editor, make.powerapps.com, does not support web resources in the sitemap that require HTML parameters. (There is an obscure workaround involving extracting the sitemap as a file and editing it directly.) We have now added several new web resources to Resco Suite that don't require HTML parameters:

resco_MobileCRM/locationMonitorEntry.html Location Monitor
resco_MobileCRM/resultsViewerEntry.html Result Viewer (full app)
resco_MobileCRM/associatedResultsViewerEntry.html Result Viewer (associated questionnaires)
resco_MobileCRM/schedulerEntry.html Schedule Board
resco_MobileCRM/syncDashboardEntry.html Sync Dashboard