Course 80295A:

Extending Microsoft Dynamics CRM 2011

Length:3 Days
Published:August 04, 2011
Language(s):English, Chinese (Simplified), French, German, Italian, Japanese, Portuguese (Brazil), Russian, Spanish
Audience(s):Developers
Level:200
Technology:Microsoft Dynamics CRM 2011
Type:Course
Delivery Method:Instructor-led (classroom)
Special Offer:
 
About this CourseThis course offers detailed and interactive information on how 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.
Audience Profile
This course 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 Course Completion
After completing this course, 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 OutlineModule 1: Extensibility OverviewThis 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.Lessons
  • 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 OperationsThis 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.Lessons
  • 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
Lab : Lab 2.1: Creating Leads
  • Goal Description
  • Need a Little Help?
  • Step by Step
  • Step by Step
Lab : Lab 2.1: Account Management Application
  • Goal Description
  • Need a Little Help?
  • Step by Step
  • Step by Step
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 OperationsThis 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.Lessons
  • 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
Lab : Lab 3.1: Using QueryExpression
  • Goal Description
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
  • Step by Step
Lab : Lab 3.2: Using LINQ to Perform, Create, Read, Update and Delete Operations
  • Goal Description
  • Challenge Yourself
  • Need a Little Help?
  • Step by Step
  • Step by Step
Lab : Lab 3.3: Using Fetch XML
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
Lab : Lab 3.4: Using FetchXML
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
Lab : Lab 3.5: Using Request and Response
  • Goal Description
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step #C
  • Step by Step Visual Basic. NET
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 ProcessesThis 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.Lessons
  • 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
Lab : Lab 4.1: Creating a Custom Workflow Activity
  • Goal Description
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step C#
  • Step by Step Visual Basic .NET
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-insThis 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.Lessons
  • 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
Lab : Lab 5.1: Creating a Plug-in
  • Goal Description
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
  • Step by Step
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 ProgrammingThis 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.Lessons
  • 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
Lab : Lab 6.1: Telephone Number Formatting
  • Goal Description
  • Challenge Yourself!
  • Need a Little Help
  • Step by Step
Lab : Lab 6.2: Control Tab Visibility
  • Goal Description
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
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 ExtensionsThis 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. Lessons
  • Objectives
  • Introduction
  • Customizing the Site Map
  • Customizing the Ribbon
  • URL Addressable Forms and Views
  • Summary
  • Test Your Knowledge
  • Quick Interaction: Lessons Learned
  • Solutions
Lab : Lab 7.1: Modifying the Site Map
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
Lab : Lab 7.2: Customize the Ribbon
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
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 ResourcesThis 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.Lessons
  • 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
Lab : Lab 8.1: Silverlight and Opportunity Slider
  • Challenge Yourself!
  • Need a Little Help?
  • Step by Step
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
Before attending this course, students must have:
  • Experience in basic form customizations and workflows
  • Background in one or more of the following technologies:

    .NET-connected applications to Visual Studio, JScript, DHTML, XML, Transact_SQL, Microsoft Dynamics CRM customizations and web services, Silverlight, Windows Workflow Foundation, AJAX and Windows AZURE Platform
Looking for training resources, events and advice from peers? Join the Microsoft Training and Certification Community. Preparing for an exam now? Find your Microsoft Certification Study Group. Talk to us on these social networks:

Find a Microsoft Learning Partner near you

Find Training Near You

Location:

Eg: Seattle, WA or Paris, France