Deprecation of the CRM SharePoint List Component

The Microsoft Dynamics CRM Team announced that CRM 2015 Update 1 will deprecate the List Component as a result of SharePoint’s deprecation of the sandbox solution, a dependency of the List Component. (Click here for more)

It’s time to get prepared for the transition if you use the component list or if you have customers using it. The migration will be simple as long the SharePoint file locations are all correct.

Probably the worse news goes for the users that have folders with several documents under it. Server side will flatten all the documents to one level

Server side integration offers CRM Custom views but it is no longer an IFRAME displaying SharePoint. You won’t be able to use actions performed though SharePoint. If you have done any special customisations from the SharePoint side, you may not be able to use it after upgrading to server side integration. To find more about the differences, check here this awesome post from Scott Durow.


The component list is still out there. I tried that on a brand-new trial with crm 2015 online and have managed to use it just to demo the upgrade for server side integration. Even if CRM2015-SharePointList2013-ENU-amd64 could still possibly work fine for a 2015 Update 1, it’s time to move to server side integration or code your own solution.

You can find instruction to switch to server side integration here:

The instructions are pretty much to set up server side integration just like normal. Before start, you may want to deactivate the outdated SharePoint site records because the wizard will try to validate that.


Once you start, it will check if you have been using  absolute URLs. If so, you will have to fix it and start over.


This is how Document Locations with absolute URL look:


You need to replace that with a Relative URL:


Next screen will give you a choice to point to a Online or On-Premises SharePoint site.


If you have been using the component list and have several SharePoint site locations, The wizard will check it here. Good time to review if you have any old redundant locations.




All done!


Now you can see the SharePoint style is gone. And the folder has been removed. The hightlighetd files were under a folder.



CRM 2015 Online Update 1 – Rollup Fields and Business Rules enhancements

Starting with Rollup Fields, we can now perform calculations using the AVG operator and aggregating data across all activities related to a record. On this example. I created a field that calculates the average time to complete activities for one account


Let’s enable this rollup field and create 3 activities totaling an “actual duration” of 120 min  upon completion…


The Rollup Field calculated an average of 40 min spent to complete each activity.


Another new feature is the ability to “clear” a field using Business Rules.


Here is a very simple example. I created this rule to “clear” the phone field if the value entered on the account name is equal “anonymous”.

First create an account using a normal account name:


After changing “Account Name” value to “anonymous”, the rules kick and clear the value of the “phone” field.


Using Hierarchy Security along with Roles

Hierarchy Security is an extension to the existing CRM security. It allows a user at a higher position or manager role to access the records owned by the subordinated users or by the team that a subordinate user is a member of, and to the records that are directly shared with the subordinate user or the team that a user is a member of.


However, it does not stop the subordinates from accessing manager’s records if the subordinate’s role permissions allow users to view records on a unit level or higher.

Just remember this before considering implementing Hierarchy Security:

Check the roles and permissions that you have before applying Hierarchy Security and remember that direct higher positions have Read, Write, Update, Append, AppendTo access to the lower positions’ data in the direct ancestor path. The non-direct higher positions, have Read-only access to the lower positions’

Lower positions can access higher positions if the lower position (subordinate) has a role with Business Unit or higher access.

Manager Hierarchy

If you have a management structure already in place, Manager Hierarchy may be the best option. You can run an advanced find to see who has a manager and also who has not.  Then check the permission range for those roles.


In addition to the Manager Hierarchy security model, a manager must have at least the user level Read privilege on an entity, to see the reports’ data.

Position Hierarchy

If you don’t have a management structure already in place and\or you just want to give the hierarchical privilege to some user that is not a manager, you can use the position hierarchy model. The position can be assigned to any user independent of the user’s position.

You can find more details here:

Let’s apply the Manager hierarchy too see how that works:

Veronica is a Sales Person on an organization.  On this existing organization, the salesperson role has the following permissions:


When you search for her account records on advanced find you can see all records on her organization because even though she is a report, her role is set to read with organization level range.


let’s change the Salesperson role to user records range.


Now Veronica can only view her own records.


Spencer Low is her manager.


Spencer also had organization level access. Let’s reduce it to user level. This is not necessary if you want the manager to acess data on unit level. I’m just changing it to show that now the manager can view the subordinate records even without role permission


The manager hierarchy now allow spencer to see his records and his subordinate’s.


Now, let’s try the Position Hierarchy

On the structure below, you can observe that the position doesn’t need to match the title and the users doesn’t need to be manager or to have a manager (under the manager field).  Allie Bellew is a manager but here we will give her a subordinate position.


