Extending Microsoft Crm 3.0Pentalab
- Sesto san giovanni
- 21 ore di lezione
Domande più frequenti
Before attending this course, students must have: - Completed Course 8525A, Microsoft CRM 3.0 Customization, or have equivalent knowledge of the cu
This three-day instructor-led course provides students with the knowledge and skills to develop extensions for Microsoft CRM 3.0.The course focuses on extension methods documented in the Microsoft CRM 3.0 SDK. It includes content on Microsoft CRM Web Service programming, creating and configuring workflow .NET assemblies and business logic extensions (callouts), advanced client-side scripting, application integration capabilities and how to create a customer portal solution that connects Microsoft CRM 3.0 to the internet.
This course is intended for .NET developers who work with Microsoft CRM and understand the built-in customization capabilities of the application. Developers attending this course should also understand web development technologies including client-side programming using DHTML. This course is intended for developers creating extensions for a single Microsoft CRM implementation - it does not contain guidance for ISVs creating packaged Microsoft CRM 3.0 add-on products for re-sale
At Course Completion
After completing this course, students will be able to:
- Create applications that use the Microsoft CRM 3.0 Web Services to perform actions on the Microsoft CRM platform.
- Create, configure and debug .NET assemblies to use in workflow.
- Create, configure and debug .NET assemblies to use in business logic extensions (Callouts).
- Create and debug client-side code for Microsoft CRM form events.
- Integrate other applications with Microsoft CRM 3.0 through the use of URL addressable forms, IFrames, and custom buttons, menus, and navigation areas added to Microsoft CRM.
- Recognize licensing and security issues related to building extensions to Microsoft CRM that connect to the Internet.
Before attending this course, students must have:
- Completed Course 8525A, Microsoft CRM 3.0 Customization, or have equivalent knowledge of the customization capabilities of Microsoft CRM 3.0.
- 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
This course will help the student prepare for the following Microsoft Certified Professional exam:
- Exam Extending Microsoft CRM 3.0:
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.
Additional ReadingTo help you prepare for this class, review the following resources:
- The Microsoft CRM 3.0 SDK
- Working with Microsoft Dynamics CRM 3.0, Microsoft Press
Chapter 1: Extensibility Overview
This brief chapter serves as an overview for the course. It introduces the features available to extend Microsoft CRM 3.0.
- Microsoft CRM Design Focus
- Extensibility Features
- Required Skills
- ResourcesAfter completing this module, students will be able to:
- Understand how Microsoft CRM was 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.
Chapter 2: Microsoft CRM Architecture
This chapter describes the Microsoft CRM 3.0 architecture as it applies to practical decisions when planning extensions to Microsoft CRM. A strong understanding of the Microsoft CRM architecture provides insight that can be used when developing extensions.
- TOPIC: Architecture Overview
- Extensibility Points
- Outlook Clients
- TOPIC: Application Layer
- Application Layer Security
- Data Validation
- Business Logic
- Meta-data driven UI
- TOPIC: Platform Layer
- Web Services
- Entity Definitions
- Platform Security
- Platform Business Logic
- Data Access Components
- TOPIC: Database Layer
Demonstration: Using the Metadata BrowserAfter completing this module, students will be able to:
- Recognize where the available extension features exist within Microsoft CRM 3.0.
- Understand how the Microsoft CRM Clients for Microsoft Office Outlook interact with Microsoft CRM.
- Understand the basic components of Microsoft CRM 3.0 and the functions they perform.
- Understand how Microsoft CRM enforces security.
- Understand how Microsoft CRM applies business logic.
- Understand how Microsoft CRM uses meta-data.
- Understand how Microsoft CRM exposes Web Service APIs.
- Understand the functions of the Microsoft CRM Platform.
- Understand how Microsoft CRM interacts with the SQL Server data store.
Chapter 3: Common Platform Operations
This chapter explains how to include the Microsoft CRM Web Service APIs into development projects and how to use common methods available for all Microsoft CRM entities. This module also explains how data types are implemented in Microsoft CRM as well as helper code that developers can use to manage Microsoft CRM data types. Finally, the process of handling SOAP exceptions from the Microsoft CRM Web Services is described.
- TOPIC: CrmService
- Setting Up the CRM Services
- TOPIC: Common Methods
- About Entities
- Microsoft 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 1
- Create a .NET Web application that will allow users to view, update and delete Microsoft CRM contact records
Lab 3.3: Contact Management Application 2
- Modify the .NET Web application created in Lab 3.2 to implement SOAP Exception handlersAfter completing this module, students will be able to:
- Use the common CrmService methods for all Microsoft entities
- Use Microsoft CRM data types and use the type helper provided in the Microsoft CRM SDK
- Handle SOAP Exceptions generated by the CrmService
Chapter 4: Advanced Platform Operations
This chapter explains how to query data and perform actions on the Microsoft 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 CRM meta-data.
- TOPIC: Querying Data
- Saving Queries
- Filtered Views
- TOPIC: Using Execute Methods
- Using the Execute Method
- Requests and Responses
- TOPIC: Dynamic Entities
- Binding Microsoft CRM Data to a .NET DataGrid
- TOPIC: MetaData Service
- Using the MetaData Web Service
- Caching MetaData
Lab 4.1: Using QueryExpression
- Create a .NET console application to query the Microsoft CRM platform using QueryExpression
Lab 4.2: Using Filtered Views
- Create a .NET console application to query the Microsoft CRM platform using Filtered Views
Lab 4.3: Using Requests and Responses
- Create a .NET console application that will use the Execute Method to re-assign accounts evenly amongst users.
Lab 4.4: Bind Microsoft CRM Data to a .NET DataGrid
- Create a Web application that will use DynamicEntity to display Microsoft CRM accounts in a .NET DataGrid control.
Lab 4.5: Link UI features to Microsoft CRM Metadata
- Extend the solution created in Lab 4.4 to query the Microsoft CRM meta-data so that the column labels in the DataGrid control display the current field label valuesAfter completing this module, students will be able to:
- Query Microsoft CRM using QueryExpression, QueryByAttribute and Filtered Views
- Use the CrmService.Execute method
- Use DynamicEntity
- Accesss, use and cache meta-data
Chapter 5: Workflow .NET Assemblies
This chapter explains how to configure, create and debug .NET assemblies for use in workflow rules.
- TOPIC: Configuring .NET Assemblies
- Overview of Workflow
- Understanding the Workflow Service
- Setting up Workflow .NET Assemblies
- Workflow Configuration File Overview
- Specifying Assembly Information
- Defining Parameters
- Specifying Return Information
- TOPIC: Creating .NET Assemblies
- Data Type Mapping
- Support for Web Services
- Running Code in User Context
- Debugging Workflow Assemblies
Demonstration: Configuring a Workflow .NET Assembly
Lab 5.1: Creating a Workflow .NET Assembly
- Create a Workflow .NET assembly that defines a RouteLead method. This method will assign a lead to the user with the fewest leads.
- Configure the assembly so the method is available in the Workflow Manager application
- Create a workflow rule that will automatically assign a lead when it is createdAfter completing this module, students will be able to:
- Create .NET assemblies for use in workflow
- Configure Microsoft CRM to display methods in the assembly
- Specify parameters to pass data to an assembly
- Handle values returned from the assembly
- Debug Workflow assemblies
Chapter 6: Business Logic Extensions
This chapter explains how to configure Callouts and create assemblies for use in Callouts.
- TOPIC: Callouts
- Callout Model
- Callout Configuration
- Callout Method Signatures
- Working with Callout Parameters
- Pre-Callout Summary
- Post-Callout Summary
- TOPIC: Developing Callout Components
- Callout Component Development
- Impersonation in Callouts
- Error Handling in Callouts
Lab 6.1: Configuring and Deploying Callouts
- Modify callout.config.xml to subscribe methods in a .dll file to Account event s in order to implement an auditing solution.
Lab 6.2: Creating Callout Components
- Create a .NET assembly that contains methods to automatically number all leads as they are created.
- Deploy and test the assembly
Demonstration: Create Auditing Solution using CalloutsAfter completing this module, students will be able to:
- Understand how callouts work
- Decide when and what kind of Callouts to use
- Configure pre and post callouts
- Develop and Deploy callouts
- Handle errors in callouts
- Debug callouts
Chapter 7: Application Event Programming
This chapter explains how to write client-side code for Microsoft CRM 3.0 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.
- TOPIC: Form and Field Events
- Overview of Form and Field Events
- Accessing Microsoft CRM Data Fields
- Setting Event Dependencies
- TOPIC: Writing Client-side code
- Using Best Practices in Writing Client-side code
- Debugging Client-side code
- Using DHTML
- Developing Code with External Files
- Requesting External Data
Lab 7.1: Creating Hierarchical Picklists
- Implement a hierarchical picklist on the phone call entity.
- Values in the Call Description picklist will be dependant on the option chosen for the Call Type picklist.
Lab 7.2: Formatting Telephone Numbers
- Define a function using an external file to apply consistent formatting to phone numbers on each phone number field on the Contact form.
- Inject the external file into the Contact OnLoad event.
- Call the function from each of the telephone number field OnChange events.
- Test the function and make any necessary adjustments.
- Copy the function definition to the Contact OnLoad event.
- Test and confirm the function works properly in a supported configuration.
Lab 7.3: Using XML Request
- Use AJAX to perform a request of data from the OnChange event on the Postal Code field in the account form
- When the postal code value is set in Microsoft CRM, the Region and City values will be automatically populated based on the postal code.After completing this module, students will be able to:
- Use Form and Field events
- Reference Microsoft CRM form values
- Write and debug client-side code in Microsoft CRM
- Develop code using external files for greater productivity
- 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 CRM to integrate other applications. It also explains how to create applications that have the same appearance and behaviors as Microsoft CRM. Finally, it describes how IFrames and URL addressable form are used to integrate Microsoft CRM with other web applications.
- Overview Customizing the User Interface
- TOPIC: SiteMap
- SiteMap Structure
- Editing SiteMap.xml
- TOPIC: ISV.config
- isv.config.xml Structure
- Performing actions from the Grid
- TOPIC: Customizations and the Outlook Client
- Customizations and the Outlook Client
- Integration Points
- TOPIC: Microsoft CRM Appearance And Behavior
- Using Template.css
- TOPIC: IFrames
- IFrames Considerations
- Retrieving Data using Parameters
- Dynamic IFrame
- TOPIC: Using URL Addressable forms
- URL Addressable Forms
Lab 8.1: Creating Custom 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: Perform Actions on the Grid
- Create a button on the Account grid
- When clicked, any selected accounts on the grid will have their City and Region fields populated based on the postal Code entered.
Lab 8.3: Using IFrames to Display External Data
- Add an IFrame to the Contact form to display integrated data with an external database.
Lab 8.4: Create a Task with Default Data
- Add a button on the Case form.
- This button will open a new Task form with a specific set of default data
- Some of the data will come from the Case
- Add a second button on the Case form to open a Task with different default dataAfter completing this module, students will be able to:
- Add custom buttons, menus, and navigation items to the Microsoft CRM 3.0 user interface
- Use IFrames to integrate other applications into Microsoft CRM
- Perform actions on selected records in a Microsoft CRM view
- Set default data in form fields
- Create applications with the same appearance and behaviors as Microsoft CRM
Chapter 9: Connect Microsoft CRM to the Internet
This chapter explains licensing and security implications related to creating a Customer Portal site that allows external users to interact with Microsoft CRM through a web site connected to the Internet.
- TOPIC: Licensing and Security
- Understanding Licensing
- Best Practices in Security
- TOPIC: Integration with External Sites
- Setting up a site
Lab 9.1: Integration with External Sites
- Create a Web site that includes a Contact Me button.
- When a user accesses this page from the Internet and clicks the Contact Me button, they will be prompted to enter their personal information.
- The Web site is configured to use a proxy account that will create a new Lead in Microsoft CRM when the users submits the form with their personal informationAfter completing this module, students will be able to:
- Recognize licensing requirements and security practices to create a customer portal linked to Microsoft CRM
- Understand how to set up a customer portal site
- Understand how to create and configure with a proxy account so that a customer portal can interact with Microsoft CRM