Book Image

Dynamics 365 Application Development

By : Deepesh Somani, Nishant Rana
Book Image

Dynamics 365 Application Development

By: Deepesh Somani, Nishant Rana

Overview of this book

Microsoft Dynamics 365 CRM is the most trusted name in enterprise-level customer relationship management. The latest version of Dynamics CRM comes with the important addition of exciting features guaranteed to make your life easier. It comes straight off the shelf with a whole new frontier of updated business rules, process enhancements, SDK methods, and other enhancements. This book will introduce you to the components of the new designer tools, such as SiteMap, App Module, and Visual Designer for Business Processes. Going deeper, this book teaches you how to develop custom SaaS applications leveraging the features of PowerApps available in Dynamics 365. Further, you will learn how to automate business processes using Microsoft Flow, and then we explore Web API, the most important platform update in Dynamics 365 CRM. Here, you'll also learn how to implement Web API in custom applications. You will learn how to write an Azure-aware plugin to design and integrate cloud-aware solutions. The book concludes with configuring services using newly released features such as Editable grids, Data Export Service, LinkedIn Integration, Relationship Insights, and Live Assist
Table of Contents (20 chapters)
Title Page
Copyright and Credits
Dedication
Packt Upsell
Contributors
Preface
Index

Editing the site map and support for clients


Let us look briefly at separate ways of editing the site map apart from Site Map designer and the ways in which clients are supported for the different type of site map that we now have in Dynamics 365.

Site map editors

A site map, as we essentially know, is an XML file. Any XML text editor is good enough to edit site map XML files. For this, we can export the unmanaged solution that contains the site map XML, edit it either in NotePad, Visual Studio, or any other XML editor, and import it back. The important thing to remember here is, if we are importing the site map as a managed solution, it will create a new site map record with all the latest changes, and in the case of unmanaged, the existing site map XML is overwritten.

Note

Editing the site map XML with schema validation is detailed at https://msdn.microsoft.com/en-us/library/gg334493(v=crm.8).aspx.

Apart from Site Map Designer, we can use one of the third-party site map editors to edit the site map. One of the most popular tools is site map editor that is included as part of the XRM Tool Box. This is how our Sales App Site Map loads up inside site map editor:

The tool makes it easy to edit the site map compared to editing the XML manually. The tool has been one of the most popular tools for editing site maps and has been available since CRM 2011. The tool has been recently updated to support multiple site maps available in Dynamics 365. The other option is programmatically updating the site map. For this, we can make use of the site map entity and update its sitemapxml property, shown as follows:

  • Create an object of the site map entity:
Entity siteMap = new Entity["sitemap"]; 
  • Update its sitemapxml property with valid XML:
siteMap["sitemapxml"] = "valid site map xml"; 
  • Update the entity using Organization Service's instance:
service.Update(siteMap); 
  • Publish the changes using the PublishXmlRequest class:
PublishXmlRequest request = new PublishXmlRequest();
 request.ParameterXml = "<importexportxml><sitemaps><sitemap></sitemap></sitemaps></importexportxml>";
 service.Execute(request);

We can also create and delete app-specific site map records programmatically. However, it is recommended you use Site Map Designer instead of doing it programmatically. Another point to note is that the default site map record cannot be created or deleted.

Note

It is strongly recommended that we export the existing site map XML file and save a copy of it before we start editing, which can help us to restore it back in case of any errors while editing.

Supported clients

The default site map, which is the site map for Dynamics 365 – custom app is supported for both Dynamics 365 web applications and Dynamics 365 for Outlook. The site maps for any new custom apps, or the business apps such as Sales, Customer Service, Field Service, and Project Service Automation, are only supported by Dynamics 365 web applications.