Initially she can view her  records plus the records on her organization because her role has read permission for unit range.


Let’s change her role to read permission with user level access. Now she can only see her records:


Alicia Thomber  has a hierarchical position higher than Allie’s. even with permission to read accounts on her user level, she can also view records of users with “agent” position


This should be useful to entitle some users to be in charge of a department or team and cover up for their peers when necessary.


Try Dynamics Marketing, Power BI and Office 365 E3 along with CRM trial (PART 1)

I’ve been to the MS Dynamics Partner Boot camp early this month and now it’s time to go for the second part next week to check what is new for PowerBI and Dynamics Marketing. For whoever is going to attend similar events or just want to check those features, here it is how to get a trial set for all of this. (Except Social Listening).

If you will use this for training, demo or a time limited event, I would highly suggest that you set it on the day before and test it. Sometimes some of this services may not build\deploy correctly and you will have time to try again.

First Create a CRM trial as usual. At this stage, if you want to test CRM with PowerBI, set the CRM region to the United States.

Once you reach the Office 365 screen, on the left, click “Purchase Services”


We can start getting the “Office 365 enterprise E3” Trial:


You should receive a confirmation screen:


Next, Back to “Purchase Services”, we will choose “Power BI for Office 365 with SharePoint Online (Plan 2) with Yammer:


And finally get Dynamics Marketing:


This trials will build up and after a short while you should have all of this done. But sometime if may take longer or one of this features will get stuck building on the background


Now, let’s take a look on the Power BI. Go to and click on “sign in”:


You will get a prompt similar to the CRM or Office 365 Portal:


Once in, we need to point to the CRM by adding the REST\Odata end point:


To get the CRM REST end point, go to your newly created CRM trial and click Settings >Customizations > Developers Resources:


Select the REST endpoint:


Now, add that endpoint url to the “Service URL” and enter the CRM user Credentials:


After that, Select Authentication Method “oAuth2”:


It will take a while to load the CRM data and than you can finally have a play with that:


I’ll add some more about it on my next Post. Before closing your browser, check your Dynamics Marketing Trial. Here is a Post I published a while ago on how to send Marketing Emails with Dynamics marketing when the trial was available only for partners:


Rollup 1 for CRM 2013 sp1 and Rollup 18 for CRM 2011 [Categorised Summary]

I know this is already “old”, but I tried to categorize the fixes for this latest rollups based on the CRM forum threads and based on some features that are a little notorious for having a few issues now and them (if you know what I am mean.)

Update Rollup 1 for CRM 2013 Service Pack 1 resolves the following issues: 

CRM Outlook Related

  • Emails with attachments created while in Offline mode throw an error while going Online if user is set to use CRM Email form as the default email form for outlook
  • Duplicate records created if Save or Save and Close is pressed multiple times
  • When tracking an email through the CRM Email Router, when there are two images embedded in the body and one of the images is a link to an image (url), the email that is not a link to an image gets duplicated and replaces the one with the link.
  • Unable to select body in completed Email activities
  • When you apply conditional formatting to a CRM view in the CRM for Outlook Client, you receive an error when changing the sort order and navigating to page 2 of this view: “There was an error displaying the records in this view.”
  • Forms opened as the result of the Convert To, Set Regarding, or Set Parent ribbon actions cause the forms to be opened in the Outlook process rather than the WebFormsHost process which may cause Outlook to become unstable.
  • When a user who has delegated access to a calendar receives a Meeting Request for another user, if they track the item in CRM and then try and set the regarding object, the appointment is never created in CRM. The appointment states, “This meeting will be tracked in CRM after it is saved or sent”.
  • CRM users who accept and track appointments received from a sender using a POP3 email provider such as Hotmail or Gmail may notice duplicate Appointments in Microsoft Dynamics CRM.
  • Users of the Microsoft Dynamics CRM 2013 Client for Outlook are prompted to enter credentials when downloading attachments
  • When you attempt to export a view to Excel from the explorer ribbon in the CRM client for Outlook an error is received. The error is received if the view that you are exporting contains attributes from related entities and the total number of attributes is 10 or greater. This begins to occur after Service Pack 1. Useful error information can be obtained from the server platform traces Platform Error: >Crm Exception: Message: Number of link entities in query exceeded maximum limit., ErrorCode: -2147204339

Tablet/Mobile client related

  • Unable to configure CRM for Tablets on iOS7 devices. Not caused by a specific entity just the combination of many customized entities.Cannot uninstall Managed Solution after Service Pack 1 Product Updates have been applied
  • Mobile application fails to configure due to metadata inconsistency in views
  • Cannot configure CRM mobile application due to failed metadata loading when LabelText is missing


  • Users clearing the value on a business required lookup field may notice that any onChange events attached to that field are executed twice using the field’s old value.

