This Five Day Dynamics CRM 2011 Boot Camp for Developers covers modules from the following Microsoft Dynamics CRM 2011 (Selected modules from 7 days of classes):
80294B: Microsoft Dynamics CRM 2011 Customization and Configuration
80295A: Extending Microsoft Dynamics CRM 2011
80289A: What’s New in Microsoft Dynamics CRM 2011
80296A: Microsoft Dynamics CRM 2011 Installation and Deployment
Associated Exams:
MB2-866 Microsoft Dynamics CRM 2011 Customization and Configuration
MB2-867 Microsoft Dynamics CRM 2011 Installation and Deployment
MB2-879 Microsoft Dynamics CRM 2011 Extending
The course starts with a high level introduction from courses: 80289 and 80296 to provide background information that helps students with understanding the why we do certain steps in the development and extending classes 80294 and 80295. We cover all modules of 80294 (Customization) and 80295 (Extending).
If you are not familiar with the classes: 80294 class represents the amount of functionality or customization you can perform via the browser or if you are using the Online edition of Dynamics CRM 2011. The 80295 (Extending) class let you modify the product extensively. You cannot do this if you have the online edition. To make the extensive modifications of the extending class and run the server-side scripts necessary you must have the On Premise Edition of Dynamics CRM 2011.
Overview: Customizing and Extending Microsoft Dynamics CRM 2011
This module covers the improvements made to the basic entity customization functionality, in addition to enhancements to additional extensibility components such as workflows, dialogs, web resources, solution management, and integration with Microsoft Office SharePoint Server.
Lessons
Lab : Custom Entity Creation
Lab : Custom Activity Creation and Use
Lab : Creating a Dialog Process
Lab : Including SharePoint Document Libraries into Microsoft Dynamics CRM forms
Module 4: Administration, Configuration, and Installation
This module focuses on the hardware and software requirements for Microsoft Dynamics CRM 2011, improvements to the installation process, and an overview of upgrade considerations. This module will cover changes to the Deployment Manager, in addition to licensing and auditing functionality new to this version.
Lessons
Module 5: Configuration and Settings
This module introduces the changes to the Microsoft Dynamics CRM 2011 server settings, and additional personal options that are new to this version. Additionally, this module introduces role based forms and field level security.
Lessons
Lab : Working with Field-Level Security
Module 1: Microsoft Dynamics CRM Components
This module examines the core components of a Microsoft Dynamics CRM deployment.
Lessons
After completing this module, students will be able to:
Module 2: Planning the Installation
This module describes the some of the considerations in planning a Microsoft Dynamics CRM deployment and the hardware and software requirements necessary for deployment.
Lessons
After completing this module, students will be able to:
Module 3: Microsoft Dynamics CRM Server Installation
This module describes the components that are installed during Microsoft Dynamics CRM Server Setup and the installation procedures and options.
Lessons
Lab : Install Microsoft Dynamics CRM 2011 Server
Lab : Load Sample Data
After completing this module, students will be able to:
Module 4: Microsoft Dynamics CRM 2011 Reporting Extensions
This module provides an overview of the report types that are available in Microsoft Dynamics CRM 2011 and the role of Reporting Extensions.
Lessons
Lab : Install Reporting Extensions
After completing this module, students will be able to:
Module 5: Installing and Deploying the E-mail Router
This module discusses the role of the E-mail Router and installing and configuring the E-mail Router.
Lessons
Lab : Install the E-mail Router
Lab : Configure the E-mail Router
After completing this module, students will be able to:
Module 6: Microsoft Dynamics CRM for Microsoft Office Outlook
This module describes the installation requirements for the Microsoft Dynamics CRM for Outlook client and how to install and configure the client.
Lessons
Lab : Install Microsoft Dynamics CRM for Outlook
Lab : Offline Capability
After completing this module, students will be able to:
Module 7: Configure an Internet Facing Deployment
This module describes how to configure a Microsoft Dynamics CRM 2011 deployment for access over the Internet and configuring claims-based authentication.
Lessons
After completing this module, students will be able to:
Module 8: Upgrading to Microsoft Dynamics CRM 2011
This module examines the planning considerations and the steps for upgrading an existing Microsoft Dynamics CRM 4.0 deployment to Microsoft Dynamics CRM 2011.
Lessons
After completing this module, students will be able to:
Module 9: Microsoft Dynamics CRM Deployment Manager
This module examines redeploying Microsoft Dynamics CRM and the role of the Microsoft Dynamics CRM Deployment Manager in carrying out deployment-wide administrations tasks.
Lessons
Lab : Duplicate Adventure Works Cycles Organization
After completing this module, students will be able to:
Module 10: High Availability Options
This module provides a high-level overview of the high-availability options for Microsoft Dynamics CRM.
Lessons
After completing this module, students will be able to:
About this Course
This course describes the techniques required to customize Microsoft Dynamics CRM to meet the specialized needs of businesses. The topics covered include Security; creation and configuration of entities; design of forms views and charts; auditing and Solutions. The course describes each topic and how each topic relates to the other topics to produce a full configured, effective solution.
Audience Profile
This course is intended for both novice and experienced customizers of Microsoft Dynamics CRM who are familiar with the end-user principles of the software. No programming skills are required, but a basic understanding of database principles will be an advantage.
At Course Completion
• After completing this course, students will be able to:
• Design and implement strategies for the creation of Business Units and Security Roles
• Create and configure Microsoft Dynamics CRM Users and Teams
• Describe the principles of customizing the system
• Create and configure fields for both custom and system entities
• Create and configure custom entities, including standard and activity entities
• Design, create and configure relationships between entities
• Create and configure Views, Charts and Forms for both system and custom entities
• Implement Field Security in Microsoft Dynamics CRM
• Configure and monitor audition on Microsoft Dynamics CRM components
• Design, create and configure Solutions in Microsoft Dynamics CRM; implementing both managed and unmanaged Solutions
Module 1: Business Units and Security Roles
This module explains how to create and configure Business Units in Microsoft Dynamics CRM. It also explains the design principles behind Security Roles, and how to create and modify new Security Roles.
Lessons
• Business Units
• Managing Business Units
• Security Features
Lab : Maintaining Business Units
Lab : Copying and Creating Roles
• After completing this module, students will be able to:
• Identify why an organizational hierarchy is defined in Microsoft Dynamics CRM
• Identify the differences between the root business unit and all other business units
• Identify the guidelines that control maintenance of Business Units
• Create and maintain Business Units in Microsoft Dynamics CRM
• Identify the guidelines that control maintenance of business units
• Create and maintain business units in Microsoft Dynamics CRM
• Identify how privileges, access levels, and Security Roles are used by Microsoft Dynamics CRM to ensure data integrity and privacy
• Distinguish between entity-based privileges and task-based privileges
• Differentiate between the five types of access levels used within the Security Roles
• Identify how Microsoft Dynamics CRM uses Security Roles
• Identify the advantages of using the default Microsoft Dynamics CRM Security Roles
• Identify the properties of the system's two default administrative roles
• Define the relationship between roles and Business Units
• Create new Security Roles
• Create new Security Roles by copying privileges and access levels from existing Security Roles
• Identify best practices to follow when configuring Security Roles
Module 2: Configuring Users and Teams
This module describes how to create and configure Users and Teams in Microsoft Dynamics CRM. The module explains the interaction between Active Directory and Users and examines how to assign Security Roles to both Users and Teams.
Lessons
• User Management Overview
• Adding and Maintaining User Accounts
• Team Configuration
Lab: Managing User Accounts
Lab: Managing Teams
• After completing this module, students will be able to:
• Review the characteristics of Microsoft Dynamics CRM's user management structure
• Create and maintain user accounts in Microsoft Dynamics CRM
• Identify the differences between adding a single user and adding multiple users at one time
• Identify the characteristics associated with each user licensing option
• Create and maintain teams of users in Microsoft Dynamics CRM
Module 3: Customizing Microsoft Dynamics CRM Overview
This module describes the customization architecture of CRM. The principles behind Solutions and their components are introduced.
Lessons
• Customization Methodology
• Who can Customize Microsoft Dynamics CRM?
• Types of Customizations
• Types of Customizations - Solutions
Lab: Creating a Solution
• After completing this module, students will be able to:
• Recognize the importance of defining and using an effective implementation methodology as you develop customizations
• Identify how the Microsoft Dynamics CRM architecture influences how and where you customize Microsoft Dynamics CRM
• Recognize the types of customizations that can be made based on the default Microsoft Dynamics CRM security roles
• Recognize some of the ways that Microsoft Dynamics CRM can be customized
• Identify which customizations require publishing and the various ways to publish your customizations
• Understand the use of Solutions
• Discover how you can re-use customizations by exporting Solutions made in one deployment and importing them into another
• Create a new Solution
• Identify the components of Solutions
• Identify the differences between Managed and Unmanaged Solutions
• Configure properties of Managed Solution Components
Module 4: Customizing Fields
This module explains the use of fields in Microsoft Dynamics CRM. The module describes the concept of data types and formats for fields; and, how to create them in for system and custom entities.
Lessons
• Customization Concepts
• Field Data Types
• Field Properties
• Creating Fields
• Creating Option Sets
Lab: Creating a Custom Field
Lab: Creating and Using a Separate Option Set
• After completing this module, students will be able to:
• Review the types of fields available in the system
• Describe the different Data Types available
• Describe the different Field Properties
• Create and edit fields to meet the business needs of your organization
• Examine how to create, configure and delete Option Sets
Module 5: Customizing Entities
This module describes the concept of an entity in Microsoft Dynamics CRM. The module explains how to create new entities and the various configuration options available. It explains the difference between standard and activity entities and the different scenarios in which they can be used.
Lessons
• Entity Concepts
• Modifying Custom Entities
Lab: Creating Custom Entities
Lab: Modifying Entities
• After completing this module, students will be able to:
• Review the types of entities available in the system
• Configure security settings to control access to and maintenance of custom entities
• Edit Existing Entities to meet the business needs of your organization
• Examine how to create, configure, and delete custom entities
• Configure the properties in a Managed Solutions
Module 6: Customizing Relationships and Mappings
This module explains the purpose of entity relationships in Microsoft Dynamics CRM. The module describes how to create and customize 1:N, N:1 and N:N relationships and explains the difference between native and manual N:N relationships.
Lessons
• Types of Entity Relationships
• Creating Entity Relationships
• Entity Mapping
Lab: Create a Manual N:N Relationship
Lab: Create a Mapping
• After completing this module, students will be able to:
• Identify the various types of supported Relationships that can link custom entities with other custom entities and with system entities
• Understand how 1:N Relationship rules control how certain actions taken on a record affect related records
• Create entity relationships and configure relationship behavior
• Discuss how field mapping facilitates data entry when new records related to a parent record are created
Module 7: Customizing Forms, Views and Charts
This module explains the design, creation and customization of Views, Charts and Forms. Views design includes the use of filters and columns lists; and, the idea of system and personal views. The module goes on to explain how to create charts and how to configure charts for various Microsoft Dynamics CRM areas. Form design is covered in detail, including the use of web components on forms, form security and filtered lookups.
Lessons
• Basic UI Customization Capabilities
• View Customization Overview
• Charts
• Form Customization Overview
• Other Form Objects
• Creating New Forms
Lab: View Customization
Lab: Creating Charts
Lab: Forms Design
• After completing this module, students will be able to:
• Introduce the basic user interface components that can be customized to meet your organization's business requirements
• Identify the different ways in which a view can be customized
• Understand the use of Charts with Views, including drill-down capabilities
• Examine the method of creating and configuring Charts for entities
• Identify the features of the form customization tool
• Investigate the other form objects available
• Identify how to add, maintain and organize fields on a form
Module 8: Configuring Field Security
This module explains the concept of field security in Microsoft Dynamics CRM. The module describes how to create and implement Field Security Profiles and how those profiles complement the other security mechanisms in Microsoft Dynamics CRM.
Lessons
• Field Security Scope
• Field Security and Other Security Methods
Lab: Creating and Testing a Field Security Profile
Lab: Modify Field Security
• After completing this module, students will be able to:
• Understand the use of field level security in Microsoft Dynamics CRM
• Create and maintain Field Security Profiles
• Understand how field permission work with Field Security Profiles
• Implement Field Security Profiles by assigning them to Users and Teams
• Examine how field security interacts with entity and record security
Module 9: Configuring Auditing
This module describes the auditing architecture of Microsoft Dynamics CRM. It explains how auditing can be enabled at three levels in Microsoft Dynamics CRM: system, entity and field. The module describes how to view and interpret auditing data.
Lessons
• Enabling Auditing
• Viewing Audit Data
• Managing Audit Partitions
Lab: Configure Auditing
• After completing this module, students will be able to:
• Understand the architecture of auditing
• Examine the use of audit partitions
• Identify the actions that can be audited
• Identify the different types of entities that are audited by default
• Understand how to turn on auditing and select the entity types to be audited
• Set auditing for individual attributes of auditable entities
• Examine audit logs
• Manage audit partitions
Module 10: Configuring Solutions
This module builds on the principles described in module 3 to explain how to create and configure Solutions. The module describes the difference between managed and unmanaged Solutions and illustrates the methods used to export and import both types.
Lessons
• Solutions Review
• Exporting and Importing Unmanaged Solutions
• Exporting and Importing Managed Solutions
Lab: Unmanaged Solutions
Lab: Exporting and Importing Managed Solutions
• After completing this module, students will be able to:
• Review the attributes and functions of Solutions
• Identify how to Export and Import unmanaged Solutions
• Examine the effect of importing unmanaged Solutions
• Identify how to Export and Import managed Solutions
• Examine the effect of importing managed Solutions
This 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.
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.
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.
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 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.
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
Lab: Lab 2.1: Account Management Application
• 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.
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
Lab: Lab 3.2: Using LINQ to Perform, Create, Read, Update and Delete Operations
Lab: Lab 3.3: Using Fetch XML
Lab: Lab 3.4: Using FetchXML
Lab: Lab 3.5: Using Request and Response
• 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.
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-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.
Lessons
Objectives
Lab : Lab 5.1: Creating a Plug-in
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.
Lessons
Lab: Lab 6.1: Telephone Number Formatting
Lab: Lab 6.2: Control Tab Visibility
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.
Lessons
Lab: Lab 7.1: Modifying the Site Map
Lab: Lab 7.2: Customize the Ribbon
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.
Lessons
Lab: Lab 8.1: Silverlight and Opportunity Slider