MOC 80295, Extending Microsoft Dynamics CRM 2011

This 3 day instructor-led training class is presented by Microsoft training partners to their end customers. Channel Partners nationwide hire proven AMS Subject Matter Expert Microsoft Certified Trainers (MCT’s) to teach on-site or on-line classes.

This class teaches detailed and interactive ways to develop extensions for Microsoft Dynamics CRM 2011, with focus on extension methods documented in the Microsoft Dynamics CRM SDK.  It provides instruction on the use of a number of Common Platform Operations, on how to query and execute these operations, as well as on developing a concise understanding of business process implementation and workflows.  In addition, the course describes how to use Plug-ins, application event programming, client extensions and web resources.  Finally, it includes a summary overview of the integration between Windows Azure and Microsoft Dynamics CRM 2011.

This class is a CRM development course intended primarily for partners and customers who have a technical background and familiarity with Microsoft Dynamics CRM 4.0 or Microsoft Dynamics CRM 2011.  The audience must also be experienced in basic form customizations and workflows.

At the completion of this class students will be able to:

  • Describe how Microsoft Dynamics CRM 2011 is extended and the core extensibility features.
  • Use common methods to access system and custom entities, including the Security Model, business logic, xRM Framework and exceptions.
  • Execute queries in the Microsoft Dynamics CRM database, including QueryAttribute, QueryByExpression, LINQ, FetchXM, filtered views and OData.
  • Explain how the Organization Service web service interacts with Microsoft Dynamics CRM metadata.
  • Develop custom workflow activities for use within Microsoft Dynamics CRM that run code when configured workflow or dialog rules are created.
  • Debug custom workflow activity code and use declarative workflows for On-premise deployments.
  • Use Plug-ins to extend the functionality of events for any entity in Microsoft Dynamics CRM 2011.
  • Understand the integration between Windows Azure with Microsoft Dynamics CRM 2011.
  • Use the built-in features of the Microsoft Dynamics CRM application and understand how the Dynamics CRM application behaves when forms are loaded or saved, field data changed, tabs change state, and when IFRAMES are uploaded.
  • Add custom buttons, menu items and modifications to the navigation areas, including interaction with the Site Map and the Ribbon.
  • Add custom web content (for example HTML, Images, Silverlight, JavaScript) to CRM forms.
  • Use web resources to enable the storage of shared blocks of code or resources for reuse across the Microsoft Dynamics CRM web application.

Course Outline

Module 1: Extensibility Overview

This module introduces some of the basic concepts in Microsoft Dynamics CRM 2011, including a brief description of the xRM Application Framework, and the platform and features upon which it is built. The module also provides a review of the Security model, business logic, business entity and data access components.  Finally the module contains a list of helpful skills and resources to assist in the development process.

  • Objectives
  • Introduction
  • xRM Application Framework
  • Extensibility Platform and Features
  • Security Model
  • Business Model
  • Business Logic
  • Business Entity Components
  • Data Access Components and Platform
  • Helpful Skills
  • Resources
  • Summary
  • Test Your Knowledge
  • Quick Interaction: Lessons Learned
  • Solutions

After completing this module, students will be able to:

  • Describe how Microsoft Dynamics CRM 2011 is designed to be extended and the core extensibility features
  • Explain how the Security Model affects custom development and design.
  • Explain how “business logic” is incorporated
  • Explain how entities are structured and defined within the xRM Framework
  • Examine how data access is handled with the application
  • Recognize the skills developers will use to extend Microsoft Dynamics CRM 2011 and the resources available to them
Module 2: Common Platform Operations

This module explains how to use a number of common methods to access both system and custom entities in Microsoft Dynamics CRM 2011.  It includes a detailed description of these methods and the available data types in the system. The module also contains a sample application that shows the audience how to create and update a Microsoft Dynamics CRM 2011 entity. Finally, it provides some helpful information about error handling.

  • Objectives
  • Introduction
  • WCF Web Services
  • Discovery Service
  • Early versus Late-Binding
  • Early-Bound Entity Class
  • Late-Bound Entity Class
  • Organization Service
  • Authentication and Authorization
  • Entity Information
  • Working with Data Types
  • Using the Create Method
  • Using the Retrieve Method
  • Using the Update Method
  • Using the Delete Method
  • Using the RetrieveMultipleMethod
  • Handling WCF Faults
  • Summary
  • Test Your Knowledge
  • Solutions