Opportunity form

  • In an Opportunity that you have created, click + beside “Sales Team” sub-grid, select “Lookup more records” and select multiple users. When you press OK, there will be an error on the page and not all users are added.


  • CRM reports embedded in IFRAME objects (on forms / dashboards /etc…) no longer display correctly when using Internet Explorer 9 or Internet Explorer 10

Generic SQL Errors

  • Users migrating databases from external systems to Microsoft Dynamics CRM 2013 will experience Generic SQL Errors. Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding

Error dialog

  • The Business Process Error dialog that contains the debug file is not displayed when a profiled plugin is executed on a grid refresh. An unhandled exception occurs instead.

Social Panel

  • Cannot display Notes intermittently if setting Note as the default tab of the social panel
  • You receive the below error once you enter the text in any Activity, Task, or Notes after entering text with ‘@’symbol in the POST’s under Social Pane of any record. “Access Denied. This form is no longer available. As a security precaution, Microsoft Dynamics CRM does not automatically resubmit your information for you. To continue, close and reopen the form, enter your information again, and then save the form.” This issue appears on all Refreshed forms which have Social Pane.

Entity Relationship

  • When trying to change the parent account relationship behavior. On the first try everything goes well but after saving and publishing all customizations any change will be not be saved. The following error is thrown: The related entity has already been configured with a parental relationship or a relationship where some behaviors cascade. Select the referential relationship type.
  • When attempting a lookup on a field that will be filtered by a N:N relationship, the following two errors are shown: There was an error while trying to resolve the typed in text. Please use the lookup dialog to set the value. An error occurred. Please try your search again.
  • When opening a record containing a reference to a child record using a quickview control, that does not have access to the child record will prevent you from opening the parent record, resulting in a privilege error despite you have full permissions on that parent record
  • Users of Microsoft Dynamics CRM 2013 are not able to create a parental relationship between two custom entities if the related entity has an attribute with the Image data type.
  • When two entities have an N:N relationship and a new subgrid is added to one of the entity forms, it will not display the + icon.

Migration from CRM 2011

  • Cannot upgrade solutions with custom activity entities after upgrading from CRM 2011 to CRM 2013
  • After upgrading to CRM 2013 you are not able to import translations for display strings when other languages have been enabled and were customized prior in CRM 2011.
  • Consider this scenario where you have a CRM 2013 environment that was upgraded or has 2011 customizations imported. When customizing an Entity’s new Refreshed form using the “Merge Forms” functionality some Event Handlers are merged but do not appear in the Form Properties Event Handlers section. When adding the script event handlers manually it is observed that the scripts fire twice. This occurs for any control that already has a CRM internal or manually added Event Handler on the target Refresh form.

