Important changes (deprecations) coming in Dynamics 365 Customer Engagement
The announcements and deprecations described in this topic apply to Dynamics 365 Customer Engagement as of version 9. This article was first published on June 27, 2017.
Administrators and IT professionals should use this information to prepare for future releases of Dynamics 365. Customer Engagement refers to the applications that make up the CRM portion of Dynamics 365, which includes the Sales, Customer Service, Field Service, and Project Service Automation applications.
“Deprecated” means we intend to remove the feature or capability from a future major release of Dynamics 365. The feature or capability will continue to work and is fully supported until it is officially removed. This deprecation notification can span a few years. After removal, the feature or capability will no longer work. We are notifying you now so you have sufficient time to plan and update your code before the feature or capability is removed.
For information on past deprecations, see:
Dynamics 365 for Blackberry is deprecated
As of December 3, 2018, Microsoft Dynamics 365 for Blackberry App is deprecated and will be removed from the iOS App Store on October 31, 2019. The mobile app is currently available on the iOS App Store and is designed for Dynamics 365 customers that utilize Blackberry Mobile Application Management. See more details about the Dynamics 365 for Blackberry app here: Secure your mobile data with Microsoft Dynamics 365 for Good. After October 31, 2019, Microsoft Intune will be the only supported mobile application management solution for the Dynamics 365 for phones application.
Microsoft will continue to provide security and other critical updates to the Dynamics 365 for Blackberry App until October 31, 2019, but will not release any additional features or functionalities within the app. After October 31, 2019, the Dynamics 365 for Blackberry App will be removed from the App Store, and support will end.
What should you do?
If you are currently using the Dynamics 365 for Blackberry App together with Mobile Application Management for Blackberry, plan to migrate to Dynamics 365 for phones by October 31, 2019. We encourage you to migrate as soon as possible to take advantage of Microsoft’s ongoing investments in the reliability, performance, and functionality of the Dynamics 365 mobile app.
Dynamics 365 for Outlook (Outlook add-in) is deprecated
As of 1/29/2018, based on overwhelming customer feedback and our desire to continue supporting our customers, we have decided not to deprecate Dynamics 365 for Outlook (Outlook add-in). Please read this blog post for more details.
Dynamics 365 App for Outlook, introduced with Dynamics CRM 2016 (version 8.0), is our most up-to-date offering for pairing Dynamics 365 with Microsoft Outlook. With Dynamics 365 App for Outlook, you can see contextual information from Dynamics 365 right inside your Outlook Inbox. With a single click, you can link an Outlook email message or appointment to a specific Dynamics 365 record. Dynamics 365 App for Outlook works together with server-side sync.
As such, the legacy Outlook add-in—Dynamics 365 for Outlook—is deprecated with the Dynamics 365 for Customer Engagement apps version 9.0 and will be removed in a future major release. This deprecation includes Offline mode and synchronization in Dynamics 365 for Outlook.
Service scheduling in Dynamics 365 for Customer Service is deprecated
The existing service scheduling functionality is deprecated and will be removed in a future major release. The new scheduling experience, built atop Universal Resource Scheduling (URS), is now available on the Unified Interface.
Existing service scheduling users will be provided advance notice for a timebound migration to the new scheduling capabilities.
More information: Service Scheduling Guide
Dialogs are deprecated
You can use a Dialog process to create an interactive step-by-step data entry form that requires user input to start and run to completion. When you start the dialog process, a wizard-like interface is presented; users make selections or enter data as they progress through each page of the wizard.
Dialogs are deprecated and can be replaced with Business Process Flows or Canvas Apps. More information: Replace dialogs with business process flows or canvas apps
Usage of Parature knowledgebase as the Dynamics 365 knowledge management solution is deprecated
Usage of Parature from Microsoft knowledgebase as the Dynamics 365 knowledge management solution is deprecated. This feature is replaced by Knowledge Management features in Dynamics 365.
The Knowledge Solution setting in the Knowledge Base Management Settings dialog box, which provides a connection between Dynamics 365 and Parature from Microsoft, will be removed in a future major release of Dynamics 365.
Project Service Finder app is deprecated
The Project Service Finder App, available for use with Dynamics 365 for Project Service Automation, is deprecated. The legacy application will be supported for associated legacy Project Service Automation releases in accordance with Microsoft’s Modern Lifecycle Policy. The functionality available through this app will be available in a future release of Dynamics 365 in the Dynamics 365 for Project Service Automation application.
Contracts, Contract Line Items, and Contract Templates entities are deprecated
The Contracts, Contract Line Items, and Contract Templates entities are deprecated and will be removed in a future major release of Dynamics 365. This functionality has been replaced by entitlements in Dynamics 365 for Customer Service.
Standard SLAs in Dynamics 365 for Customer Service are deprecated
Standard service level agreements (SLA Type field is set to Standard) are deprecated and will be removed in a future major release of Dynamics 365. Standard SLAs are replaced by enhanced SLAs. More information: TechNet: Enhanced service level agreements
Relationship Roles are deprecated
Relationship Roles (Settings>Business Management>Relationship Roles) are deprecated and will be removed in a future major release of Dynamics 365. This feature is replaced by Connection Roles. More information: Help and Training: Create connections to view relationships between records.
Mail Merge is deprecated
In Dynamics CRM 2016 (version 8.0), we introduced server-side document generation using Word and Excel templates. You can use these templates to provide standardized documents or customized data analysis for your organization.
Mail merge from previous versions is deprecated. This includes the mail-merge Word add-in as well as mail-merge templates (Settings>Templates>Mail Merge Templates).
More information: Help & Training: Create Word and Excel templates from Dynamics 365 data
Announcements are deprecated
Announcements (Settings>Administration>Announcements) are deprecated and will be removed in a future major release of Dynamics 365.
Ready-to-use business processes available through Add Ready to Use Business Processes setting are deprecated
Ready-to-use business processes available through the Add Ready-to-Use Business Processes setting (Settings>Data Management>Add Ready-to-Use Business Processes) are deprecated and will be removed in a future major release of Dynamics 365. You can find ready-to-use business processes on Microsoft AppSource.
Legacy process-related attributes in entities are deprecated
The legacy process-related attributes (such as ProcessId, StageId, and TraversedPath) on entities enabled for business process flows are now deprecated. The SetProcess action for business process flows is also deprecated. Manipulating these legacy process-related attributes for target entity records does not guarantee consistency of the business process flow state, and is not a supported scenario. The recommended way is to use the attributes of the business process flow entity. More information: Create, retrieve, update, and delete business process flow entity records
Some client APIs are deprecated
The following client APIs are deprecated in the current release to reorganize the Xrm client API object model to better align with the need of using the same client scripts without having to change them based on the context or the client (web client or the new Unified Interface) where they run. You should plan to use the new client APIs mentioned in the Replacement Client API column instead of the deprecated ones. The deprecated client APIs will continue to be available and supported until they are officially removed from a future major release of Dynamics 365.
|Deprecated Client API||Replacement Client API||Comments|
Commands: Send it as the PrimaryControl parameter
|Use of the Xrm.Page object as a static access to the primary form context is still supported to maintain backward compatibility with the existing scripts. Based on the feedback, we understand that the usage of Xrm.Page is high, and it won’t be removed as soon as some other client API methods listed in this section. We encourage you to use the new way of getting form content where possible. More information: Client API form context
Although Xrm.Page is deprecated, parent.Xrm.Page will continue to work in case of HTML web resources embedded in forms as this is the only way to access the form context from the HTML web resource.
|Xrm.Page.context||Xrm.Utility.getGlobalContext||Allows access to the global context without going through the form context.|
|Xrm.Page.context.getQueryStringParameters||formContext.data.attributes||The formContext.data.attributes API will make retrieval of non-entity bound data consistent across entity forms, metadata-driven dialogs, and task-based flows. The data will be a combination of custom values sent using the query string and what was specified in the parameters in the openForm method.|
|Xrm.Page.context.getTimeZoneOffsetMinutes||globalContext.userSettings.getTimeZoneOffsetMinutes||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserId||globalContext.userSettings.userId||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserLcid||globalContext.userSetings.languageId||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserName||globalContext.userSettings.userName||Moved to globalContext.userSettings|
|Xrm.Page.context.getUserRoles||globalContext.userSettings.securityRoles||Moved to globalContext.userSettings|
|Xrm.Page.context.getIsAutoSaveEnabled||globalContext.organizationSettings.isAutoSaveEnabled||Moved to globalContext.organizationSettings|
|Xrm.Page.context.getOrgLcid||globalContext.organizationSettings.languageId||Moved to globalContext.organizationSettings|
|Xrm.Page.context.getOrgUniqueName||globalContext.organizationSettings.uniqueName||Moved to globalContext.organizationSettings|
|Xrm.Page.data.entity.getDataXml||No change in the method, but use "typename" instead of type for lookup attributes.|
|GridRow.getData||GridRow.data||GridRow is essentially a form context. This change unifies the interface of GridRow with formContext.|
|GridRowData.getEntity||GridRowData.entity||GridRowData is form data. This change unifies the interface of GridRowData with formContextData.|
|Xrm.Mobile.offline||Xrm.WebApi.offline||Moved the offline-related methods under Xrm.WebApi.offline|
|parent.Xrm||Earlier: An HTML web resource may interact with the Xrm.Page or Xrm.Utility objects within the form by using parent.Xrm.Page or parent.Xrm.Utility.
Now: parent.Xrm.* will work if the HTML web resource is loaded in a form container. It won't work for HTML web resources that are stand alone, or referenced from the site map or any other places.
|addOnKeyPress||Use a custom control|
|removeOnKeyPress||Use a custom control|
|showAutoComplete||Use a custom control and corresponding UI|
|hideAutoComplete||Use a custom control and corresponding UI|
|Xrm.Utility.alertDialog||Xrm.Navigation.openAlertDialog||The new signature is consistent with other APIs (openForm) and takes a new set of parameters for flexibility.|
|Xrm.Utility.confirmDialog||Xrm.Navigation.openConfirmDialog||The new signature is consistent with other APIs (openForm) and takes a new set of parameters for flexibility.|
|Xrm.Utility.isActivityType||Xrm.Utility.getEntityMetadata||The isActivityType method is synchronous so it was suitable for ribbon rules. However, the replacement method, getEntityMetadata, is asynchronous, and is not suitable for ribbon rules.|
|Xrm.Utility.openEntityForm||Xrm.Navigation.openForm||Moving navigation actions to Xrm.Navigation|
|Xrm.Utility.openQuickCreate||Xrm.Navigation.openForm||Moving navigation actions to Xrm.Navigation|
|Xrm.Utility.openWebResource||Xrm.Navigation.openWebResource||Moving navigation actions to Xrm.Navigation
Note: This API returns VOID in Unified Interface.
EntityMetadata.IsInteractionCentricEnabled property is deprecated
All entities supported in the Unified Interface are now enabled for the interactive experience in the new Customer Service Hub app. This implies that the EntityMetadata.IsInteractionCentricEnabled property, which indicates whether an entity can be enabled for interactive experience, is no longer relevant. The corresponding setting for this property in the Customization tool, Enable for interactive experience, is removed in the current release, and the EntityMetadata.IsInteractionCentricEnabled property will be removed from the future version of Dynamics 365 SDK for Customer Engagement.
Silverlight (XAP) web resource is deprecated
The Silverlight (XAP) web resource is deprecated on the web client, and is not supported on the new Unified Interface introduced in the Dynamics 365 for Customer Engagement apps version 9.0. Instead of Silverlight web resources, you must use custom controls created using the HTML web resources with HTML5 to create UI components to visualize and interact with data.