After completing this module, students will be able to:

  • Discuss the use and benefits of the Windows Communication Foundation
  • Use the Discovery Service web service to access Organization-level information
  • Explain the difference between early and late-bound classes
  • Use the code generation tool to create a file which contains multiple classes to use in early-bound code
  • Develop custom code that used late-bound classes
  • Reference and use the Organization Service
  • Explain security dependencies
  • Identify how Entity information is used with the Organization web service
  • Identify the different Microsoft Dynamics CRM data types
  • Use the Create method of the Organization Service class to create a new record in Microsoft Dynamics CRM
  • Use the Retrieve method of the Organization class to retrieve a single record
  • Use the Update method of the Organization Service class
  • Use the Delete method of the Organization Service class
  • Use the RetrieveMultiple method of the Organization Service class
  • Identify how to manage exceptions thrown by the Microsoft Dynamics CRM platform
Module 3: Querying Data and Executing Operations

This module provides the audience a variety of ways to query the Microsoft Dynamics CRM database including: QueryAttribute, QueryByExpression, LINQ, FetchXML, Filtered views and OData. Additionally, the module describes the Execute method and explains how to use the OrganizationRequest and OrganizationResponse messages within Microsoft Dynamics CRM. Finally, the module explains how the Organization Service web service can be used to interact with Microsoft Dynamics CRM metadata.

  • Objectives
  • Introduction
  • Querying in Microsoft Dynamics CRM 2011
  • Query Expression
  • QueryByAttitude
  • LINQ Queries
  • FetchXML
  • Filtered Views
  • OData
  • Execute Method
  • Requests and Responses
  • Using the MetadataService Web Service
  • Summary
  • Test Your Knowledge
  • Quick Interaction: Lessons Learned
  • Solutions

After completing this module, students will be able to:

  • List querying options available to developers
  • Use the QueryExpression class to retrieve records based on complex criteria
  • Use the QueryByAttribute class for simple queries
  • Identify the benefits and appropriate uses of LINQ when querying and interacting with data
  • Demonstrate and explain the uses of FetchXML
  • Examine how filtered views can be used to access data by using SQL
  • Use and specify OData elements when querying
  • Use the Execute method of the Organization Service for more specific platform operations
  • Identify common Request and Response classes
  • Access and update schema information through he Organization Service web service
Module 4: Implementing Business Processes

This module explains how to develop custom workflow activities for use within Microsoft Dynamics CRM.  The functionality of Microsoft Dynamics CRM can be extended by writing custom workflow activities that run code when configured workflow or dialog rules are run.  In addition, the module describes how to debug custom workflow activity code as well as how to use declarative workflows for On-premise deployments.

  • Objectives
  • Introduction
  • Overview of Workflow
  • Overview of Dialogues
  • Setting up Custom Workflow Activity Assemblies
  • Demonstration: Configuring a Custom Workflow Activity
  • Creating Custom Workflow Activities
  • Debugging Custom Workflow Activities
  • Creating and Modifying Windows Workflow Foundation (XAML Workflows)
  • Demonstration: Modifying an Existing Workflow in Visual Studio 2010
  • Summary
  • Test Your Knowledge
  • Quick Interaction: Lessons Learned
  • Solutions

After completing this module, students will be able to:

  • Identify core workflow features in Microsoft Dynamics CRM
  • Review the basic concepts, terminology and benefits of using dialogues
  • Examine the steps involved in developing and deploying custom workflow activities
  • Create custom workflow activities
  • Debug custom workflow activities
  • Modify an existing Microsoft Dynamics CRM 2011 workflow in Visual Studio
Module 5: Plug-ins

This module provides the audience with an overview of Plug-ins.  Plug-ins are powerful mechanisms used to extend the functionality of events for any entity in Microsoft Dynamics CRM 2011.  The module reviews how plug-ins are used.  It provides an explanation of the event framework, and examines Plug-ins as they pertain to Isolation, Trusts and Statistics.  In addition the module illustrates how to develop Plug-ins, use impersonation and Entity Classes, and how to register, deploy and debug Plug-ins.  Finally the module provides an overview of how to integrate Windows Azure with Microsoft Dynamics CRM 2011.

  • Objectives
  • Introduction
  • Overview of Plug-ins
  • Event Framework
  • Plug-in Isolation, Trusts and Statistics
  • Developing Plug-ins
  • Impersonation in Plug-ins
  • Entity Classes and Plug-ins
  • Register and Deploy Plug-ins
  • Debugging Plug-ins
  • Windows Azure Integration with Microsoft Dynamics CRM 2011
  • Summary
  • Test Your Knowledge
  • Quick Interaction: Lesson Learned
  • Solutions

