Thinkcrm

A Matt Yates blog about all things CRM!

Moving Form Labels Above a Field in Microsoft Dynamics CRM 2011

I just stumbled across a post that Jamie Miley (MVP) published to his LinkedIn page about moving form labels from the side of field to above a field. This becomes most useful when trying to format sections that contain three or four columns, as the text becomes disjointed and difficult to read.

I didn’t even know this feature was there! Thanks for the update Jamie (see link to his post below)

Life and Technology: Moving Form Labels Above the Field Instead of on Side of Field in Microsoft Dynamics CRM 2011

New CRM 2011 SDK v5.0.5 includes development toolkit!

The new Microsoft Dynamics CRM 2011 Software Development Kit (SDK) v 5.0.5 came out yesterday including the eagerly awaited CRM 2011 development toolkit (in beta version)!

The toolkit can be found here http://www.microsoft.com/download/en/details.aspx?id=24004

The Developer Toolkit is a set of Microsoft Visual Studio 2010 integration tools designed to accelerate the development of custom code for Microsoft Dynamics CRM 2011 and CRM Online. The toolkit supports the creation and deployment of Plug-ins, custom workflows and CRM 2011 web resources and developers can write all of their code from within Visual Studio and deploy them to the Microsoft Dynamics CRM server.

The toolkit also allows for a new Visual Studio solution type called CRM Package, which contains all of the plugins, workflow assemblies and web resources to be deployed as well as their deployment settings, meaning that there is no need to register via the Plugin Registration tool as all of the components can be deployed straight from Visual Studio!

CRM 2011 – Access hidden mappings via SQL or REST

About a year ago I ran into a little bit of trouble whilst building sales demo regarding setting mappings between Opportunity Product, Quote Product, Order Product and Invoice Product. These mappings do not exist within the Microsoft Dynamics CRM interface and can only be navigated directly through a URL. This is very strange as the page from the resulting URL looks exactly the same as the out of the box mapping pages!

To access these mappings you will need to obtain the relevant mapping ID from the database, you can choose from the following SQL Queries or use REST (explained at the end of this post):

Access to mappings via SQL:

Step 1:

Select * from entitymapbase where targetentityname =

‘opportunityproduct’ (opportunity)
‘quotedetail’ (quotes)
‘salesorderdetail’ (orders)
‘invoicedetail’ (invoices)

Step 2:

From the results, find the relevant mapping between SourceEntityName and TargetEntityName and copy the GUID value of the EntityMapId for that row.

Step 3:

Append the EntityMapId to the URL below:

http://CRMSERVERNAME/Tools/SystemCustomization/Relationships/Mappings/mappingList.aspx?mappingId=
Now the resolution to accessing hidden mapping via SQL queries works brilliantly for on-premise versions of both Microsoft Dynamics CRM v4 and v2011 but not so much for Microsoft Dynamics CRM Online. As you all know, the ability to run these queries on a Microsoft Dynamics CRM Online implementation is practically impossible.

I thought I had hit a stumbling block until my colleague Chris Barnard pointed out that we can access all of the information we need using the CRM REST endpoint.

Access to mappings via REST:

Step 1:

Navigate to the REST endpoint (CRM –> Customisations –> Developer Resources)

Step 2:

Append ‘EntityMapSet’ to the end of the URL

