Category Archives: Uncategorized

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.

1

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: https://technet.microsoft.com/en-us/library/dn946910.aspx#BKMK_switchlistcomp

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.

2

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

3

This is how Document Locations with absolute URL look:

4

You need to replace that with a Relative URL:

5

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

6

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.

7

Approved:

8

All done!

9

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

10

Advertisements

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

KAR1

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

KAR2

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

KAR3

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

KAR4

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:

KAR5

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

KAR6

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.

http://www.microsoft.com/en-us/dynamics/crm-free-trial-overview.aspx

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

1

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

2

You should receive a confirmation screen:

3

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

4

And finally get Dynamics Marketing:

5

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

6

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

7

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

8

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

10

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

AA

Select the REST endpoint:

11

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

12

After that, Select Authentication Method “oAuth2”:

BB

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

CC

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:

https://dynamicday.wordpress.com/2014/09/24/creating-dynamic-email-templates-with-dynamics-marketing/

nn

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

JavaScript

  • 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.

IFRAME

  • 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.

IFRAME

  • 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.”

General

  • 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 : http://support2.microsoft.com/kb/2953252

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

ROLES and TEAMS 

  • 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.

General 

  • 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

Reports

  • 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: http://www.microsoft.com/en-us/download/details.aspx?id=44265

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:

flow1

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.

flow2

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 ${Recipient.contact.city} 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, ${Recipient.contact.city} 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).

2509a

Double click PluginRegistration.exe

2509b

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.

2509e

 Location  Discovery Web service URL  Identity Provider
 North America  https://dev.crm.dynamics.com/XRMServices/2011/Discovery.svc  Microsoft account
 https://disco.crm.dynamics.com/XRMServices/2011/Discovery.svc  Microsoft Office 365
 EMEA  https://dev.crm4.dynamics.com/XRMServices/2011/Discovery.svc  Microsoft account
 https://disco.crm4.dynamics.com/XRMServices/2011/Discovery.svc  Microsoft Office 365
 APAC  https://dev.crm5.dynamics.com/XRMServices/2011/Discovery.svc  Microsoft account
 https://disco.crm5.dynamics.com/XRMServices/2011/Discovery.svc  Microsoft Office 365
 South America  https://disco.crm2.dynamics.com/XRMServices/2011/Discovery.svc  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.

2509f

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

2509g

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

2509h

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

2509i

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

2509j

Creating Dynamic Email Templates with Dynamics Marketing

I’m going to cover the basics of creating an Email Marketing template and show how to safely test it until it look good enough to be saved, published and ready to use.

Before we can assemble an Email marketing template, we need to first create a couple plugins. Now, the Dynamics Marketing Plugins have nothing to do with the CRM Plugins. In the dynamics marketing context, a plug-in is a mark-up tag that users can embed in the body of an email marketing message. To create a basic Email Marketing Message, we will need a “Sender Address” plugin and a “subscription Center Plugin”.

Before creating the plugins, let’s set up a Vendor Company

Notice that if you still don’t have a Company set. You will need to go and create one. Beside the CRM look and feel, the counterpart of the lookup field does not offer you a link to create a new company. If you type the name of an existing company, it will find for you. But if you don’t remember how to spell it or need to create a new one, you will need to go to the Vendor Company screen.


The name of the Vendor Company now is what you enter under the field “Company” when creating a Sender Address and when creating a Subscription Centre.


Sender Address 

The sender address plug-in is a template that converts into HTML with the sender’s address.To create a Sender Address plugin, Go to Settings > Campaign Management > Email Marketing Plugins

Click the “+” button and select “Sender Address”

Fill up the required fields. If you created a company on the previous step, use it here for the field “Company”. Otherwise, make sure you add an existing company under Company.

Subscription Center

Now, let’s create a subscription center. The subscription center is a Dynamics Marketing Plugin that converts into a link that is unique to the message and each recipient. This link allow the recipient to change their contact information and subscribe or unsubscribe from email lists.

Notice this also have Name, Created By, and Company. Make sure you enter the same Company on both “Subscription Center” and “Sender Address”.

Click here for more on subscription center

Email Marketing

Now we can go ahead and create the email template.

Let’s say we want to send a custom personalised message to each contact.

First Part: The greetings.

  1. Write the most appropriated salutation (Hi, Hello, Howdy…)
  2. Click on “Insert Fields” and select first @Contact.FirstName (space) @Contact.LastName

Now what @Contact.FirstName and @Contact.LastName Do? When you send this email, it will pick a Contact record from the assigned Marketing List, and replace @Contact.FirstName with this contact’s first name. (Same with @Contact.LastName).

Let’s suppose you have a Marketing List with this record:

First Name Last Name email
Billy Joe Billy.Joe@somemail.com

Hi @Contact.FirstName @Contact.LastName will be substituted by “Hi Billy Joe”.

Second Part: The Body.

Here you can use HTML for the static part and Razor for dynamic content. Let’s suppose you want to send a custom flyer with a specific product and price depending of the Country.

To add Razor code, click on “Add Code Block”. It will insert the code block icon

Double click it and write some code. Notice you can use the fields of the contact record to tailor it to different occasions.

Click here for the official MS Asp.Net Razor intro.

And finally:

Go to Insert Plugin and add 1 Subscription Center and 1 Sender Address.

It should now be looking similar to the screen below. Click “Convert HTML to Text”.

This is enough to test.

Click Test and select a Marketing List. Here I created a Marketing List with only 1 recipient with my email address for testing purposes. Make sure you have something like this to avoid Email real contacts when editing a template.

If everything is fine, it should send an email through. But if there is some issue with the code block or the plugins are not the correct ones for that company, you will get error messages.

This is what the above produced:

If you see a Validation Error pop-up, scroll down to Validation Errors:

Another error you may notice is when you forget to add the Sender address plugin or the subscription Plugin.