Sales entities

  • When the ownership of an Opportunity changes in Microsoft Dynamics CRM 2013, the ownership of the corresponding Lead also changes.
  • When revising a quote on a form that utilizes a custom business process flow in Microsoft Dynamics CRM 2013, users will receive the following error: Unexpected Error An error has occurred Downloading the error log provides additional information: Crm Exception: Message: An unexpected error occurred., ErrorCode: -2147220970, InnerException: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index at System.Collections.CollectionBase.System.Collections.IList.get_Item(Int32 index) at Microsoft.Crm.ObjectModel.BusinessProcessFlowServiceInternalHandler`1.NavigateToNextEntity(Guid currentEntityId, String currentEntityLogicalName, Guid nextEntityId, String nextEntityLogicalName, Guid processId, ExecutionContext context)
  • Users in Microsoft Dynamics CRM 2013 receive “An error has occurred. Please return to the home page and try again.” error dialogs when deleting more than one product at a time from an Opportunity, Sales Order, Quote, or Invoice record.


  • Clicking on a HTML Web Resource within an IFrame does not perform the Mscrm.SimpleInlineControlEditView.prototype.onPageClick which then forces a call to Mscrm.FormDataControl.prototype.setAttributeValueFromControl. This calls Mscrm.FormDataControl.prototype.setAttributeValue to update the value of the attribute in a newly updated text Mscrm.TextBoxControlEditView so that when script is run inside the IFrame and accessing parent.Xrm.Page the value is in correct.
  • Users of Microsoft Dynamics CRM 2013 who have configured SQL Reporting Services to run under a service account from a trusted domain will see the following errors when attempting to run a report: An error has occurred during the report processing. (rsProcessingAborted) Cannot create a connection to data source ‘CRM’. (rsErrorOpeningConnection) System.DirectoryServices.DirectoryServicesCOMException: There is no such object on the server.

Server Side Sync

  • CRM 2013 Server Side Sync fails for users randomly with “This operation can’t be performed because one or more items are new or unmodified.”


  • Option Set is not selected on first click
  • When you upgrade to Service Pack 1 CRM 2013 and you have workflows that contain wait conditions on attributes the wait conditions may fail if they are NOT of the following attribute types DateTime Status Boolean Decimal Float Money Integer Picklist/OptionSet This occurs if you have enabled the OrgDbOrgSetting: ActivateAdditionalRefreshOfWorkflowConditions
  • Selecting value from dropdown doesn’t select the value
  • Duplicate records created if Save and Save and Close is pressed multiple times
  • When a team owns a record and that record is also shared with that same team, no user is able to remove the sharing from that record
  • Exceptions that originate from an asynchronous plugin’s constructor will cause the Microsoft Dynamics CRM 2013 Async service to terminate.
  • If a business rule is defined on an entity with conditions that include where a field “does not contain data”, when an existing record is opened and the value in that field is removed the business rule is not

You can download Rollup 1 for CRM 2013 SP1 here :

Update Rollup 18 for CRM 2011 resolves the following issues:

CRM Outlook Related

  • Users of the Microsoft Dynamics CRM 2011 Client for Outlook may experience slow performance in views if those views contain attributes with the Option Set data type.
  • Emails are sent out from Outlook with duplicated tracking tokens.
  • When replying to an email from within the CRM for Outlook client, duplicate records are created in the ActivityPointerBase table.
  • Each LookupMru entry in the UserEntityUISettingsBase table is added to the OfflineQueue table for offline functionality of the CRM for Outlook client, even though no changes to the record or the MRU list have been made, which can cause performance issues.
  • When synchronizing recurring Appointments from the Microsoft Dynamics CRM Client for Outlook in Microsoft Dynamics CRM 2011, users receive frequent reminder notifications even if the reminder is dismissed.
  • When attempting to page through Quick Find results in the Microsoft Dynamics CRM 2011 Client for Outlook after sorting, users receive the following error: “There was an error displaying the records in this view”
  • When a user has delegate access to a Calendar and they receive a Meeting Request for another user, the Appointment is never created in CRM. The Appointment states, “This meeting will be tracked in CRM after it is saved or sent”.
  • When calling AddMembersTeamRequest to a Team that has been shared to a record simultaneously to two or more Teams with the same set of members, blocking in the database on the Subscription.ReInitialize column if the members are configured for Outlook.
  • When the AddressBookMaterializedViewsEnabled OrgDbOrgSettings value is set to True, and Update Rollup 16 is installed on the server and client, searching for records in the CRM client for Outlook Address Book will not return correct records and the sort order may be incorrect.
  • Under certain conditions, emails that are tracked and sent will not successfully promote to Microsoft Dynamics CRM and the user will receive an error: “Unknown error occurred while synchronizing data to Outlook.Item Name=SUBJECT” error.
  • In the Dynamics CRM Outlook Client, when going back Online, the ActualEnd value is reset on an Activity that was completed while offline
  • After updating the Microsoft Dynamics CRM 2011 Client for Outlook past Update Rollup 11, users are no longer able to scroll through the email description field contents using the Reading Pane
  • Emails are sent with duplicate tracking tokens


  • After installing Update Rollup 16 or Update Rollup 17 on CRM 2011, users that are members of teams with an assigned security role can no longer access CRM and receive a 404 error.

Mail Merge

  • The Create Activity dialog fails to open during a Mail Merge operation.


  • When you upgrade to Update Rollup 16 or Update Rollup 17 for CRM 2011 and you have workflows that contain wait conditions on attributes, the wait conditions may fail if they are not one of the following attribute types: (DateTime, Status, Boolean, Decimal, Float, Money, Integer, Picklist/OptionSet) This occurs if you have enabled the OrgDbOrgSetting: ActivateAdditionalRefreshOfWorkflowConditions
  • After installing Update Rollup 17 users can no longer use the backspace button in any text fields if they are not using the System Setting “Load pages in the most recent version of Internet Explorer”.
  • The “Set this computer to be the Synchronizing client” option does not take effect when selected
  • Workflows are triggered after resolving a case, even if the fields are not updated when the Form Assistant is enabled.
  • Tracking an email through the CRM Email Router in CRM 2011 when there are two images embedded in the body and one image is a link to an image (url), the image that was not the link is duplicated and replaced the one with the link.

Deployment Manager 

  • If a user’s logon domain is different from the Fully Qualified Domain Name, Deployment Manager crashes while opening.

SharePoint Integration 

  • Changing the SharePoint display language breaks the CRM to SharePoint Integration.
  • After upgrading to the latest CRM 2011 List Component for SharePoint 2010, a script error occurs, which will typically block the prompt on whether or not the user wants to create the folder location SCRIPT5009: ‘IsNull’ is undefined createfolder.aspx, line 11 character 4
  • Dynamics CRM 2011 with SharePoint 2010 or 2013, the edit properties page not scrollable when list has multiple fields


  • An error occurs ” intermittently when running reports: “MSCRM Data Connector Not Installed”
  • You execute a report after installing Update Rollup 17 for CRM 2011 and suddenly receive rsProcessingAborted errors when running reports

You can get Rollup 18 for CRM 2011 here: Download here:

ClickDimensions Email Templates

ClickDimensions offers a very powerful email template editor that can be a sale generator on the hands of a good email marketing team or specialist. One advantage over Dynamics Marketing is that ClickDimensions features are added inside CRM while Dynamics marketing is a separate application that synchronises with CRM.

This post covers only how to create and test a basic dynamic email. If you know HTML quite well you be able to make better use of ClickDimensions email templates. What may be tricky, but not much, is getting used to FreeMarker, the mark-up\script that ClickDimensions uses for dynamic templates.

There are two ways you could test. This approach (using the test button) will not send a real email but will present a sample of what the user will get plus info about SPAM:


You can also create a Marketing list with your email only to avoid emailing real customers. This is also good if you have how to open your email in different email clients. Not long ago I had a client having problem opening html email with image maps in Outlook.


To get started with a simple test, we need first to create a marketing List:

To make sure you can safely test it as much as you need, create a marketing list with only one recipient with your email address or an email address that you can access

Next, Go to Marketing > Email Templates and create a New email template. Under Editor Type, Select “Free style”.

Notice you can’t access the editor before saving the template.

ClickDimensions offers a powerful editor that allow you to select and insert value fields for entities like Lead, Contact and Account.

When you select a field, it will insert the mark-up between brackets ${Recipient.[entity].[fieldname]}.

On this case ${} will pick a value for the city field on the contacts inside of the marketing list. Since I am on the marketing list and my record has Auckland, ${} will be replaced with Auckland.

Now let’s say you have different text or html for different locations. You can use FreeMarker to create an “IF” statement and send customised content to each region.

Use <#assign variablename = ${Recipient.[entity].[fieldname]} > to create a variable that will hold the City value

Now you can use <#if></#if> to separate content specific to each region.

Make sure you hit the editor’s save button. Templates are saved to the ClickDimensions server, not to the local CRM Database.

Now that we have a template, let’s test it. Go to Marketing > Email templates >Email Sends

Make sure that you enter the mandatory fields but most important, select the email template that you just created under “Email Template” and the Marketing list with your email address.

Now Click “SEND”. You should receive the email with content specific to the city\location.  

Once you open the email, The ClickDimensions server gets updated and you can start to see statistics for your email campaign.   For more info, check their site here.

CRM 2013 SP1 New Plugin Registration Tool – Connect to CRM Online

The new SDK for CRM 2013 SP1 has some upgrades for our favourite tools. Starting with the Plugin registration tool, they’ve added a region drop down to try eliminate a confusion with the discovery end point. When you unzip the sdk, you will notice the tool is back to its own folder (last release it was hiding under the Bin folder).


Double click PluginRegistration.exe


Notice now that “Discovery URL” has been replaced by “Online Region”. If you know where you are and select the correct region, the tool will connect faster. If you are somewhere between the continents and you’ve tried what you expected to be the correct address but still can’t connect, try to select the option “Don’t Know”

Old 2013 Plugin Registration tool: New 2013 SP1 Plugin Registration tool:
2509c 2509d

“Don’t Know” will try all of the available addresses until it find where you are.


 Location  Discovery Web service URL  Identity Provider
 North America  Microsoft account  Microsoft Office 365
 EMEA  Microsoft account  Microsoft Office 365
 APAC  Microsoft account  Microsoft Office 365
 South America  Microsoft Office 365

The username and password will be on the email you received when you purchased the service. I’m not sure how to get though “Microsoft Account” this days. If you sign-up for the trial it will be an Office 365.


You will know for sure that you have an Office 365 account if you see this after login


If you login without problems and you have only one organisation, it will go straight into that organisation.


Once in, it is basically the same with the new dynamics visual.


If you get an error, it will provide an error log.