Author: Jukka Niiranen

  • Did you just disable duplicate detection in CRM by accident?

    Duplicate detection rules in Dynamics CRM are an example of a configuration item that may often be active only in production environments. Since you don’t actively enter data into development or test environments, why bother thinking too much about them? Well, the one place where you need to be thinking about them is when you are importing new solutions and publishing changes to customizations.

    Life would be easy if you could just set up and publish your duplicate detection rules once during the initial configuration of your Dynamics CRM production environment, thus stopping the unintentional entry of duplicate records into the customer database. However, you may run into a situation where a rule that you’ve once published has later on returned to an unpublished state. “What? Who touched my duplicate detection settings?”

    The likely answer to the question is “You did, but unintentionally”. You see, the duplicate detection rules are sensitive to changes in your entity customizations. As noted in the Madrona Solutions Group blog article, whenever any entity metadata is changed, all duplicate detection rules associated with that entity are unpublished.

    If you look at this from the system’s perspective, the process does make sense. After all, you might have set up a duplicate detection rule that is comparing records based on a criteria that that references fields you’ve changed or removed as a part of your CRM customization actions. Still, the fact that a publish event on a CRM 2011 solution triggers an unpublish event somewhere else is not very intuitive and most system administrators are likely to be unaware of the impact. As a result, there are certainly several production CRM environments out there where the once carefully planned duplicate detection rules have been deactivated because of this dependency between solutions and duplicate detection. In fact, you might want to check your own Dynamics CRM environment right now and check if you see duplicate detection rules with the status reason “unpublished” which should in fact be published.

    What this means in practice is that anyone who’s deploying solution updates to an environment that is using duplicate detection rules needs to instructed to always re-enable the rules after they’ve updated customizations that reference an entity which is being monitored for duplicates. In my opinion, it would be very practical to have the system notify you about this task, for example by asking “would you like to re-publish the affected duplicate detection rules?” when publishing a solution. If you would like to see this functionality changed in a future version of Dynamics CRM, please sign in to Microsoft Connect with your Windows Live ID and vote for the item “Automatically re-publish duplicate detection rules after deploying a solution”. Thanks for your contribution.

     

    Edit 2013-05-02: There’s a post on Magnetism blog that shows you how to write a plugin that will automatically publish unpublished duplication detection rules after the “publish all customizations” event, in case you want to automate this procedure in your production environment.

  • Convergence 2012 in a (virtual) nutshell

    Full disclosure: I didn’t actually physically attend Microsoft Convergence 2012 in Houston, Texas. However, that doesn’t mean you have to feel left in the dark, thanks to the immersive experience that is the social web of our times. With live webcasts, near-live blogging and some 6000 tweets on the #CONV12 hashtag, keeping up with the online buzz has never been easier. Here’s my summary of what the event looked like through the eyes of a virtual attendee and some thoughts on where Microsoft and its Dynamics product line appear to be heading based on the announcements at Convergence.

    Microsoft Convergence 2012 keynote summary on StorifyKeynote

    The opening keynote is where the stage is set for the rest of the event, so watching the live broadcast on Monday was definitely on my agenda. Sure, it’s all about building up hype for your products by telling how great you’ve done so far, how excited you are about your future roadmap and showing off with future concept demos that have little to do with the current reality. So what! You need a little show business alongside your business applications conference.

    Having the luxury of my PC keyboard & mouse at my disposal during the event allowed me to experiment with Storify, a social media storytelling tool. I captured the best tweets, photos and screenshots during the keynote and compiled them into my Convergence 2012 story. If you’re anything like me, the mental barrier for sitting down and watching a recorded conference event for 1.5 hours is quite high, so why not glance through the highlights of the show on the Storify summary? After that, you can decide if you want to read the full transcript or watch the recording on the Virtual Convergence site.

    Some notes picked up from the opening keynote included:

    • The Dynamics CRM momentum now stands at 2,250,000 users in 33,000 customer organizations.
    • “There are no happy Siebel customers in the world, there just aren’t.” – COO Kevin Turner on Microsofts internal journey from Siebel to Dynamics CRM.
    • Nearly half of the deals won by Microsoft over Salesforce.com have been due to the on-premises option and the hybrid model.

    Metro

    It’s Windows reimagined time all across Redmond now as we’re nearing the launch of Windows 8 later this year. This means everything that can be shown as a Metro style app running on a tablet, will be shown precisely that way. The fictional Contoso Electronics scenario of the big keynote demo used a highly customized UI built for the retail store experience only. A much more interesting demo was the project management Metro app that looked so realistic you could imagine it becoming an actual UI to some future Microsoft product to be rolled out at Windows 8 launch.

    We didn’t get any official screenshots of a Dynamics CRM Metro app yet, but luckily Garth Knutson was able to snap & tweet this picture of a UI concept presented in one of the sessions. Just imagine if assigning users onto a Dynamics CRM opportunity record would look like this, how much higher would the user adoption of a CRM system be among sales people? Ah, CRM reimagined…

    Microsoft Dynamics CRM and Metro UI

    But the road to metro is paved with Apples. The actual tablet product Microsoft had to show at Convergence was the Dynamics CRM Mobile client for iPad, which meant that Apple devices were well presented in many of the Convergence sessions. Funnily enough, during the conference an internal email leak revealed that Microsoft was banning the use of company budget to buy any Apple products for its Sales, Marketing, Services, IT, & Operations Group. Oh well, guess we won’t be seeing many iPads on stage anymore in the following events. For those of you who haven’t seen the current client yet (developed by CWR Mobility), see my previous post on Microsoft Dynamics CRM Mobile iPad screenshots.

    Microsoft Dynamics Metro app running on a Windows 8 tabletAn important aspect to note is that the move towards Metro apps and tablet devices does also have an impact on traditional desktop usage of Dynamics CRM. Back in November I speculated that the legacy of Outlook could not be carried over to the world of Windows 8 tablets in its existing form. Since then this assumption has only been enforced by the announcement of Windows on ARM (WOA) tablets with no classic Windows application support and no sign of Outlook in the list of Office apps promised for these “iPad killers”. What this means is that the functionality exclusive to Dynamics CRM Outlook client must be moved to the cloud. At Convergence, the following functionality was more or less revealed to be included in the R9 release later this year:

    • Direct synchronization of activities through Exchange (instead of Outlook)
    • Support for “track in CRM” functionality in Outlook Web Access (OWA client)

    Woo-hoo! It’s been a long time coming, but to me this is a clear sign that Dynamics CRM is definitely on the right track in terms of becoming more compatible with the habits of today’s mobile workforce; how they manage their activities and messages on multiple clients, not just the single Outlook on their work laptop. Making the CRM features available through new channels, such as the Office 15 Agaves, is very important for making Dynamics CRM a relevant tool for knowledge sharing as the applications and devices surrounding it are evolving.

    (more…)

  • Microsoft Dynamics CRM Mobile iPad screenshots

    Microsoft has released a YouTube video where Ruben Krippner talks you through the upcoming features of the Q2 2012 Service Update, a.k.a. Dynamics CRM R8. Since we already know much of the new release details through the Release Preview Guide, the most interesting part of the video is the live footage of Microsoft Dynamics CRM Mobile running on an iPad. For those of you who want to get a quick glimpse of what the client looks like, I took the liberty of taking a few screenshots from the video.

    Sitemap & Dashboards

    Microsoft Dynamics CRM Mobile iPad dashboards

    As we know, the “new” client is actually a rebranded version of the CWR Mobility client for Dynamics CRM. The UI looks almost identical, apart from a new set of Metro style entity icons. The sharp edges and “authentically digital” appearance look somewhat out of place in the otherwise iOS-style app, but let’s hope that there will be a full Metro app for Dynamics CRM available once the Windows 8 tablets hit the stores.

    Dashboards appear to be close to the web UI as far as charts go. If you have other types of web resources on your dashboard (say, a Silverlight component), the results may be a bit less so. Also, I’m assuming entity grids will not be rendered on the iPad Dashboard, at least not in their original format.

    Views

    Microsoft Dynamics CRM Mobile iPad views

    The iPad UI does support filtering data through views, just like you do on the web client. However, the views themselves will not be presented in the familiar grid style with columns, rather you’ll see a list of records with the primary field and some other data stacked on top of each other. Whether this is because of iOS limitations or an inherited design from the iPhone app, I’m not sure.

    Forms

    Microsoft Dynamics CRM Mobile iPad forms

    The standard fields are presented on a form that has a single column. Picklist and date fields use native iOS controls, also field types like phone numbers or email addresses will open native apps for respective actions. Why an iPad app shows you the options to dial a phone call or send SMS, I don’t know, because at least my iPad won’t allow me to do those without jailbreaking the device, but maybe Ruben has a special version of the Apple tablet 😉

    As you can see from the form, it’s not specifically optimized for landscape mode viewing on a tablet, but rather looks like a big iPhone app. Entity forms with many columns will therefore be presented as a long list the user has to scroll up & down.

    Maps

    Microsoft Dynamics CRM Mobile iPad Google Maps

    As a funny little detail that Ruben mentions on the video how the account address opens up on Google Maps. Why not Bing Maps? Well, because the native map application on an iOS device comes from Google…

    Off-topic: It’s great that the mobile clients for iOS, Android and Windows Phone now have the basic address mapping integration in place, now we just need to get it for the web and Outlook clients as well. While the integration itself is technically quite trivial, the requirement for purchasing a Bing Maps license for using the map data on a non-public application is currently a big barrier in the desktop world. But enough about that, let’s get back to the mobile client.

    Related records

    Microsoft Dynamics CRM Mobile iPad related records

    Because the sitemap navigation pane is permanently visible on the left hand side of the screen, which on a normal web client entity form would show the related records, in the mobile client these are accessed through a button on the lower right corner of the screen. Subgrid type of functionality is not available on the tablet UI, which can make it a bit cumbersome to navigate through long hierarchies of records. As a result, using the iPad client for tasks such as order entry while on the road is not really optimal in the Microsoft Dynamics CRM Mobile client. These types of use cases will still be better met with a custom developed tablet application equipped with specific data entry screens, so toolkits like Resco will remain relevant even after this official Dynamics CRM iPad client gets released.

    Configuration

    Microsoft Dynamics CRM Mobile iPad configuration

    The mobile client is not just an alternative UI for CRM, but there is a wealth of management options for user and client management, synchronization settings, usage reports etc. Since the way you use a mobile/tablet application is quite different from the normal desktop client usage scenario, it’s important that the information presented to the user can be optimized. Microsoft Dynamics CRM Mobile allows you to do this by defining different user groups and assigning them tailored mobile profiles containing only relevant entities in the sitemap. Also the contents of the mobile forms can be adjusted, so you don’t have to show all the tens of attributes that your entities contain.

    Microsoft Dynamics CRM Mobile iPad mobile profile and entities

    Conclusions

    The CRM Anywhere theme is definitely a step in the right direction for Microsoft Dynamics CRM to become an application that truly “works the way you do”. Even though the cross-browser compatibility will enable users to open up the CRM web client on their iPad Safari browser, for any serious work on a tablet you’ll want to have a client that is optimized for:

    1. touch based user interface
    2. streamlined data presentation to support the “working in short bursts” mode of mobile device usage
    3. offline access for those moments when 3G or WiFi just doesn’t reach you

    For the subscription price of $30 per user per month (or the perpetual license you can still acquire from CWR Mobility), you can install a fully capable Dynamics CRM mobile client on both your iPad and your iPhone, and still have one user license left for trying out the latest Android phone (whether the non-offline Windows Phone 7 client will consume a license, I don’t know yet).

    You can read more of my thoughts on Microsoft Dynamics CRM Mobile on this article I wrote after the announcement at eXtreme CRM 2012 Berlin.

  • Using hashtags in Activity Feed posts to automate processes

    Improving internal collaboration has been the driving idea behind Dynamics CRM Activity Feeds. Even though the efficient usage of stream-like notifications may not be immediately obvious to users who’ve come to think of CRM data as permanent records presented in views, they provide a great enhancement on top of the existing customer data that focuses on answering the “what’s going on right now?” question, rather than the “what/who/how much” types of  queries that CRM systems typically have focused on. Joel Lindstrom wrote a great article on the Customer Effective blog about how Activity Feeds are different from RSS feeds, which I recommend everyone to read.

    Originally launched in the Q4 2011 Service Update (R7), the Activity Feeds solution is about to receive some enhancements in the upcoming R8 release that will allow users to better filter the content of their wall and also click “like” on posts. (Note: contrary to some comments, the “unlike” feature will most likely be simply the undo action of “like”, rather than a real “thumbs down” reaction.) Compared to other social business applications like Yammer, there still doesn’t seem to be built-in support for features such as groups or hashtags that we’ve come accustomed to use on many platforms. I’ve already written about a DIY approach for leveraging custom groups to follow posts on specific topics. Next, I thought I’d see how we could make use of the hashtag concept in Dynamics CRM.

    What’s a #hashtag & what’s it good for?

    Whether you’re an active Twitter user or not, it’s likely you’ve come across a person using the # sign in his or her online writing. What started out as a user driven policy of grouping tweets has later turned into a whole movement that’s gotten both users as well as commercial entities get very interested on following, measuring and encouraging the use of #hashtags on social media channels.

    Twitter allows the users to click on hashtags turned into hyperlinks, thus enabling them to view all recent posts containing the same hashtag. Although Dynamics CRM is a flexible platform for LoB application development, tweaking the default Activity Feeds solution web resources to support this kind of filter functionality wouldn’t be exactly a walk in the park. However, we can certainly explore the concept and see what else the platform might have available for us that could make the Activity Feeds more intelligent. Hmm, how about workflows?

    While the post box on a wall doesn’t currently allow us to include any other “magic characters” apart from the @ symbol used for performing mentions, the pound sign does have one clear advantage: it’s rarely used for other purposes than a hashtag (you might have the occasional shouts of “we are #1!” by excited sales reps appear on the wall after they close a deal, but that’s about it). This means we can quite safely use the # symbol as an identifier for our own little magic words.

    Triggering processes from wall posts

    Suppose you’re browsing through your personal wall on a Windows Phone 7.5 mobile while sipping on a Venti Latte at Starbucks, utilizing the free Microsoft Dynamics CRM Mobile app. You spot an item in your feed that you want to take note for further action once you’re back at your office desk. How are you going to do that?

    While an email inbox is hardly a good way to manage a list of open tasks, Activity Feeds are even worse as action items, because they’re not even meant to be persistent records with read/unread status or flags/categories. The stream flows on as other CRM users perform actions such as winning opportunities and solving support incidents, which means that the item you spotted while enjoying your coffee may well be buried into the depths of history the next time you glance at your wall. Posts are merely notifications about something, not the object itself.

    Instead of resorting to disconnected manual notes, what you could do is track the regarding record of the interesting wall post as a new task on your own list of CRM activities. All we need is the creation of a very simple workflow rule to achieve this. Create a new workflow process on the Post entity and mark it to be started whenever a new Post record is created.

    What the hashtag concept will be used for is evaluating the content of a Post and seeing if the workflow process should be run or not. In our example, let’s use the hashtag #task to identify a Post which we would like to trigger the creation of a new task record. You might also want to check that the Post source is Manual Post instead of Auto Post (more about that later).

    In your workflow rule definition, create a new task record and insert the contents of your post in the subject line. Set the regarding field to be the RegardingObjectId of the Post, owner as the person who created the Post, and a due date of 1 Day After Created On. Save your process, activate it and you’re all set.

    Just type #task and let the system take care of the rest

    In our example, we’ve spotted a Post regarding a new opportunity record. (Ok, so we’re doing this from the web client and not the mobile one, since believe it or not, screen capture on WP7 requires an unlocked device!) We want to mark an action item on the record for us, so we post a new item on the record wall, using the hashtag we defined: “#task Ask Chris for customer references”. Please note that simply commenting a Post will not trigger a workflow, since the PostComment entity is not available for workflows (bummer), so make sure to type a completely new Post on the item of interest.

    After the Post is submitted to CRM database, the workflow is triggered and a new task will have been created on you My Activities view in a matter of seconds. Should you ignore your CRM list once you return to the office (shame on you!), the due date reminder we set on the task will cause your Outlook (and probably also your mobile phone) to alert you about the action item you created for yourself.

    Drive any process with #hashtags

    As you might know, the free mobile client does not allow you to create or update any CRM records, you can only read them on your mobile phone (unless you want to open the somewhat less pretty Mobile Express client). The only exception is Activity Feed Posts, which you can type on your Windows Mobile device and get the data updated into CRM in real time. Together with the creative use of hashtags and workflow processes, we can actually trigger also some other data entry and updates while on the road, as you saw from the #task example.

    While you can’t create a workflow that would update the parent object of the Post, you can create new child items for it. In the example below, we’re creating a new case by using the #case hashtag.

    The steps of the workflow process configuration are as follows:

    • Check if the Post contains the text #case
    • Create a new case record, set the title to post text, set customer as the RegardingObjectId(Post)
    • Create a queue item for the new case and move it to the Support queue for CSR’s to start working on
    • Wait for the case status to change from active to something else
    • Create a new post on the customer wall, containing a summary of the information recorded on the case after its creation
    • To finish the process with confidence on both sides, also send a direct email to the person who initiated the case creation with his/her wall post
    All this process data neatly managed inside Dynamics CRM, just because you typed “#case Send an evaluation license of Product X to customer” on a record wall, with a mobile phone on your one hand and the latte on the other. You might as well have used a similar process to open a new opportunity and start your sales process automation tasks, with a predefined product specific hashtag like #opp_prodX_3m, if you really wanted to impress your colleagues that haven’t yet figured out why Activity Feeds and Auto Posts are a true productivity boost rather than just another new inbox to process.

    A final word of warning: since you probably don’t want a workflow generated Post to trigger any new workflows accidentally, it’s a good idea to always set the right Post Source value (Auto Post, Manual Post) and also filter these in your workflow conditions. As an example, if you post “#case Customer asks for refund” and then later on use it as the case title that gets inserted into a new Post, you’ll soon be stuck in a loop of each case resolution creating a new case…

  • To the eXtreme, part 2: The future of the web caught up with IE and Dynamics CRM

    One great thing about Microsoft Dynamics CRM as a business application platform has been that it’s modern enough to have been born into the browser window from day one. With no legacy from the pre-web era, the product has been able to stay relevant with no major disruptions in the client side development and also supported the eventual move of the server side functionality to the data centers in the cloud.

    A history of Internet ExplorerInternet Explorer market share peaked in 2003, when 95% of all Internet usage was on IE. Coincidentally, Microsoft CRM 1.0 was released in January 2003. At the time, providing support for any other browser than your in-house product would have certainly sounded like a requirement you could de-prioritize. Today Internet Explorer commands a market share of less than 40%. There are now more iPads sold than any brand of desktop PCs combined. If that doesn’t signal the move to a post-PC era, I don’t know what does. If you’d be a company manufacturing an IE only product for PCs in the year 2012, you could soon be out of business.

    This is a fate Microsoft intends to avoid, which is why the cross-browser support for Microsoft Dynamics CRM was officially announced in the Q2 2012 Service Update release preview guide, released at the beginning of Extreme CRM 2012 conference in Berlin. We had already seen the promise of non-IE browser clients for Dynamics CRM presented in Microsoft’s May 2011 Statement of Direction and now we finally have details about what to expect in Dynamics CRM R8 release exactly one year later. As with my previous post on mobile CRM, I won’t rephrase all the content of the official announcement but I’ll rather try and reflect on the topic with some personal observations and thoughts.

    There’s Supported and then there’s “supported”

    If you’ve glanced at the table of supported browser and OS combinations, you’ll have noticed that Microsoft does not guarantee support on every browser out there on every operating system. This is not too surprising, as any web application developer surely knows what a nightmare the differences in interpretation of web standards between various browsers can be for application development and testing. In the words of Craig Dewar (Director of Product Management for MSDYNCRM), browser testing is a “gigantic effort” for Microsoft, which is why official support is not all encompassing.

    Microsoft Dynamics CRM browser and OS support

    Just because a browser or OS is not listed in Microsoft’s documentation as supported, doesn’t mean Dynamics CRM won’t work on it. So, even though there are no supported options for using Microsoft Dynamics CRM on Linux, you might not notice any problems if you access it with Firefox on Ubuntu. In fact, Craig mentioned in his keynote at Extreme CRM 2012 Berlin that even if you’re using a client that’s not officially supported, Microsoft will allow you to open support tickets on issues that are not specific to the browser/OS combination you’re running. I guess you’ll just want to have at least one Win/IE or Mac/Safari device around to make sure you can reproduce the issue when dealing with Microsoft Support representatives.

    “Macbooks for everyone!”

    In case you’ve been drooling over the cool Apple hardware that all the opinion leaders seem to carry with them these days, the future does indeed look brighter for people working on/with Dynamics CRM. Before you jump head first into the OSX & iOS world and format all your Windows partitions, it’s important to remember that what Microsoft is talking about here is just the browser client support for CRM end users.

    Outlook 2011 for Mac: sorry, no Microsoft Dynamics CRM clientWhile you can get Microsoft Office for OSX and run Outlook on you Mac, what you can’t do is use the Microsoft Dynamics CRM for Outlook client. This means you can’t track emails to CRM, synchronize your calendar appointments between Outlook and CRM, get CRM task and call reminders from your Outlook, synchronize your contacts from CRM to Outlook to your iPhone, or have any offline support for CRM data and application functionality when your Macbook doesn’t have WiFi or 3G data connectivity. All in all, you lose quite a bit of that seamless productivity tools magic that Dynamics CRM promises to deliver for all Windows users. I haven’t seen any announcements about a CRM Outlook client for Mac, so it’s pretty safe to assume that we won’t see one released for the Outlook 2011 for Mac version currently available.

    OK, so how about the support of Apple’s mobile devices then? It says Dynamics CRM will run on iPad 2 with iOS 5.x, so that should at least deliver the full flavor of the browser experience on a tablet, right? Well, the problem is you might get more than you bargained for in that deal, since (as far as I’m aware of) the browser client will look and work exactly the same on all supported platforms and devices. If you’ve ever tried running the Dynamics CRM web client on a Windows 7 tablet, you’ll know that simply replacing the mouse cursor with your index finger will not magically “touchify” the user experience. What works nicely on a 24″ screen with mouse & keyboard input may not scale/transform into the tablet environment of 10″ screens and touch UI. If you’ve used a remote desktop app on your iPad, then I’d imagine this is pretty much what you can expect from a browser client on an iPad. Unless you go for the $30 per month subscription of Microsoft Dynamics CRM Mobile app or purchase a perpetual license from CWR Mobility, TenDigits or other ISV’s that develop mobile clients optimized specifically for the touch UI. The same goes for Android tablets, only with the exception that the browser client falls into the “not officially supported” territory.

    Finally, if you’re not only using Dynamics CRM but also administering or customizing it, I’ve read that you’ll still need Internet Explorer in order to access these areas in the web client.

    ‘Reimagining’ Windows, should we also reimagine Dynamics CRM?

    WinRT architectureIt’s important to note that the web client coming out in Q2 2012 is not a HTML5 product, rather it’s a trimmed version of the previous IE only client with removed dependencies on Microsoft’s proprietary extensions that only IE supports (.htc files etc.). The future is not here yet, but there is little doubt on the direction Microsoft is heading towards, with the upcoming WinRT framework and the big push for HTML, Javascript and CSS as the foundation for future Windows apps.

    Which brings us to Silverlight. It’s been widely speculated that Silverlight 5 released at the end of 2011 will be the last of it’s kind, the end of the road. Porting existing Silverlight apps to run on Win RT is said to be easy, which should naturally be in the interest of Microsoft to ensure. As I’m not a developer, I’m looking at the discussion more from the point of view of someone who needs to examine all the available technologies out there, evaluate how they fit together and build a working business solution out of them. From this perspective, there are some concerns regarding Silverlight that very much affect Dynamics CRM users as well.

    While Dynamics CRM might work on a browser/OS combination that is not officially supported, the game is different if you’re using Silverlight web parts in your CRM. If a Silverlight plugin is not available for the client, it will not work, period. This includes combinations such as Chrome/OSX, any machine running Linux and most notably the iPad. Ok, so what about making the same UI with a different technology, like HTML, Javascript and CSS? In theory everything should work on every platform in this case. You’re free to draw your conclusions on which approach is better for starting your next Dynamics CRM add-on project.

    Looking further ahead to Windows 8, we’ve already received the announcement that there will actually be a completely different edition of the operating system, called Windows On ARM (WOA), that will the basis for building always on, always connected, low power consumption devices to rival the iPad. The Internet Explorer 10 browser on WOA will not allow any plug-ins whatsoever, be it Flash or Silverlight. Furthermore, the Office 15 package that is available for WOA tablets will include only Word, Excel, PowerPoint and OneNote, but not Outlook. By now you should have figured out that the Microsoft Dynamics CRM experience on WOA will need to be quite different from what we have on Windows 7 today.

    If there will not be Outlook on the “real” Windows tablets, what does the future hold for the CRM Outlook client? I previously wrote about the legacy of Outlook and how it will be increasingly more difficult to carry all that legacy when moving to the Post-PC era of iPad-esque devices for every knowledge worker. By the looks of things, Outlook could possibly get split into Metro Mail, Contacts and Calendar apps. If this happens, then it’s easy to envision a separate Dynamics CRM Metro app sitting alongside them, integrating into all the other installed apps through a simple share contract. After all, isn’t that the way it should really be? Link contacts/friends/followers from any social network app to CRM contacts, track any type of status update/post/tweet from the same app as a custom activity type into your CRM database. There’s no reason why customer relationship management tasks should be any more complex or inflexible than that.

    It’s great to have Dynamics CRM available soon on (almost) any browser. Still, if Microsoft truly is reimagining Windows the way they claim to be and if their business customers buy into their new story, perhaps running Dynamics CRM on Safari won’t seem all that exciting anymore this time next year.

  • To the eXtreme: thoughts on Dynamics CRM Mobile

    This is my first post on news and gossip that the eXtreme CRM 2012 Berlin conference brought to us. As there’s so many posts out there already that review the contents of the Q2 2012 Service Update (aka Dynamics CRM R8), I’m going to try and reflect on the topics based on my own observations and questions that these latest announcements have brought up. The first stop is mobile CRM.

    Every consultant knows that Microsoft’s initial offering, the Dynamics CRM Mobile Express client, wasn’t really something you wanted to draw the customers’ attention to. It was just barely good enough to tick the feature box of “yes, we have mobile CRM”. On a non-touch smartphone like the popular business products from Nokia or RIM the user experience might have matched the native apps and device capabilities, but in the age of the iPhone this wasn’t at all what the users had come to expect from their mobile apps.

    When Microsoft released the new Windows Phone 7 client application in CRM R7 release (2011 Q4 Service Update), we saw a glimpse of a brighter mobile future, but there was still hardly reason for true celebration. Ok, so we had a mobile optimized client now available, but it had it’s issues:

    • Only available for one niche (yet growing) smartphone platform
    • No ability to create or update any CRM records (except Activity Feed posts)
    • No offline support

    The path towards a credible mobile offering would have been quite long for Microsoft to walk all on its own. Therefore it wasn’t really a surprise that they chose to team up with an existing partner and rebrand their mobile applications and services to the new “CRM Anywhere” solution (which is still officially called Microsoft Dynamics CRM Mobile). Out of all the possible mobile CRM ISV’s out there, their partner of choice turned out to be CWR Mobility.

    This could of course be seen as a big blow to the other Dynamics CRM mobile ISV’s, who now have to compete against Microsoft’s own offering. However, in the long term this may actually be a positive turn of events for the whole ecosystem. The fact that there will be an official mobile app available from Microsoft to all the major smartphone platforms will surely drive up customer awareness as well as interest towards the possible use cases for “CRM on the road”.

    Considering how much talk there’s been around the mobile use of CRM applications in the past few years, in my opinion we haven’t yet seen it really bloom the way many of us would have expected it to. I think one of the reasons is that mobile CRM has often been considered mainly as “CRM lite” that offers a subset of the features the full application delivers, for those awkward moments when your “CRM full” is not available to you. If mobile CRM is an optional feature that does not tie into the processes you absolutely need to execute, how likely is it that companies will choose to invest in such an additional cost factor? Ben Mitchell from TenDigits said it really well in his presentation:

    “You’ve got a perfectly working address book on your phone already. If that’s all you’re trying to replace with mobile CRM, it’s always going to be too expensive. Always attach the price of a mobile CRM solution to the business value the customer is trying to achieve by deploying the solution. Mobile functionality pricing must be delivered in the context of business objectives, not just as a last minute addition to the quotation.”

    Mobile CRM is like Social CRM in this sense: companies know why they need to embrace it sooner or later, but they’re still having difficulties in articulating exactly how they plan to go about it. As the limitations of available software are quickly fading away, the focus on real life use cases must rise on top. No, mobile CRM isn’t just about replicating the desktop experience on a smaller device. It must support the mode of working in infrequent bursts and dealing with specific scenarios, such as order entry or survey answer recording while the user is at the customer’s site. The UI needs to be optimized for the process in question, not just equipped with big icons to be poked with your fingers. Whether it’s going to be packaged apps like the Microsoft Dynamics CRM Mobile growing beyond their current feature sets in customizability, platforms like the Resco Mobile CRM Studio gaining popularity as the basis for mobile app development, or even a future release of a HTML5 compliant version of the core Dynamics CRM browser app stealing the show with responsive web design, the playing field for a true CRM Anywhere solution that takes the “mobile first” thinking into everyday practice still looks wide open to me.

    One interesting thing to keep an eye on is what’s going to happen to the Microsoft developed Windows Phone 7 CRM client. The R8 release preview guide states that there will not yet be offline functionality available for Windows Phone devices when the new service launches. This means that Microsoft Dynamics CRM will initially work better on pretty much any other mobile platforms compared to Microsoft Windows Phone 7 (doh!). I’m assuming that the current client version will receive some minor feature updates (new Activity Feeds filters etc.) but a full integration into the CWR Mobile platform will take more time. I’ve noticed in some occasions the WP7 client has actually been referred to as the “Activity Feeds Mobile App”, but I’m not sure if Microsoft could get away with renaming product X to product Y, then launching a new product X and charging extra money for it.

    This leads us to the pricing model. Whereas the Windows Phone 7 client is a free download from the Marketplace, the CWR clients are based on a subscription fee. A company who buys licenses for Dynamics CRM, be it on-premises or CRM Online, will not receive any mobile client functionality as a part of the core product. Microsoft Dynamics CRM Mobile will therefore remain as an add-on that customers must purchase licenses for separately. Considering the price is $30 per user per month, compared to the base product price of CRM Online of $44, this means in many cases not all CRM users will be given mobile client licenses. Or perhaps they’ll just be given a midprice Windows Phone device, such as the Nokia Lumia 710, and access to the free WP7 version of Dynamics CRM Mobile. With a number of Dynamics CRM apps already out there in iOS and Android marketplaces that any user can purchase for themselves and point it to a CRM Online or IFD organization, I’m not even sure companies can effectively standardize on a single official mobile app anymore, thanks to the BYOD culture and shadow IT.

    The official Microsoft Dynamics CRM Mobile service won’t be able to match the 40 markets / 41 languages level of the core CRM product, as it will initially be available only in 24 markets and 10 languages. The explanation offered by Microsoft was that there are such regulatory limitations for mobile services in many markets that they simply can’t roll out their mobile CRM offering as quickly as a cloud app like CRM Online. We’ll see how fast they can catch up and bring the service to markets like Finland. It will also be interesting to see whether the initial unavailability will simply mean the lack of local languages or if MS will actually not offer the mobile app for download at all in these tier 2 regions’ marketplaces. I sure hope it won’t be the latter option, even if it would mean I’d have to temporarily return from WP7 to Android for doing proper presales demos of the new mobile service with offline capability. The sacrifices one needs to make for the love of CRM… 😉

  • Activity view default filter, missing due dates and how to modify the filter

    Certain entities that contain the activity roll-up feature, namely accounts, contacts and opportunities, are also equipped with a date filter that allows you to choose whether you want to see all the activities related to the record or just a selected subset. By default this is “Next 30 days”, but you also can choose between “Overdue” or “Next 12 months”, or just go for “All”. That’s the good news.

    The bad news is that this piece of helpful functionality has remained uncustomizable throughout different Dynamics CRM versions. A lot of users were annoyed with especially the same filter in the associated history view, nowadays known as Closed Activities view in CRM 2011, which used to default to “Last 30 days” and hide away all but the most recent email threads, appointments and other information that you might have been searching for. You always had to change the filter manually to “All” to uncover the historical information about the relationship with the account or contact. However, this has changed now in the latest version and “All” has become the default filter (or should I say the filter is off by default).

    That’s definitely a step towards the right direction. It’s not exactly what the response on Microsoft Connect suggests, which claims that “we’ve allowed a user to change the default filter for associated views in CRM 2011”. I’ve yet run into such a setting and neither has The Great Internet, unless Google is hiding such instructions or blog posts. It would be useful to be able to configure or remove filters that the end users don’t want to deal with, without having to resort to unsupported customizations.

    Open vs. closed activities

    History is one thing but it’s the future actions that matter the most. Until very recently, I’d say up until Update Rollup 2 of CRM 2011 the filter functionality in the open activities associated views used to be such that the default “Next 30 days” would also show any activity that was missing a due date. By default the due dates are not a required field and sometimes they are not that practical for the CRM users, as many things in the daily life of a modern information worker don’t have strict deadlines. Also, there’s no out-of-the-box functionality in Dynamics CRM to set default values for date fields either, so setting the exact due date for every task or phone call you enter on your task list may feel too bureaucratic. An activity with a missing date should be considered as “do this as soon as you can, given all the surrounding factors”, in my personal opinion.

    In the current version of Update Rollup 5 the “Filter on” value is applied in such a way that it by default hides away all activities that don’t meet the “Next 30 days” criteria. If the due date is blank, the activities won’t show under the account/contact/opportunity. This may seem quite confusing to the user, since any new activity that he or she creates for the record will appear to “vanish” into thin air after clicking “Save and close”. In the My Activities view they will still appear on the top of the list, as null values in the Due Date column are sorted on top.

    What’s even more confusing is that CRM 2011 introduces two different ways for users to navigate to related activities on the account form: the familiar associated view and the new subgrid. If you’ve been reading my blog, you’ll know that subgrids ain’t exactly what associated views used to be. They don’t contain the activity roll-up feature, so you won’t see those activities that are set regarding a child record of an account (for example, opportunities) instead of the account record directly. Just like another filter, except you can’t even change it.

    How to change the default filter value

    There’s been numerous blog posts written on the topic of setting the filter defaults on CRM 4.0, but I was initially a bit surprised I couldn’t find a working piece of Javascript to achieve this on CRM 2011. Examples like this, this or this didn’t seem to be working for me, but luckily I ran into this post on the Microsoft Dynamics CRM German forum by Andreas Buchinger. To save you the trouble of Google Translate (well, it’s not much trouble at all when using Chrome’s built-in translation toolbar), here’s a walk through of the steps needed.

    (more…)

  • Make CRM Activity Feeds easier to follow by creating custom groups

    The functionality of the new Activity Feeds feature introduced in CRM Online R7 / CRM 2011 Update Rollup 5 is built around the concept of following specific records. This allows a very granular level of control for the users to select the specific items from which they wish to see posts on their personal wall. However, this does also force us to carefully plan for the scenario of a new user who logs into the Activity Feeds view for the very first time. What they will have in front of their eyes is an empty wall with just a few links to the online help material.

    An empty wall greets the new CRM users

    In order to make Activity Feeds a shared, trusted source of information on customer related events, the organization using Dynamics CRM needs to provide its users a path that they can follow to become a member of this community. Although it is possible to build custom business logic through the SDK that automates the following of records, wouldn’t it be better if teams of users could themselves choose topics that they wish to follow, and also broadcast their posts to other users following the same topic? You know, like #hashtags on Twitter. Well, there’s no built-in support for hashtags in the current release of the Activity Feeds solution, but here’s a description of one possible workaround which I’ve come up with.

    In my previous post on the topic, I covered the general process of how to enable Activity Feeds for entities in Dynamics CRM. The natural choice for supporting a team collaboration scenario would be to use the default entity Team to display relevant posts for its’ users on the entity form. Unfortunately you can’t enable Activity Feeds for teams, since that’s not a supported entity. In fact, you cannot enable Activity Feeds for any organization-owned entities, even custom ones.

    Luckily there’s nothing stopping your from creating a user-owned custom entity and enabling it for Activity Feeds, so let’s go ahead and create a new entity called “Group”. No need for new fields, just publish the entity, then create a Post Configuration record with the same entity name (new_group or something like that). After this you’ll need to go and adjust the form so that the Record Wall is directly visible when you open the form, by moving it below the first General tab.

    New entity Group created for enabling mentions on Activity Feed posts

    Now you’re all set for starting to use the group entity in Activity Feed posts. No matter on which record’s wall (or your personal wall) you’re writing a post to, you can perform a mention by entering the @ character followed by the group’s name. In this case I’ve created a group called CRM, so I’ll add a mention of @CRM on an account record wall. You’ll see how that turns into a hyperlink to the group record.

    Post with a group mention on an account record wall

    How the user’s personal wall works is that it will display all Activity Feed posts that contain any reference to a record that the user has followed. It doesn’t have to be the record where the post has been written on. This is what enables us to make following updates concerning a certain topic easier for the end user, as long as the posts contain a mention/link to the group record. For manual posts the users will need to indicate that they wish to direct the post to the group’s followers by performing the @[groupname] mention as seen below.

    Performing a mention on a Personal Wall post

    So, does this mean that the mentions can only be utilized with manual user initiated posts? Absolutely not! There is a new attribute available in the workflow editor, called Post Url (Dynamics value). You can read this post on the MS Dynamics CRM Team Blog for details on how the feature can be leveraged in building workflow rules that create Activity Feed posts with mentions referencing other records. This allows us to reference multiple related records in a single post and make it appear on the personal wall of anyone who’s following one of the records.

    Let’s say we want to create an auto post whenever a case record is created and it has the value “CRM” in the subject field, to notify anyone who’s following the CRM group. Ok, so we can find a relationship to the related subject record but since that’s not supported for Activity Feeds (just like teams aren’t), we wouldn’t be able to use it for creating a mention. Also, since the group entity we created doesn’t have a relationship to the case entity, it’s not available in the workflow dynamic values menu.

    Should we go and create a relationship through entity customization? Well, that would be a bit cumbersome, since you’d then have to include a reference into the actual group record in every case record you wish to create a post a mention on. You’d pretty much have an additional subject lookup on the case form as a result, which is not a good solution in terms of usability (at least if you already use the default subject entity in your processes). (more…)

  • Power of Choice or the Legacy of Outlook?

    The first selling point advertised for Dynamics CRM in almost any context is the user interface familiarity of Office users and the seamless integration to Outlook. Compared to other CRM applications, the feature set available in the Dynamics CRM 2011 client for Outlook is unsurpassed, no doubt about that. However, sometimes you do run into issues that break the illusion that CRM and Outlook would be the one and the same application. Here are a few features that you should be aware of when planning on how you’ll train your users to use the two different client versions available: web and Outlook.

    Issue 1: Dashboard ribbons are not context sensitive in Outlook

    If you build a dashboard out of grids that present the user with relevant data from various entities, this can significantly cut down their need for jumping between different menus and screens. Say, a customer service representative can easily view all the new items in the email support queue, active cases assigned to him/her and also other open activities. With the help of the context sensitive ribbon the user can then process these records in the same screen, by changing record status from open to closed, accepting items from the queue, creating new tasks etc.

    Except, in Outlook that won’t work. The user will only be able to create a new dashboard, but not any of the common tasks, like creating new records for the selected grid. This is because in Outlook the ribbon is not context sensitive within the dashboard. Why is this? It works elsewhere in Outlook, so why not here? I imagine the explanation is that while the normal grids are composed of native MAPI objects inside Outlook, the dashboards are merely web pages as far as the Outlook client can recognize them, so it can’t understand which ribbon should be shown in which part of the page. Bummer.

    As a result, if you want to create actionable dashboards that allow users to work on the items presented there, it’s better to instruct them to open CRM through the web client instead of the Outlook client.

    Issue 2: Different logic in Quick Find

    People who have worked with Dynamics CRM throughout several versions will surely have learned how the Quick Find operates and when you need to use wild cars. With the CRM 2011 Outlook client, this logic no longer holds true. Outlook has its own way of handling search terms, so now we can punch in a search word right from the middle of a field, such as the account name, without entering the asterisk wild card in front of the term.

    Great, easier for the user to perform searches, right? Well, it is if you only ever work inside the Outlook client. If you step into the web client views, you’ll discover that things work differently there. Not only do you need to remember to use the wildcard in Quick Find criteria, but there also is a specific Quick Find View. Whereas in the web client the search will cover every active record in the database, no matter from which view you start, in Outlook the search is conducted on the records in the selected view. So, if you’re in the My Contacts view in Outlook client and search for a contact that belongs to another user, the Quick Find results will not deliver any data. In the web client it will.

    Also the columns presented in the web client will always be the ones specified in the Quick Find View customizations, but in Outlook the columns will not change as you’re searching from within the current view. However, it appears that the search columns that the Outlook client performs the query on are still affected by the ones defined in the entity Quick Find View, even though this view is never actually presented to the Outlook user. Still following me? If the different search logic is hard for a consultant to remember, just imagine how confusing it can be to the CRM user.

    Issue 3: Writing emails from Outlook without Outlook

    One of the three core modules in Dynamics CRM is Service. The most typical scenario for utilizing CRM for customer service processes is directing the incoming emails for an address like support@company.com to a queue in CRM. This way the emails are automatically tracked under a contact record if the sender email exists in CRM. Also the queue allows you to see which items are already being worked on by customer service reps.

    If you’re working with the Outlook client for Dynamics CRM, then you can write all your emails with the normal Outlook email editor and make use of the rich tools for message formatting, signatures, attaching multiple files with at once etc. Right? Not in this case. If the email you are replying to does not exist inside your Outlook mailbox but rather as an email record inside a CRM view, you can’t send “Outlook” emails as a reply. When you click the reply button, the Outlook client will open the web client email editor form for you.

    There’s surely a reason why the email editor in the web client hasn’t been improved since CRM 3.0. Outlook is Microsoft’s premium experience editor that should be used wherever possible, whereas the web editor is a secondary feature. But if you’re using Outlook already, then it would be nice to be able to always remain within that rich client, even when replying to queue emails, wouldn’t it?

    Issue 4: Recently used and pinned records behind the File button

    Many users will normally be working with a selected few accounts, contacts and opportunities at a time, rather than the whole CRM customer database. This is why the Recently used records menu in CRM 2011 is a great usability enhancement, which is also familiar from many other CRM applications. Right from the CRM main window, from the top left corner where you first look, you’ll be able to open a rich pane that presents all the latest records as well as the views you’ve recently visited.

    So, when I’m in the Outlook client then, surely I’m able to access the same list? Well, you are, but you’ll have to open the Office Backstage menu by clicking on the Outlook File menu, then glazing past all the file manipulation options and settings menus, to finally reach the recently viewed CRM records. And even if you reach it, you won’t be able to launch any views from this menu, since again the way how Outlook treats grids is different from the web client. Anyway, you probably won’t be accessing this menu any more often than you tweak your CRM settings, simply because it’s so well hidden away.

    Desktop Outlook: how crucial is it still?

    Ok, so there are a few quirks to be aware of when jumping between the web client and Outlook client. But how essential is it really to use the Outlook client in the first place? (more…)