After completing this module, students will be able to:

  • Identify how Plug-ins can be used to extend Microsoft Dynamics CRM 2011
  • Review the event framework
  • Examine Plug-in Isolation, Trusts and Statistics
  • Develop Plug-ins
  • Use impersonation in Plug-ins
  • Register and deploy Plug-ins
  • Debug Plug-ins
  • Integrate Windows Azure with Microsoft Dynamics CRM
Module 6: Application Event Programming

This module explains how to use the built-in features of the Microsoft Dynamics CRM application.  It also shows how the Microsoft Dynamics CRM application behaves when forms are loaded or saved, field data changes, tabs change state, and when IFRAMES are loaded. In Microsoft Dynamics CRM, event handler code can be attached to five events.

  • Objectives
  • Introduction
  • Using Jscript Libraries
  • Form and Field Events
  • Xrm.Page
  • Xrm.Page.context (Client-Side Context)
  • Xrm.Pge.data entity
  • Xrm.Page.ui
  • Form Types
  • Form Event Handler Execution Context
  • Setting Event Dependencies
  • Pass Parameters
  • Using Best Practices in Writing Client-Side Code
  • Debugging Client-Side Code
  • Summary
  • Test Your Knowledge
  • Quick Interaction: Lessons Learned
  • Solutions

After completing this module, students will be able to:

  • use JScript Libraries to Customize Microsoft Dynamics CRM
  • Explore form and field events
  • Examine the Xrm.Page object
  • Examine the Xrm.Page.context (client-side context) object
  • Examine the Xrm.Page.data.entity object
  • Examine the Xrm.Page.ui object
  • Explore form types
  • Examine the form event handler execution context
  • Identify how to set event dependencies
  • Evaluate how parameters can be used within Microsoft Dynamics CRM 2011 forms
  • Apply best practices when writing client-side code
  • Identify how to debug client-side code

Module 7: Client Extensions

This module explains how to add custom buttons, menu items, and navigation areas so that custom solutions are included in Microsoft Dynamics CRM.  It also explains how to modify the Application Navigation area and goes into detail on the ways to customize both theSite Map and the Ribbon.

  • Objectives
  • Introduction
  • Customizing the Site Map
  • Customizing the Ribbon
  • URL Addressable Forms and Views
  • Summary
  • Test Your Knowledge
  • Quick Interaction: Lessons Learned
  • Solutions

After completing this module, students will be able to:

  • Integrate web pages into the user interface by using the Site Map
  • Describe the steps to modify the Ribbon
  • Demonstrate the use of Custom Actions, Rules and Localizing Ribbon controls
  • Describe how URL addressable forms can be used
Module 8: Web Resources

This module explains how the addition of custom web content (for example HTML, Images, Silverlight, JavaScript) to CRM forms is a common method that is used to extend CRM functionality.  It describes a few examples of the use of client-side technology such as among others, adding custom validation, mashups with other applications and adding new applications (for example, Silverlight applications displaying Microsoft Dynamics CRM data).  The module also describes how web resources are used to enable the storage of shared blocks of code or resources so that they can then be reused across the Microsoft Dynamics CRM web application.

  • Objectives
  • Introduction
  • Overview of Web Resources
  • Web Resource Management
  • Referencing Web Resources
  • Silverlight Web Resource
  • REST Endpoint, OData and JSON
  • Using JQuery
  • Test Your Knowledge
  • Quick Interaction: Lessons Learned
  • Solutions

After completing this module, students will be able to:

  • Overview of the use of web resources in Microsoft Dynamics CRM 2011
  • Evaluate how parameters can be used
  • Demonstrate how web resources are implemented and utilized
  • Practice referencing web resources within other web resources
  • Implement the use of a Silverlight web resource
  • Define REST
  • Examine and understand the use of ATOM and JSON
  • Understand and demonstrate how JQuery can be utilized

To Hire an AMS Microsoft Dynamics CRM Subject Matter Expert
Consultant and Instructor who also teaches this class, call 800-798-3901 today!

Leave a Reply