(e.g. https://EXAMPLEORG.crm.dynamics.com/XRMServices/2011/OrganizationData.svc/EntityMapSet)

Step 3:

You may notice that the page appears as an RSS feed rather than displaying the XML we are after. If this is the case then you can change this by navigating to:

Internet Options –> Content à Feeds and Web Slices –> Settings –> Untick ‘Turn on feedreading view’

Feed View:


XML View:

Note: You may need to re-launch the page for this change to take effect.

Step 4: (same as SQL)

From the results, find the relevant mapping between SourceEntityName and TargetEntityName and copy the GUID value of the EntityMapId for that row.

Step 5:

Append the EntityMapId to the URL below:

http://CRMSERVERNAME/Tools/SystemCustomization/Relationships/Mappings/mappingList.aspx?mappingId=
This will gives you access to the hidden mappings for these areas of CRM and is particularly helpful if you are customising one or more of these screens as part of building a sales process.

Restoring a CRM 2011 database (SQL Enterprise to SQL Standard)

I came across this issue about a week ago when creating a replica vmware image for undertaking some testing in one of my projects. I was attempting to replicate a customer’s Live CRM environment on my image in order to do a bit of testing when i ran into an error i hadnt seen in a while!

“Database cannot be started in this edition of SQL Server”

A quick Google and i found this Microsoft Support article http://support.microsoft.com/kb/2567984. It turns out that if the Microsoft Dynamics CRM 2011 installer detects SQL Enterprise, it will automatically leverage its partitioning functionality. More specifically, the installer automatically creates a partition for the auditing data (AuditBase table). So if you’re using SQL enterprise, this is a good thing as the partition is beneficial from both a performance as well as management perspective. The auditing feature is still functional on SQL Server Standard edition, however there is no ability to delete an entire partition of the audit history.

So a couple of things to note…

You’ll notice that the error states that the database failed to start and not failed to restore. The restore cannot detect any mismatch in SQL versions so if you are restoring over the top of another database then this means that by the time you receive the error the database has already been restored and the database is unusable.

The Microsoft Knowledge Base article at the beginning of this post includes a script to run against the SQL Enterprise database to remove the partition prior to restoring to the database environment with SQL Server Standard Edition.

Remember, always back up the databases before making any changes.

Create a simple file share in Microsoft Dynamics CRM 4.0

I came across this post on a Dynamics CRM in the field blog post about how to create a simple network file share in Microsoft Dynamics CRM 4.0. I have never experienced a need for it but there is a lot of potential and very minimal code for those who do not wish to pursue the SharePoint root.

The following scenario uses a network share for each of the CRM accounts. The network share is integrated through the use of an Iframe on a tab of the Account form and uses the Account name to dynamically point the Iframe to the correct network location. The solution assumes that the folder has already been created in the share and that the name exactly matches the Account name – obviously you could use a plugin to automate the creation of the network share.

Obviously this will not work over Internet Facing Deployments.

Here is how to set it up.

1. Create a network share and populate it with some folders that match your account names. Permissions can be set on the share per company requirements.

clip_image002

2. Open the Account customizations and then the main account form within CRM.

3. Create a Documents Tab on the Account Form and add a section to that tab.

clip_image004

4. Create an Iframe on the Documents tab with the following properties and Click OK.

NAME: IFRAME_documents
URL: \_static\blank.htm
ROW LAYOUT (Formatting Tab): Automatically expand to use available space

clip_image006

clip_image008

5. Add JavaScript on the Form Load event to dynamically set the Iframe URL. The network share path needs to be updated to match your environment.

var CRM_FORM_TYPE_UPDATE = 2;

//Only Run code after record has been created.
    switch (crmForm.FormType)
{
    case CRM_FORM_TYPE_UPDATE:

    //Extract Account Name and add it to network path.
    var acctName = crmForm.all.name.DataValue;
    crmForm.all.IFRAME_document.src = ‘file://crmsrv/customerdocuments/’ + acctName;
}

6. Publish the Account form so the customizations take effect.

7. Now test to make sure the documents are displaying correctly. When you open the account form you will be able to see the related documents.

clip_image010

‘Spell Checking’ in Microsoft Dynamics CRM

I have been looking for a decent free ‘spell checker’ for use with CRM for a while now. IESpell has always been the default choice in a limited ‘freebie’ market of spell checking software but i never felt completely satisfied with it.

So you can all imagine my delight when i stumbled across two blog posts from Daniel Cai (here) and Ben Hosk (here) talking about a new Internet Explorer add on called ‘Speckie’ which also works with Microsoft Dynamics CRM fields!! I have been testing it over the weekend and it seems to work really well. It also uses the Google Chrome language dictionaries to navigate the obvious UK/US spelling floors!

Extract of Daniel Cai’s post below:

Add Spell Checker to Microsoft Dynamics CRM Application

 In CRM projects, I often hear the complaints about the lack of spell checking feature in CRM application. Most business users tend to believe it’s the application’s fault for not having such important feature. In fact, spell checking should be something offered by browser. If you have ever tried any other browsers in the market, you may have noticed that most browsers (Chrome, Opera, Firefox, Safari) nowadays are offering spell checking feature out-of-the-box. IE has been pretty much the only exception among those modern browsers in this perspective.

I was previously aware of an IE addon called ieSpell which offers spell checking solution in IE. But it is far from being an ideal solution because it doesn’t instantly highlight any wrong spellings, which in my opinion makes it almost useless.

I happened to come across another free IE addon called Speckie this week which I believe provides a much better spell checking solution in IE. So I thought I should share with everyone here.

After you have installed Speckie, you may notice that Speckie doesn’t perform spell check for single line textbox field by default. If you want to enable this option, you can go to IE Tools menu, and click “Speckie Options“.

Speckie Options

Then you can check “Enable spell check in single line edit fields” option, and click “Apply” button.

Configure Speckie

After you have done so, you should restart your browser in order for the option to take effect.

The following are a few screenshots in action.

  • Speckie spell checking for MSCRM4 textbox field

Spell Check for CRM4 Textbox Field

  • Speckie spell checking for MSCRM4 notes field

Spell Check for CRM4 Notes Field

  • Speckie spell checking for MSCRM4 textbox field

Spell Check for CRM2011 Textbox Field

I have only been using this addon for a couple of days, I cannot endorse the quality and reliability of this addon. But I am so far very happy with it.

Hope this helps.

Microsoft Dynamics CRM 2011 Training Materials

I don’t know if Microsoft made a ‘big song and dance’ about this release, or they did and i just missed it, but they appear to have now released the Microsoft Dynamics CRM 2011 training materials.

I stumbled across these entirely by accident whilst trawling the developer training materials on PartnerSource. I think there were already a couple of materials on there from January but Microsoft have really ramped up the releases since the beginning of April ’11.

I have attached the links to some of the various training materials below (requires a PartnerSource login):

  • Microsoft Dynamics CRM 2011 Installation and Deployment Course Number 80296 (added: 4/15/2011 3:30:07 PM)
    This training covers the installation and configuration of Microsoft Dynamics CRM 2011. The training describes the components used within a Microsoft Dynamics CRM 2011 deployment, installation instructions for the Microsoft Dynamics CRM Server, the E-mail Router, Microsoft Dynamics CRM for Office Outlook, how to configure Claims-based authentication and how to implement an Internet-facing deployment.
  • Microsoft Dynamics CRM 2011 Customization and Configuration Course Number 80294 (added: 4/15/2011 3:30:07 PM)
    This training describes the techniques required to customize Microsoft Dynamics CRM to meet the specialized needs of businesses. The topics covered include Security; creation and configuration of entities; design of forms views and charts; auditing and Solutions. The training describes each topic and how each topic relates to the other topics to produce a full configured, effective solution.
  • Service Management in Microsoft Dynamics CRM 2011 Course Number 80292 (added: 4/5/2011 3:30:29 PM)
    This training introduces Microsoft Dynamics CRM service management functionality and explains how it helps organizations track information about cases, customer complaints or requests, and small projects. You will learn how to use the knowledge base and discusses how organizations can browse, locate, and share information in the repository. It also discusses how to create, manage and use teams and queues in Microsoft Dynamics CRM.
  • Service Scheduling in Microsoft Dynamics CRM 2011 Course Number 80293 (added: 4/5/2011 3:30:29 PM)
    This training discusses the scheduling process, scheduling engine, and scheduling service activities in detail since they are key entry points in the scheduling process. It also discusses how to use service scheduling in situations that have complex scheduling requirements.
  • Sales Management in Microsoft Dynamics CRM 2011 Course Number 80291 (added: 4/5/2011 3:30:29 PM)
    This training introduces the capabilities of Sales Management in Microsoft Dynamics CRM that allow you to track and manage the sales process from potential to close. It provides insight on using the Product Catalog and process sales information. It also introduces some of the tools used to analyze and report on sales information.
  • Marketing Automation in Microsoft Dynamics CRM 2011 Course Number 80290 (added: 4/5/2011 2:30:08 PM)
    This training introduces you on how to use Microsoft Dynamics CRM to extend the effectiveness of your marketing department and provides context of how to use things such as marketing campaigns, marketing lists, and campaign templates in Microsoft Dynamics CRM. It also discusses the role of campaign activities and marketing lists in campaigns and discusses how to associate sales literature, target products and price lists with marketing campaign.
I haven’t been through all of the materials yet (obviously!) but at first glance they seem pretty good! Also, i suspect that the ‘Applications’ training has been replaced by individual materials outlining each sector; marketing, sales, service scheduling and service management.
Enjoy!

Changes to CRM 2011 On-Premise Licensing Model

I have been reading a lot lately about the changes Microsoft have made to their on-premise licensing model  for Microsoft Dynamics CRM 2011. These changes add much more value to the other CRM CALs available and allows more flexibility than we have seen with any other release of Microsoft CRM! I have collated a few highlights below.

The CRM Client Access Licenses (CALs) that are supported with Microsoft Dynamics CRM 2011 are:

Dynamics CRM CAL
Same as v3 and v4. In short: full read-write access to “Microsoft Dynamics CRM functionality” using Microsoft Dynamics CRM clients and the SDK.

Dynamics CRM Limited CAL (30% cost of full Dynamics CRM CAL)

In Microsoft CRM v4 the limited CAL only provided us with read-only access and i don’t know of very many customers that used it. In Microsoft CRM v2011 this has changed and the Limited CAL now provides a user with full read-only access and limited write access to both system and custom entities in Microsoft Dynamics CRM 2011.

The use rights supported for Limited CAL include:

  • Read-only access to “Microsoft Dynamics CRM functionality” using Microsoft Dynamics CRM clients.
  • System Entities:

    • For the built-in entities of Accounts, Contacts, Cases, Leads, and Activities, data privileges to Create using Microsoft Dynamics CRM clients and Append, Append To and Update records created by any CRM user using Microsoft Dynamics CRM clients.
    • For the built-in entities of Accounts, Contacts, Cases, Leads, and Activities, data privileges to Assign, Share, and Delete records created by the same user using Microsoft Dynamics CRM clients.

    Custom Entities:

    • For custom entities, data privileges to Create using API access only and Append, Append To and Update records created by any CRM user using API access only.
    • For custom entities, data privileges to Assign, Share, and Delete records created by the same user using API access only.
    • There are no data privileges to Delete, Share, or Assign records created by other CRM users.

    NEW: Dynamics CRM Employee Self Service CAL (10% cost of full Dynamics CRM CAL)

    The Employee Self Service (ESS) CAL is brand new to Microsoft CRM 2011. Technically speaking it provides a user with limited API only access to “Microsoft Dynamics CRM functionality” through any application or UI, other than the Microsoft Dynamics CRM client. This bodes well for all those companies developing custom solutions, portals etc for CRM (including Concentrix!)

    The use rights supported for ESS CAL include:

    • Data privileges to Read, Create, Append, Append To and Update records from the built-in entities of Accounts, Contacts, Cases, Leads, and Activities as well as records in all the Custom entities.
    • There are no data privileges to Delete, Share, or Assign records.

     
    Other changes:

    No Professional SKU
    The introduction of multi-tenancy in CRM v4 saw on-premise server licensing split further into Professional and Enterprise SKU’s; the main difference being that professional was restricted to the creation of a single organisation whereas enterprise allowed for multiple organisations to be created within the same installation. With CRM v2011 there is no longer a Professional SKU and all Server SKU’s can now accommodate multi-tenancy.

    External Connector License
    The External Connector provides external users with limited API access and limited read-write access to Microsoft Dynamics CRM 2011 data, such as that provided through any application/graphical user interface.

    The use rights supported for External Connector include:

    • Read-only access to Accounts, Contacts, Cases, Leads, Activities, and Custom entity records.
    • Data privileges to create Accounts, Contacts, Cases, Leads, Activities, and Custom entity records.
    • Data privileges to append, append to, and update Accounts, Contacts, Cases, Leads, Activities, and Custom entity records created by any CRM user.
    • No data privileges to assign, share, or delete records.
    • Access to CRM server software and “Microsoft Dynamics CRM functionality” through any application or UI, other than the Microsoft Dynamics CRM client.

    These are only the highlights…for more info see the Microsoft Pricing and Licensing Guide (Feb 2011).

    5 Microsoft Dynamics CRM customers to avoid (via Customery)

    I came across this post by Neil Benson the other day which i thought was quite apt and certainly matches with a few occasions during my experience in the CRM space!

    Complaining about partners is a popular past time for Microsoft customers. Some customers think that partners charge the earth for junior consultants to implement features that should have been part of the standard software package in the first place. As a Microsoft partner, finding and keeping the right type of customers is critical to the success and profitability of your business. But this is much more difficult than it seems. I’ve got plenty … Read More

    via Customery

    Welcome!

    So..here’s the thing. I have been looking at a number of CRM blogs over the last 3 or 4 years and to be honest my IE favourites list has now amounted to a incomprehensible amount of ‘How to’s’, tips, tricks, updates, supported JavaScript, unsupported JavaScript, 3rd party components and integrations spanning CRM v3, v4  and v2011 and all number of supporting technologies.

    I was sat a few days ago, wading through some articles describing restricted access mode in CRM v3 located alongside the setup of ADFS 2.0 for CRM v2011 and the pitfalls of setting up SRSS in SharePoint integrated mode and i thought…there must be an easier way.

    So here’s my ‘easier’ way.

    This blog will be a collation of exciting product news, videos, reposted articles and my own thoughts, musings and experience in the CRM domain as a Senior CRM Consultant at Concentrix Limited.

    I hope you enjoy it and maybe even find some of my posts useful!

    Matt

    Follow

    Get every new post delivered to your Inbox.