Dynamics 365 and Power Apps Deep Dive for Developers
This course is designed for experienced IT professionals and developers, providing an insight into development techniques and approaches that can be applied to extend and manage solutions and apps built on Microsoft Dynamics 365 and the Power Platform.
Description
This course is designed for experienced IT professionals and developers, providing an insight into development techniques and approaches that can be applied to Microsoft Dynamics 365 and the Power Platform.
You will learn the necessary skills to extend the features of Model-driven Apps and Canvas Apps using code, integrate with the Common Data Service using the Web API and Organization Service, build custom controls using the Power Apps Component Framework (PCF), implementing custom business logic through Plug-Ins and Custom Workflow Activities, write client-side code that interacts with the Client API Object Model, implement Custom Connectors, and learn about the Application Lifecycle Management (ALM) frameworks available to help support and maintain Power Platform implementations, including the Microsoft Power Platform Build Tools for Azure DevOps and the Power Apps Center of Excellence (CoE).
At Course Completion
After completing this course, students will be able to:
- Understand the features and tools that exist for Developers in the Microsoft Dynamics 365 Power Platform.
- Be able to extend Model-driven and Canvas Apps with code to support complex business requirements.
- Understand how to set up projects in Microsoft Visual Studio in preparation to write code, connect to and extend the Common Data Service.
- Write server and client-side code to execute commands, read and write data to and from the Common Data Service using the Web API.
- Write server-side code to execute commands, read and write data to and from the Common Data Service using the Organization service.
- Download and configure developer resources and tools such as the PowerApps Component Framework (PCF), the Customer Engagement Software Development Toolkit and Visual Studio resources.
- Build custom components using the Power Apps Component Framework (PCF).
- Understand where and how to use the Power Apps Command Line Interface (CLI).
- Extend Model-driven Apps with custom business logic using Plug-In and Custom Workflow Activities.
- Build, configure and deploy Custom Connectors in the Power Apps Maker Portal.
- Embed Canvas Apps and PCF components into Model-driven Apps.
- Write JavaScript code to extend Model-driven Apps using the Client API Object Model.
- Understand the best practice methodologies when extending and writing code for Microsoft Dynamics 365 Customer Engagement and the Power Platform.
- Understand the need for Application Lifecycle Management (ALM) through the implementation of Microsoft Power Platform Build Tools for Azure DevOps and the Power Apps Center of Excellence (CoE).
Course Outline
Module 1: Introduction to Dynamics 365 Power Platform Development
This module introduces the concept of extending Microsoft Dynamics 365 Customer Engagement Apps and Power Apps using Pro Code development. You will learn about the tools and resources that are available to Pro Code Developers as well as best practice methodologies and fundamentals.
Lessons
- Dynamics 365 and Power Platform Overview
- App Makers vs Pro Developers
- Pro Code Developer Options
- Development Tools
- The Customer Engagement Toolkit
- Environments and Solutions
- Security Considerations
- Application Lifecycle Management
- Valuable Skills
- Further reading and resources
Lab 1.1: Power Platform Developer Orientation
- Review Developer Resources
- Review Developer Tools
- Review the Lab Files
- Review Common Development Scenarios
Module 2: Working with the Common Data Service using the API
This module presents the various API options that are available to developers in connect to a interact with the Common Data Service programmatically. You will learn how to write server-side and client-side code to consume the API endpoints.
Lessons
- Introduction to API programming
- Authentication Considerations
- The Web API
- The Discovery Web Service
- The Organization Web Service
- Core Assemblies
- Early and Late-bound classes
- The Code Generation Tool
- Service Context
- CRUD Operations
- Using the QueryExpression Class
- Using LINQ
Lab 2.1: Using the Web API with server-side code to connect to CDS
- Set up the Visual Studio Project
- Develop an App to perform operations on the Common Data Service using the Web API with server-side code
- Test your App
Lab 2.2: Using the Organization Service with server-side code to connect to CDS
- Set up the Visual Studio Project
- Develop an App to perform operations on the Common Data Service using the Organization Service
- Test your App
Lab 2.3: Using the Web API with Client-side code to connect to CDS
- Set up the Visual Studio Project
- Develop an App to perform operations on the Common Data Service using the Web API with client-side code
- Test your App
Module 3: Developing Client-side Code
This module introduces the concepts of developing client-side code that works with the event driven Client API Object Model in Microsoft Dynamics 365 Model-driven Apps. You will also learn how to create and deploy client-side components using Web Resources that use the Web API to work with data in the Common Data Services (CDS).
Lessons
- Introduction to Client-side coding
- The Client-side Events
- The Client API Object Model
- Using Web resources
Lab 3.1: Writing JavaScript Client-side Code
- Write a JavaScript Function
- Create a JavaScript Web Resource
- Configure the Event Handler
- Test your JavaScript Code
Module 4: 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 Microsoft Dynamics 365 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 4.1: Create and deploy a Plug-In
- 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 to CDS
- Test your Plug-In
- Debug Plug-In code using the Plug-In Profiler Tool
Module 5: 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 5.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 6: 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 7: 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 8: 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 9: 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
Ideally a working knowledge of Microsoft .Net and Visual Studio
And
It is recommended all students successfully complete the ‘Introduction to Microsoft Dynamics 365’ course.