Extending Microsoft Dynamics CRM 4.0
Course 8969 : Three days;
Instructor-Led
Course Fee:
$1497.00
Course Time: 3 days, 9:00 am - 5:00 pm, or 6 evenings, 6pm - 9pm
This course
helps you prepare for the following Microsoft
Certified Professional exam:
CRM 4.0 Extending Microsoft Dynamics
Certification Track:
Microsoft Dynamics Development
Introduction
Prerequisites
Before attending this course, students must have:
| |
Completed Course 8912A Customization and
Configuration in Microsoft Dynamics CRM, or have
equivalent knowledge of the customization
capabilities of Microsoft Dynamics CRM.
|
| |
At least three months experience creating
.NET applications using Microsoft Visual Studio.
|
| |
A good understanding of Web development
technologies including programming with DHTML.
|
Microsoft Certified Professional Exams
When you pass Exam MB2-634: CRM 4.0 Extending Microsoft
Dynamics, you complete the requirements for the
following certification:Microsoft
Certified Business Management Solutions Specialist
Exam
MB2-634: CRM 4.0 Extending Microsoft Dynamics: counts as
credit toward the following certification:
Course Materials
The student kit includes a comprehensive workbook and
other necessary materials for this class.
The following software is provided in the student
kit:
| |
Student CD contains Visual Studio projects
used in the course.
|
Course Outline
Module 1: Extensibility Overview
This module provides an overview for the course. It
introduces the features available to extend Microsoft
Dynamics CRM.
Lessons
| |
Microsoft Dynamics CRM Design Focus
|
| |
Extensibility Features
|
| |
Required Skills
|
| |
Resources
|
After completing this module, students will be able
to:
| |
Understand how Microsoft Dynamic CRM is
designed to be extended.
|
| |
Recognize the main extensibility features.
|
| |
Recognize the skills they will need to use
the extensibility features.
|
| |
Recognize resources that will help them learn
more.
|
Module 2: Microsoft Dynamics CRM Architecture
This module describes the Microsoft Dynamics CRM
architecture as it applies to practical decisions when
planning extensions to Microsoft Dynamics CRM. A strong
understanding of the Microsoft Dynamic CRM architecture
provides insight that can be used when developing
extensions.
Lessons
| |
Extensibility Points
|
| |
Microsoft Office Outlook Clients
|
| |
Layers
|
| |
Application Layer
|
| |
Platform Layer
|
| |
Database Layer
|
Demonstration: Using the Metadata Browser
| |
Open the Metadata Browser.
|
| |
Import the Opportunity Details Custom Entity.
|
| |
Note how Opportunity Details is related to
Opportunities.
|
After completing this module, students will be able
to:
| |
Recognize where the available extension
features exist within Microsoft Dynamics CRM.
|
| |
Understand how the Microsoft Dynamics CRM
Clients for Microsoft Office Outlook interact
with Microsoft Dynamics CRM.
|
| |
Understand the basic components of Microsoft
Dynamics CRM and the functions they perform.
|
| |
Understand how Microsoft Dynamics CRM
enforces security.
|
| |
Understand how Microsoft Dynamics CRM applies
business logic.
|
| |
Understand how Microsoft Dynamics CRM uses
meta-data.
|
| |
Understand how Microsoft Dynamics CRM exposes
Web Service APIs.
|
| |
Understand the functions of the Microsoft
Dynamics CRM Platform.
|
| |
Understand how Microsoft Dynamics CRM
interacts with the SQL Server data store.
|
Module 3: Common Platform Operations
This module explains how to include the Microsoft
Dynamics CRM Web Service APIs into development projects
and how to use common methods available for all
Microsoft Dynamics CRM entities. This module also
explains how data types are implemented in Microsoft
Dynamics CRM as well as helper code that developers can
use to manage Microsoft Dynamics CRM data types.
Finally, the process of handling SOAP exceptions from
the Microsoft Dynamics CRM Web Services is described.
Lessons
| |
CrmDiscoveryService
|
| |
CrmService
|
| |
crmAuthentication Token
|
| |
Entity Information
|
| |
Microsoft Dynamics CRM Data Types
|
| |
Using Type Helpers
|
| |
Using the Create Method
|
| |
Using the Retrieve Method
|
| |
Using the Update Method
|
| |
Using the Delete Method
|
| |
Using the RetrieveMultiple Method
|
| |
Handling SOAP Exceptions
|
Lab 3.1: Importing Leads
| |
Create a .NET console application that uses
the Create Method to import Leads from a .csv
file.
|
Lab 3.2: Contact Management Application
| |
Create a .NET Web application that allows
users to view, update and delete Microsoft
Dynamics CRM contact records.
|
After completing this module, students will be able
to:
| |
Use the common CrmService methods for all
Microsoft entities.
|
| |
Use Microsoft Dynamics CRM data types and use
the type helper provided in the Microsoft
Dynamic CRM SDK.
|
| |
Handle SOAP Exceptions generated by the
CrmService.
|
Module 4: Advanced Platform Operations
This module explains how to query data and perform
actions on the Microsoft Dynamic CRM platform using the
Execute Method with the appropriate Request and Response
classes. It also describes the use of Filtered Views,
the DynamicEntity class and methods to work with the
Microsoft Dynamic CRM Metadata.
Lessons
| |
Querying Data
|
| |
QueryExpression
|
| |
QueryByAttribute
|
| |
Saving Queries
|
| |
Filtered Views
|
| |
Execute Method
|
| |
Requests and Responses
|
| |
Dynamic Entities
|
| |
Using the Metadata Web Service
|
| |
Caching Metadata
|
Lab 4.1: Using Query Expressions
| |
Create a .NET console application to query
the Microsoft Dynamics CRM platform using
QueryExpression.
|
Lab 4.2: Using Filtered Views
| |
Create a .NET console application to query
the Microsoft Dynamics CRM platform using
Filtered Views.
|
Lab 4.3: Using Request and Response
| |
Create a .NET console application that uses
the Execute Method to reassign accounts evenly
amongst users.
|
After completing this module, students will be able
to:
| |
Query Microsoft Dynamics CRM using
QueryExpression, QueryByAttribute and Filtered
Views.
|
| |
Use the CrmService.Execute method.
|
| |
Use DynamicEntity.
|
| |
Access, use and cache Metadata.
|
Module 5: Custom Workflow Activities
This module explains how to create and set up Custom
Workflow Activities.
Lessons
| |
Configuring Custom Workflow Activities
|
| |
Workflow Architecture
|
| |
Setting Up Custom Workflow Activity
Assemblies
|
| |
Creating Custom Workflow Activities
|
| |
Debugging Custom Workflow Activities
|
Demonstration: Configuring a Custom Workflow
Activity
| |
Create a simple workflow rule that uses a
Custom Workflow Activity.
|
Lab 5.1: Creating a Custom Workflow Activity
| |
Create a simple Custom Workflow Activity and
register it using the Plug-in Registration Tool
so that the activity can be used in a workflow
rule.
|
After completing this module, students will be able
to:
| |
Write Custom Workflow Activities.
|
| |
Create Workflow rules that use Custom
Workflow Activities.
|
| |
Use the Plug-in Registration Tool.
|
| |
Understand Workflow Architecture.
|
Module 6: Plug-ins
This module explains how to extend the functionality
of Microsoft Dynamics CRM events by writing custom
plug-ins.
Lessons
| |
Plug-in Model
|
| |
Plug-ins Overview
|
| |
Event Framework
|
| |
Developing Plug-ins
|
| |
Impersonation in Plug-ins
|
| |
Dynamics Entities and Plug-ins
|
| |
Deploying Plug-ins
|
| |
Debugging Plug-ins
|
Lab 6.1: Creating a Plug-in
| |
Create a pre-event plug-in and use the
Plug-in Registration tool to register it against
the event.
|
After completing this module, students will be able
to:
| |
Decide when to use Plug-ins.
|
| |
Review the Event Framework.
|
| |
Develop, de-bug and deploy Plug-ins.
|
| |
Use Dynamic Entities within Plug-ins.
|
Module 7: Application Event Programming
This module explains how to write client-side code
for Microsoft Dynamics CRM Form and field events. It
includes the available form and field events, how to
work with form and field values, debugging client-side
code and several techniques to improve productivity and
solve business problems.
Lessons
| |
Form and Field Events
|
| |
Overview of Form and Field Events
|
| |
Accessing Microsoft Dynamics CRM Data Fields
|
| |
Setting Event Dependencies
|
| |
Using Best Practices in Writing Client-side
code
|
| |
Debugging Client-side code
|
| |
Using DHTML
|
| |
Developing Code with External Files
|
| |
Requesting External Data
|
| |
Accessing Microsoft Dynamics CRM Web Services
|
Lab 7.1: Creating Heirarchical Picklists
| |
Implement a hierarchical picklist on the
phone call entity.
|
| |
Values in the Call Description picklist will
be dependent on the option chosen for the Call
Type picklist.
|
Lab 7.2: Using XML Request
| |
Use the onChange Event of the postal code
field to auto-populate the state and city codes
based on the value of the postal code.
|
| |
Pass the postal code to a Web page using a
query string.
|
| |
Return the XML to update the state and city
fields.
|
| |
Use error handling code.
|
After completing this module, students should be able
to:
| |
Use Form and Field events.
|
| |
Reference Microsoft Dynamics CRM form values.
|
| |
Write and debug client-side code in Microsoft
Dynamics CRM.
|
| |
Request External Data from form and field
events.
|
Module 8: Application Integration
This module explains how to add custom buttons,
menus, and navigation items in Microsoft Dynamics CRM to
integrate other applications. It also explains how to
create applications that have the same appearance and
behaviors as Microsoft Dynamics CRM. Finally, it
describes how IFrames and URL addressable forms are used
to integrate Microsoft Dynamics CRM with other Web
applications.
Lessons
| |
Overview Customizing the User Interface
|
| |
Customizing SiteMap
|
| |
Using ISV.Config
|
| |
Customizations and the Outlook Client
|
| |
Using IFrames in Entity Forms
|
| |
Using the Microsoft Dynamics CRM Design Guide
|
| |
URL Addressable Forms
|
| |
IFrames Considerations
|
| |
Retrieving Data using Parameters
|
| |
Dynamic IFrame
|
| |
URL Addressable Forms and Views
|
Demonstration: Add External Site to Microsoft
Dynamics CRM
| |
Display the Metadata Browser in a custom area
on the Navigation Bar in Microsoft Dynamics CRM.
|
Lab 8.1: Creating Menus and Buttons
| |
Add a custom button on the Contact form.
|
| |
The custom button will open a Web site used
to set users passwords.
|
Lab 8.2: Creating a Task with Default Data
| |
Add a button on the Case form.
|
| |
Use this button to open a new Task form with
a specific set of default data.
|
| |
Retrieve some of the data from the Case.
|
After completing this module, students will be able
to:
| |
Add custom buttons, menus, and navigation
items to the Microsoft Dynamics CRM user
interface.
|
| |
Use IFrames to integrate other applications
into Microsoft Dynamics CRM.
|
| |
Perform actions on selected records in a
Microsoft Dynamics CRM view.
|
| |
Set default data in form fields.
|
| |
Create applications with the same appearance
and behaviors as Microsoft Dynamics CRM.
|
Module 9: Building ASP .NET Extensions
This module explains how to configure and deploy
custom ASP .Net pages which are deployed on the same Web
site as Microsoft Dynamics CRM.
Lessons
| |
Web.config settings within Microsoft Dynamics
CRM
|
| |
Authentication within Custom ASP .Net
applications
|
| |
Deploying Custom ASP .Net Applications
|
Lab 9.1: Creating and Deploying an ASP .NET
Application
| |
Build and Deploy a Custom ASP .Net
application within the Microsoft Dynamics CRM
Web site.
|
After completing this module, students will be able
to:
| |
Build and Deploy ASP .Net Applications on the
Microsoft Dynamics CRM Web site.
|
| |
Modify the web.config file.
|
| |
Understand the authentication and
impersonation mechanism within the application.
|
|