Dynamics 365 Customer Engagement (CRM) Advanced Developer Course

Learn advanced development techniques on Dynamics 365 Customer Engagement

Dynamics 365 Customer Engagement (CRM) is one of the most popular and leading CRM application suites in the market. Since the release of Dynamics 365 there are many changes in the application and the updated version is known as Dynamics 365 Customer Engagement (CE) and it includes 5 applications:

  • Sales
  • Customer service
  • Marketing
  • Field service
  • Project Service Automation

Every Dynamics 365 consultant and developer should be aware of these changes in the application and also how to customize these. If you are a budding Dynamics 365 CE developer, then you should start with our Dynamics 365 Developer Course before taking this course.

This course is for Dynamics 365 CE developers and architects who already know how to do the development but want to level up their game. You must learn advanced development techniques to make the application robust and reliable.

This course will help polish your development skills on Dynamics 365 CE. The course focuses more on advanced development topics such as advanced plugin development topics using pre-entity image and post-entity images, shared variables, query data using QueryExpression and FetchXML, connect to Dynamics 365 using Web API, integration with .NET applications etc.

What you will learn?

  • Extending Dynamics 365 CE using code
  • Dynamics 365 Web services
  • Using web resources
  • Plugin development
  • Shared variables in plugins
  • Pre-entity and post entity-images in plugins
  • Early bound classes using crmsvcutil.exe
  • Developing custom workflow activities
  • Query data using QueryExpression, FetchXML
  • Web API integration
  • Report building using fetchXML

Course Contents

Section 1 - Intro to Extending Dynamics 365 CRM

This section gives you an introduction to extending Dynamics 365 CRM using code, Dynamics 365 SDK (Software Development Kit) and web resources.

Section 2 - Form scripting using Jscript

Using JScript you can create form event handlers for Dynamics 365 Ce forms. In this section you will learn about it in detail about 4 main form events and how to write JavaScript functions for each of these events.


Section 3 - Develop Plug-in and Custom workflow activities

Plugins are custom business logic which you can trigger on Dynamics 365 Customer Engagement (CE) core events so that you can augment the standard behaviour of the platform. This section of the course will walk you through the basics of plugin development, Plugin registration and deployment and finally debugging of plugins. Also, the chapter talk about the advanced concept in plugins such as shared variables, early and late bound, secure and un-secure configuration etc.

Finally, we talk about the development and registration of custom workflow activities which are used to extend the standard functionality of workflows and dialogs in Dynamics 365 customer Engagement (CE).

Section 4 - Querying Dynamics 365 Data

This section talks about the 3 types of queries to retrieve data from Dynamics 365 customer Engagement (CRM) those are 1) QueryExpression and QueryByAttribute 2) FetchXML and 3) LINQ queries.

Section 5 - Integrate Dynamics 365 CRM with other apps

Dynamics 365 customer engagement (CE) can be integrated with 100+ applications - using code based integration and through UI. This section of the course walks you through Web API for Dynamics 365 and also integrating .NET applications with Dynamics 365.

Section 6 - Customizing Dynamics 365 CE Ribbons and Sitemap

Ribbons and sitemaps are the two navigational components of dynamics 365 customer engagement (CE) that holds controls and can be customized as per requirements. We have mainly 3 types of ribbons in the application for forms, views and applications. Sitemap(s) are the primary form of navigation on Dynamics 365 application that also can be customized.

Section 7- Reporting in Dynamics 365 CE

Reports can be created in Dynamics 365 Customer Engagement (CE) using UI (Report Wizard) as well as using SSRS. Report Wizard is the UI based tool using which you can create and customize tools in Dynamics 365.

For complex reports SSRS can be used to create reports where two types of queries are used - FetchXML and SQL queries. For CRM online only FetchXML reports can be used while on-premise CRM allows both FetchXML and SQL reports.


Once you finish the course you will be able to:

  • Perform advanced customization features
  • Differentiate Supported Vs Unsupported customization
  • Development using SDK v9.x
  • Understand Web resources
  • Web Services
  • Develop plugins using C#.NET
  • Deploy and Debug Plugin code
  • Implement Plug-ins
  • custom workflows
  • Implement form customization using Javascript
  • Advanced Plugin concepts
  • Develop Custom workflow activities
  • Query Data using QueryExpression and FetchXML
  • Integrate Dynamics 365 with .NET applications
  • Web API with Dynamics 365
  • Developing reports using SQL and FetchXML


Your Instructor


Firoz Muhammed
Firoz Muhammed

The author of this course is Firoz Muhammed who is a Microsoft Certified Trainer(MCT), Dynamics 365 Architect and corporate trainer. He has more than 11 years of experience into IT industry into consulting, implementation and corporate training.

He carries experience on technologies like C++, C#.Net and Microsoft Dynamics 365 CE, Power Platform. As part of his work life he worked for companies like HP, Capgemini, Wipro, Qatar Airways and Accenture. Presently he is working as a Dynamics 365 CE architect at Magnifez Technologies and also handle corporate training assignments on Dynamics 365 CE.

He has trained more than 1000 professionals on Dynamics 365 CE/CRM as part of his corporate training stint. He trained professionals from corporate like IBM, Sony, Adobe, UST Global, Capgemini and many more. He likes to explore new technologies and like to share his knowledge thorough his training programs and video courses.


Course Curriculum


  Section 1 - Intro to Extending Dynamics 365 CRM
Available in days
days after you enroll

Get started now!



Frequently Asked Questions


When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.