Designing and Building Custom Apps using Dynamics 365

Video description

Build dynamic and incisive business solutions

About This Video

  • Implement business logic using processes, plugins, and client-side TypeScript
  • Develop custom xRM solutions to improve your business applications using a mature DevOps and Continuous Integration approach
  • Learn new and advanced features of Microsoft Dynamics 365 Customer Engagement
  • Master using patterns and frameworks by picking the right customization feature
  • Build, test, and maintain consistent custom HTML user interface with Dynamics 365 Unified UI for all devices and formats

In Detail

This course demonstrates the new features released with Microsoft Dynamics 365 Customer Engagement. Using the new Unified User Interface, this course uses a sample application to show how to build complex extensions to the Dynamics 365 for Customer Engagement platform using C# Plugins/Workflow Activities as well as TypeScript generated web resources.

Starting off, the course makes sure you have everything setup for fast and effective collaborative development and a mature Continuous Integration pipeline using Microsoft Team Services, npm, Nuget & Gulp. This includes automated unit testing of both server-side and client-side code as well as packaging and deploying of your solutions.

It then teaches you a framework for effective data modeling of entities within Dynamics 365 and how functionality can be built up in iterations using user story mapping.

Learn about base currencies, to ensure that your custom apps do not run into any challenges as they grow in complexity and usage. The logical and physical architecture of integration with external systems is examined using the new Web-Hooks and Virtual Entity features, allowing data to be both consumed and output in a robust and efficient fashion.

The new Xrm client API features of the Unified Client provide exciting new ways of extending your forms and grids which are demonstrated using the sample application being built.

You'll then learn to extend your Microsoft Dynamics 365 Customer Engagement business applications using HTML, TypeScript, and CSS using KnockoutJS via the MVVM design pattern so that your logic can be unit tested and deployed with easy and effortless repeatability. This course also covers the considerations for mobile touch interfaces so that your feature rich extensions will work on all devices and formats.


This course is aimed at developers who are already familiar with Customizing Dynamics 365 Customer Engagement, and who want to learn the best practices used when creating advanced extensions.

Publisher resources

Download Example Code

Table of contents

  1. Chapter 1 : Setting Up Our Development Environment
    1. The Course Overview
    2. Dynamic 365 Solution Setup Deployment Strategy
    3. Visual Studio Environment Setup
    4. Managed or Unmanaged?
    5. Setting up our SpaceFlight365 Solution
    6. Package Deployer
    7. Adding Visual Studio Package Dependencies
    8. Adding NuGet Dependencies
    9. Adding Javascript Dependencies
    10. Enabling Source Control using VSTS Git
    11. Managing Branches
    12. Introduction to spkl Task Runner
    13. Creating a Plugin Project with spkl
    14. Deploying a Web Resource Project with spkl
    15. Managing Dynamics 365 Metadata
    16. UnPacking Solutions with spkl
    17. Merging Solution Packager Metadata
    18. Packing Solutions with spkl
  2. Chapter 2 : SpaceFlight365 Design
    1. User Story Mapping
    2. Using State Charts to control flow
    3. State Behavior in Dynamics 365
    4. App Data Modelling
    5. Unified Client Apps
    6. Back to Basics
    7. What is an Account?
    8. Multi-Select Fields
    9. Timezones
    10. Base currency
  3. Chapter 3 : Continuous Integration using VSTS
    1. What is Continuous Integration CI?
    2. Adding Plugin Unit Tests
    3. Adding Javascript Unit Tests
    4. Setting up a CI Build
    5. Creating VSTS Build Definition
    6. Debugging broken builds
    7. Creating a Release Definition
  4. Chapter 4 : SpaceFlight365 Data Model – External Data Integration
    1. Introduction to Data Integration with Dynamic 365
    2. Logical Physical Integration Framework
    3. Exchange Rate Integration
    4. Exchange Rate Action Plugin Unit Tests
    5. Implement Exchange Rate Plugin
    6. Deploy Exchange Rate Plugin
    7. Flight Telemetry Virtual Entity
    8. Custom Virtual Entity Data Provider
    9. Registering Custom Data Provider
    10. Airport Flight Status Integration
    11. External Integration User Setup
    12. Workflow to apply status update
    13. Check In Status Integration
  5. Chapter 5 : SpaceFlight365 – Form Extensions
    1. Client or Server?
    2. Taking client scripts to the next level
    3. Deploying Debugging ClientHooks
    4. Calling Dynamics 365 SDK Services from JavaScript – a moving target!
    5. Calling the WebApi from JavaScript
    6. Command Bar Customizations
    7. Adding Buttons Commands using the Ribbon Workbench
    8. Wiring up the JavaScript to the Cancel Booking Command
    9. Dynamic Flyouts on Forms
    10. Extending Grids
    11. Adding Grid On Change Events
    12. Grid Control Events
    13. Adding Form Notifications
    14. Adding Grid Status Icons
  6. Chapter 6 : SpaceFlight365 HTML Web Resources
    1. MVVM Pattern
    2. etting up the Client UI library and unit tests
    3. Adding Seat Selection logic to the View Model Unit Testing
    4. Wiring up View Model to View
    5. Adding Knockout Bindings
    6. Responding to Drag Events
    7. Adding Touch Support
    8. Loading data for Seat Selection
    9. Testing inside the Unified Client
    10. Saving the Seat Assignments
    11. Handling Errors
    12. Preparing for deployment

Product information

  • Title: Designing and Building Custom Apps using Dynamics 365
  • Author(s): Scott Durow
  • Release date: March 2018
  • Publisher(s): Packt Publishing
  • ISBN: 9781788390613