Microsoft Dynamics 365 for Pro Developers
This course is designed for experienced developers who are looking to obtain the required skills to customize, configure, maintain, integrate with, develop code and extend Microsoft Dynamics 365 Customer Engagement (CRM) and Power Apps.
Description
Attendees of this course will gain the knowledge needed to transition existing developer skills to Dynamics 365 and the Power Platform, learn how to create and customize Dynamics 365 Apps (Model-driven), create and maintain powerful workflows and business process flows and use solutions to package and deploy customizations across multiple environments using best practice strategies.
Students will also learn how to write .Net code to utilize the various API’s available, customize the navigation, build complex custom business logic ‘Plug-In’ components and extend Dynamics 365 and the Power Apps with JavaScript and the Power Apps Component Framework..
The course assumes a previous knowledge of Microsoft .Net (C#) and JavaScript coding.
Course Outline
Module 1: Introduction
This module provides the attendee with an introduction to the concept of customizing and configuring Dynamics 365 and the Power Platform.
Lessons
- Compare versions of Microsoft Dynamics 365
- Introduction to Dynamics 365 and the Power Platform
- Introduction to the Dataverse
- Get acquainted with Dynamics 365 and the Power Platform
- Review the interfaces, devices and apps
- Understand the tools for Dynamics 365 customizers
- A brief overview of Solutions
- Understand Environments
- Review further reading and resources
- Set up the lab environment - Acme Enterprises Event Management Solution
Lab 1: Setting up your Lab environment
- Setup your Lab and install sample data
Module 2: Initial Setup and Configuration
This module presents some of the most common features that require setup and configuration.
Lessons
- An introduction to Dynamics 365 online setup
- An introduction to Dynamics 365 on premise setup
- The Power Platform Admin Center
- Review the System Settings area
- Understand how to configure Auto Save Settings
- Understand how to configure Format Settings
- Understand how to configure Audit Settings
- Understand how to configure Email Settings
- Understand how to configure Skype Integration
- Understand how to configure SharePoint Integration
Lab 1: Configure Settings
- Configure Settings in Dynamics 365 and the Power Platform
Lab 2: Configure Auditing
- Configure Audit Settings
Module 3: Security
This module highlights the importance of maintaining a robust security model in Dynamics 365 by stepping through how to configure Business Units, Security Roles, Users and Teams. Access Teams and Hierarchy Security are also considered.
Lessons
- Design and configure Business Units
- Configure Security Roles
- Manage Users and Teams
- Implement Access Teams
- Configure Hierarchy Security
Lab 1: Configure Users, Business Units, Security Roles and Access Levels
- Add new Users in Dynamics 365
- Create new Business Units
- Copy a Security Role and Configure Access Levels
- Assign Users to Security Roles
- Login to Dynamics 365 as a different User to test permissions
Module 4: The Dataverse - Creating and Managing Tables
In this module we will start to look at customizing the Dynamics 365 schema, including Tables, Relationships, Columns and Forms which can be customised and extended using powerful inbuilt tools.
Lessons
- Introduction to the Dynamics 365 model
- Review the different Table Types
- Create new Custom Tables
- Managing Table Ownership
- Managing Table Properties
- Custom Table Security
- Virtual Tables
- Review Tables and Solutions
Lab 1: Creating and Managing Tables
- Creating a new Solution
- Create Custom Tables and configure Table properties
- Add existing System Tables to a Solution
- Configure permissions for Custom Tables
Module 5: The Dataverse - Columns
This module presents the different Column types that exist in the Dataverse including special Columns like Calculated and Rollup Columns. The Business Rule Designer is also introduced together with Column Level Security.
Lessons
- Introduction to Column Customization
- Understand the different Column Types
- Review Column Formats
- Create a new Column
- Review Column and Solutions
- Implement a Calculated Field
- Configure Field Level Security
Lab 1: Creating and Managing Columns
- Creating Columns
- Create a Global Choice
Lab 2: Creating a Calculated Column
- Creating a Calculated Columns
- Add Columns to a Form
Lab 3: Configuring Column Level Security
- Enable a Column for Column Level Security
- Configure a Column Security Profile
Module 6: The Dataverse - Relationships and Mappings
This module provides an overview of the different types of Relationships that can be created in the Dataverse. Relationship Behaviours and Mappings are also considered.
Lessons
- Introduction to Relationships
- Review the different Relationship Types
- Create a Relationship
- Review Relationships and Solutions
- Understand Relationship Behaviour
- Implement a Hierarchy Relationship
- Configure Column Mappings
Lab 1: Create Relationships
- Create Relationships
- Configure Relationship Behaviour
Lab 2: Create a Hierarchical Relationship
- Configure a Hierarchical Relationship
Lab 3: Configure Mappings
- Configure Mappings
Module 7: The Dataverse - Forms, Views and Visualizations
This module steps through the process to create, customize and configure Forms, Views, Charts and Dashboards in the Dataverse.
Lessons
- The process to create a new Form
- Review the different Form types
- Using the Form Designer
- Customizing the Main, Quick View and Quick Create Forms
- Editable Grids
- Configure Form Security
- Review the different View types
- Customizing System Views
- Customizing System Charts and Dashboards
Lab 1: Customizing Forms
- Customising Forms
- Create a Quick Create Form
- Create a Quick View Form
Lab 2: Configuring System Views
- Create Custom System Views
Lab 3: Configuring Charts and Dashboards
- Configure a System Chart
- Construct a System Dashboard
Module 8: Model-driven Apps (Dynamics 365 CE)
In this module you will learn how to create and configure Model-driven Apps in the App Designer.
Lessons
- An introduction to Power Apps and the Power Platform
- An introduction to the App Designer
- Customizing the Sales and Customer Service Apps
- App Designer Walk Through
- App Designer Features
- Security Enabled Navigation
- Constructing an App
- Publishing an App
- Apps and Solutions
Lab 1: Build a custom Event Management App
- Use the App Designer to build a custom App
Module 9: Processes: Workflows, Business Process Flows and Power Automate
In this module you will learn how to create and maintain Workflows, Business Process Flows and Flows built in Power Automate to complement your Dynamics 365 Apps.
Lessons
- Introduction to Processes
- Workflow
- Business Process Flows
- Microsoft Flow
Lab 1: Create a Workflow
- Customising Forms
- Create a Quick Create Form
- Create a Quick View Form
Lab 2: Create a Business Process Flow
- Create a Business Process Flow
- Add Stages and Steps to a Business Process Flow
- Configure Branching Logic in a Business Process Flow
Lab 3: Create a Power Automate Flow
- Using Power Automate with Dynamics 365
Module 10: Solution Management
In this module you will learn how to create and manage Solutions in Dynamics 365 across multiple environments.
Lessons
- An introduction to Solution Management
- How to add and administer components in a Solution
- The differences between unmanaged and managed Solutions
- How to export and import a Solution
- How to set Managed Properties for a Solution
- What happens when you delete a Solution
- How to Clone a Solution Patch
- How to Clone a Solution
Lab 1: Solution Management
- Export an Unmanaged Solution
- Import an Unmanaged Solution
- Configuring Managed Properties
- Export and Import Managed Solutions
- Create a Solution Patch
- Clone a Solution
Module 11: Introduction to Dynamics 365 Development
This module introduces the concept of developing and extending Dynamics 365 Apps and the Power Platform. You will learn about the tools and resources that are available to developers and administrators as well as best practice methodologies and fundamentals.
Lessons
- Overview
- Objectives
- Introduction to Dynamics 365 Development
- Development Fundamentals
- Development Tools for Microsoft Dynamics 365
- Development Environments
- Skills and Best Practice
- Further reading and resources
Lab 1: Developer Orientation
- Review Developer Resources
- Review the Developer Center and Forums
- Download Resources from NuGet
- Review the Developer Lab Files
Module 12: The Web API
This module presents the Web API available to developers in programatically interact with the Dataverse. You will learn how to write code to consume the API using server and client-side coding including C# and JavaScript.
Lessons
- Introduction to Web API options
- OData REST based endpoint
- Setting up Visual Studio to consume the Web API
- Create, Read, Update and Delete methods
- Web API Operations and Functions
- The Discovery API
- Authentication
- Core Assemblies
- Early and Late-bound classes
- Service Context
- The Code Generation tools
- THE XRM Methods
Lab 1: Using the Web API with Server-side code
- Set up the Visual Studio Project
- Develop an App to perform operations using the Web API
- Test your App
Lab 2: Using the Web API with Client-side code
- Set up the Visual Studio Project
- Develop an App to perform operations using the Web API
- Test your App
Module 13: Developing Plug-Ins for Dynamics 365
In this module you will learn how to develop custom business logic in a Plug-In component using Microsoft .Net C# in Visual Studio. You will also learn how to deploy Plug-In components to the Dataverse using the Plug-In registration tool.
Lessons
- Introduction to Plug-Ins
- Writing Plug-In Code
- Using the Plug-In Registration Tool
- Debugging Plug-Ins with the Plug-In Profiler
- Deploying Plug-Ins with Solutions
Lab 1: Create and deploy a Plug-In
- Customize a Dynamics 365 App
- Set up the Visual Studio Project
- Create a Plug-In
- Sign and Build the Assembly
- Deploy a Plug-In using the Plug-In Registration Tool
- Debug Plug-In code using the Plug-In Profiler Tool
- Test your Plug-In
Module 14: Developing Client-side Code
This module introduces the concepts of developing Client-side code that works with the event driven model in a Dynamics 365 App. You will learn how to create and deploy Client-side components using Web resources and interact with the Web API.
Lessons
- Introduction to Client-side coding
- The Event Driven Model
- Developing JavaScript Client-side code
- Using Web resources
- Working with data using the Web API OData REST service
Lab 1: Client- side programming with JavaScript
- Create a JavaScript Web Resource
- Configure the Event Handlers
- Test you code
Lab 2: Create and deploy a Client-side Component using the Web API
- Create a HTML Web Resource
- Write Client-side code for the Web API
Module 15: Developing Custom Workflow Activities
In this module you will learn how to develop a custom Workflow Activity using Microsoft .Net C# in Visual Studio. You will also learn how to use a custom Workflow Activity as a Workflow Step.
Lessons
- Introduction to Custom Workflow Activities
- Writing Custom Workflow Activity code
- Deploying a Custom Workflow Activity
Lab 1: Create a Custom Workflow Activity
- Set up the Visual Studio Project
- Create a Custom Workflow Activity
- Sign and Build the Assembly
- Deploy a Custom Workflow Activity
- Create a Workflow
- Test your Custom Workflow Activity
Module 16: Extending Power Apps
This module looks at the possibilities when using Custom Controls in Model-driven Apps to extend the out of the box functionality, including embedding Canvas Apps inside of Model-driven Apps.
Lessons
- Introduction to Custom Controls
- Extending Model-driven Apps with Canvas Apps
- Embedding Canvas Apps as Custom Controls
Lab 6.1: Create a Canvas App and embed it into a Model-driven App
- Create a Canvas Apps
- Create a Model-driven App
- Embedding Canvas Apps into a Model-driven App using Controls
- Test your App
Module 17: The Power Apps Component Framework (PCF)
This module extends on the previous module as we look into creating custom components for Model-driven Apps and Canvas Apps using the Power Apps Component Framework (PCF).
Lessons
- Introduction to PCF
- The PCF Command Line Interface (CLI)
- Creating PCF Components
- The PCF Test Environment
- Deploying PCF Components in a Model-driven App
Lab 7.1: Create and deploy a PCF Control
- Install the Power Apps CLI
- Create your PCF control
- Packing PCF Components in Solutions
- Deploy a PCF Component
- Test your control
Module 18: Developing Custom Connectors
This module looks at how Pro Developers can create Custom Connectors in the Power Apps Maker Portal to then be used by App Makers in Model-driven Apps and Canvas Apps to connect to external data sources and systems.
Lessons
- Connectors Overview
- Custom Connectors
- Process to create a Custom Connector
Lab 8.1: Create a Custom Connector
- Set up Visual Studio
- Register an App in Azure
- Create a Custom Connector
- Sharing your Custom Connector in a Canvas App
- Test your Custom Connector
Module 19: Application Lifecycle Management (ALM)
In this module we look at the Application Lifecycle Management (ALM) options that are available to help manage and support a Dynamics 365 Power Platform deployment. The Microsoft Power Platform Build Tools and the Power Apps Center of Excellence Starter Kit are also presented in this module.
Lessons
- Introduction to ALM
- Environments and Solution Management
- Microsoft Power Platform Build Tools
- The Power Apps Center of Excellence
Prerequisites
This course is intended for Technical students, Administrators and Developers. Students should have an existing working knowledge of Microsoft .Net C# and Visual Studio.
Although not compulsory, it is recommended that students attend the prerequisite course ‘Introduction to Microsoft Dynamics 365’.