At the tail end of last year I passed the CRM 2011- Extending CRM 2011 certification and I thought I would just mention how I passed the exam and put up some of my notes to help other people in the CRM dynamics Community pass the exam
I used the Microsoft MOC’s, so if you can get the company you work for to pay for you to go on the course I would recommend that, the link to the course is below
http://www.microsoft.com/learning/en-us/course.aspx?id=80295a
Otherwise I would recommend the elearning of the same course.
I found a great study guide from the blog MSCRM Geek on the blog post below
http://www.mscrmgeek.com/post/2012/05/09/MB2-876-Exam-Study-Notes.aspx
The study guide is 107 pages long
If you want to download just the guide go here
MB2-876 Extending CRM 2011 Exam Notes.docx (1.92 mb)
I have to say it’s very generous of Jason Weibel to put his notes up and I will certainly use the notes whislt studying for this exam
Although I’m not sure if 100 page document is really study notes but this exam is a whopper
Below are may final revision notes, they will only mean something once you have studied for the exam. They are not in any order and they were just some things I wanted to remember and learn a few days before taking the exam.
Hosk’s revision notes for Extending CRM 2011
Client side iFrame event = OnReadyStateComplete.
Early Bound classes
You used the CrmSvcUtil.exe to create early bound classes
Late Bound Classes
You can access variables which are not created at compile time
Debugging a custom workflow – CrmAsyncService.exe process. You can read more about it
http://msdn.microsoft.com/en-us/library/gg327856.aspx
- REST – The REST endpoint for AJAX and Microsoft Silverlight clients provides an alternative interface that you can use to work with Microsoft Dynamics CRM data. Rather than directly invoking the SOAP-based Web service, you can execute requests using a service that is based on a URI. For more information, see Use the REST Endpoint for Web Resources.
- WSDL – This programming paradigm lets you develop code from non-.NET clients, and does not depend on the use of Microsoft Dynamics CRM assemblies. For example, you can use this programming model to write code for Microsoft Dynamics CRM in Java. For more information, see Development from Non-.NET Clients in Microsoft Dynamics CRM.
REST = Create, Read, Update, Delete. Also Associate and Disassociate
SOAP = Assign, Retrieve Metadata, Execute Messages
Use of the REST endpoint is limited to JScript libraries or Silverlight web resources.
Javascript form events
OnSave and OnLoad events for the form
OnChange events for a field
TabStateChange for Tabs
OnReadyStateComplete for iFrame to indicate it has loaded.
SITEMAP
SiteMap is displayed in Outlook as a list of folders shown in ALPHABETICAL order
The Entity class has replaced the DynamicEntity class
Custom XAML workflows cannot be used with CRM Online
Custom workflow activities inherit from the CodeActvity base class
Custom Workflow users Windows Workflow Foundation 4.0. This requires .NET 4
Extraqs is an parameter for forms, you can only have one variable but you can included data to manually split.
Plugins can be deployed to the CRM Database or to the Server hard disk
getOrgLcid
OData sends and receives data by using either ATOM or JavaScript Object Notation (JSON). ATOM is an XML-based format usually used for RSS feeds. JSON is a text format that allows for serialization of JavaScript objects.
Web Resources can be CSS, XSL and XSLT.
Files must be uploaded as Web Resources if you want to use them in CRM.
IDiscoveryService is used to see what organisations the user can view
IOrganizationService is used to run CRM commands
JAVASCRIPT
CRM 2011 uses XRM not crmForm
XRM.Page
XRM.Data
Xrm.Page.ui.GetFormType(); – gets formtype e.g. 1 for create, 2 for update
Xrm.Page.ui.close(); – closes the form
Xrm.Page.data.entity.save(“saveandclose”);
Xrm.Page.context.getAuthenticatedHeader() – returns user credentials.
getAuthenticatedHeader is depreciated, it must have Xrm.Page.context in front of it.
Xrm.Page.context.getUserRoles() – gets user roles
SHARING A RECORD
Assign a record to a user/team
Share a record with a user/team
Capabilities of Image Web resources
With image Web resources you can add images where you need them. Common uses include the following:
- Custom entity icons
- Icons for custom Ribbon controls and SiteMap subareas
- Decorative graphics for entity forms and Web page Web resources.
- Background images that are used by CSS Web resources
Limitations of Image Web Resources
Like all Web resources, image Web resources use the Microsoft Dynamics CRM security context. Only licensed Microsoft Dynamics CRM users who have the necessary privileges can access them.
Only the four specified types of image files (*.jpg, *.png, *.gif, *.ico) are supported.
Limitations of HTML Web Resources
- An HTML web resource cannot contain any code that must be executed on the server. ASP.NET pages cannot be uploaded as HTML web resources.
- HTML web resources can only accept one custom query string parameter called “data”.
Custom Workflow Activities (Workflow Assemblies)
You can create custom workflow activities in Microsoft Visual C# or Microsoft Visual Basic .NET code by creating an assembly that contains a class derived from the Windows Workflow Foundation CodeActivity class
Custom workflow activities are not supported for Microsoft Dynamics CRM Online. This is because Microsoft Dynamics CRM workflows are not supported to run in sandbox mode, and if the custom XAML workflow contains malicious code, this can lead to data security issues
Required Software and Assemblies
To develop Windows Workflow Foundation 4 custom activities, you must use Microsoft Visual Studio 2010, which requires Microsoft .NET Framework 4. If it is not available on your computer, Microsoft Visual Studio 2010 will install it.
The following assemblies must be added to your project. They can be found in the SDK\Bin folder in Microsoft Dynamics CRM SDK.
- Microsoft.Xrm.Sdk.dll
- Microsoft.Xrm.Sdk.Workflow.dll