<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Richard Knudson&#039;s Dynamics CRM Trick Bag</title>
	<atom:link href="http://www.dynamicscrmtrickbag.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dynamicscrmtrickbag.com</link>
	<description>Building business value on Dynamics CRM</description>
	<lastBuildDate>Mon, 07 May 2012 23:03:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The History of Rome</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/05/06/the-history-of-rome/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/05/06/the-history-of-rome/#comments</comments>
		<pubDate>Mon, 07 May 2012 01:20:29 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[Customization]]></category>
		<category><![CDATA[News You Can Use]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/2012/05/06/the-history-of-rome/</guid>
		<description><![CDATA[May 6, 2012 – Today's episode wraps up the remarkable five-year run of the best podcast ever, Mike Duncan's The History of Rome. Here's my tribute, in words and xRM.]]></description>
			<content:encoded><![CDATA[<p>Warning: This article has little to do with customer relationship management. It won&#8217;t hurt my feelings if you skip to the end of the article for the gratuitous xRM History of Rome application.</p>
<p>May 6, 2012 – Today&#8217;s episode wraps up the remarkable five-year run of the best podcast ever, <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/">The History of Rome</a>. I discovered Mike Duncan&#8217;s podcast in early 2008; Episode 1 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2007/07/1-in-the-beginning-.html">In the Beginning</a>) was published July 2007. So, unlike <a href="http://en.wikipedia.org/wiki/Buffy_the_Vampire_Slayer_(TV_series)">Buffy the Vampire Slayer</a>, <a href="http://en.wikipedia.org/wiki/Cowboy_Bebop">Cowboy Bebop</a>, <a href="http://en.wikipedia.org/wiki/The_Wire">The Wire</a>, and other masterpieces of popular culture, I came to this one early on. Of the 250 or so Sundays since kicking things off, Duncan clicked <em>Publish</em> on 179 of them. For me and lots of other THoR fans, that always took the sting out of the end of a weekend.</p>
<p>I don&#8217;t believe Duncan considers himself a professional historian, and that&#8217;s one of the reasons this podcast so much fun. I&#8217;m no authority on Roman history, but my guess is the podcast doesn&#8217;t cover much ground academic historians would consider new. But if you&#8217;re like I was a few years ago – like history but don&#8217;t know much about Rome – you should start from the beginning and listen to every one of these episodes. What will you learn? Well, here are a few nuggets from my top x favorite episodes:</p>
<ul style="margin-left: 42pt">
<li>In Episode 1 we learn who Queen Dido was, and the real reason Rome eventually got into it with Carthage.</li>
<li>In Episode 2 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2008/11/2-youthful-indiscrations.html">Youthful Indiscrations</a>), we learn what the <a href="http://en.wikipedia.org/wiki/The_Rape_of_the_Sabine_Women">Rape of the Sabine Women</a> was all about. (I&#8217;d always wondered what that was, and now I know!)</li>
<li>Just to pick two gems from the <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/page/4/">Ten episodes</a> devoted to the three Punic Wars (five alone to <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2008/11/23a--the-second.html">The War with Hannibal</a>), we learn where the term <a href="http://militaryhistory.about.com/od/militarystrategies/p/fabian.htm">Fabian Strategy</a> comes from, and how the charismatic, long-haired rock-star/general <a href="http://www.historynet.com/romes-craftiest-general-scipio-africanus.htm">Scipio Africanus</a> sowed the seeds of the fall of the republic.</li>
<li>29-34 are the &#8220;rise of the populists&#8221; episodes, introducing, in order, the brothers Gracchus (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2008/11/29--tiberius-gr.html">Tiberius</a> and <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2008/11/30--gaius-gracc.html">Gaius</a>), then <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2008/11/31a--marius-the.html">Marius</a>, then Sulla, then <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2008/11/33--marius-and.html">Marius and Sulla</a>.</li>
<li>Next we come to <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2008/11/35--crassus-and.html">Crassus and Pompey</a>…and then of course to Julius Caesar, who gets <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/page/4/">Episodes 39-46</a>. Caesar&#8217;s got a bad rap (killing off the republic &amp; all), but he gets my vote for the Roman I&#8217;d most want to drink beers with. Episode 39 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2009/01/39-the-young-julius-caesar-chronicles-the-history-of-rome.html">The Young Julius Caesar Chronicles</a>) is one of my personal favorites, and if you ever wondered where O. Henry got the idea for <a href="http://en.wikipedia.org/wiki/The_Ransom_of_Red_Chief">The Ransom of Red Chief</a>, listen to this episode now!</li>
<li>Then we move on to the emperors. I&#8217;m going to be very selective here (since this is already getting too long): Episode 61 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2009/07/61-what-me-claudius.html">What, me Claudius?</a>) is also on my top-three list. In Episode 66 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2009/08/66-666-the-history-of-rome.html">666</a>) we learn why Nero could not possibly have fiddled while Rome burned; in Episode 70 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2009/10/70-galba-and-otho.html">Galba and Otho</a>) I learned that Galba is among the emperors I&#8217;d <em>least </em>like to drink beers with; Episodes 79-95 (98 to 180 AD or so) cover the golden age of the empire, from <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2010/01/80-optimus-trajan.html">Trajan</a> to <a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2010/04/91-marcus-and-lucius-and-the-parthians.html">Marcus Aurelius</a>. In episode 95 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2010/05/95-the-beginning-of-the-end.html">The Beginning of the End</a>) Commodus (Joaquin Phoenix in <a href="http://en.wikipedia.org/wiki/Gladiator_(2000_film)">the movie</a>) starts to screw everything up, and leads the way into the confusing and completely messed up 200s AD, during which the empire split into Three Empires (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2010/10/114-the-nadir-of-our-fortunes.html">episode 113, 260 AD</a>), and might have gone down the tubes entirely if it weren&#8217;t for episode 116 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2010/11/116-here-come-the-illyrians.html">Here Come the Illyrians</a>).</li>
<li>Another episode on my top-three list: 119 (<a href="http://thehistoryofrome.typepad.com/the_history_of_rome/2010/12/119-restitutor-orbis.html">Restitutor Orbis</a>, 274 AD). The big takeaway: when it comes to peak value (as opposed to career value), Aurelian is the Sandy Koufax of Roman emperors.</li>
<li>Duncan also has an apparently solid understanding of economics. His explanation of inflation, by way of analogy with the famous Donald Duck episode where Huey, Dewey and Louie get hold of the Duplicator Ray, is not to be missed. It&#8217;s also not to be found (by me, this weekend)…but I know it&#8217;s there somewhere in one of those 179 episodes.</li>
</ul>
<p>About halfway through the podcast, Duncan was offered a sponsorship from <a href="http://www.Audible.com">www.Audible.com</a> and started reading a short pitch at the start of most episodes. I was glad when he did that; anybody who creates content as good as The History of Rome deserves to be rewarded for it. The pitch includes a URL &#8212; <a href="http://www.audible.com/historyofrome">http://www.audible.com/historyofrome</a> &#8212; where you can sign up for a free trial, and if you ever want Audible, I encourage you to use that link to do so. He also started doing History of Rome tours: <a href="http://www.historyofrometour.com/">http://www.historyofrometour.com/</a>. My hope is that the tours have been so lucrative that he keeps doing them until I can work my schedule around one.</p>
<p>What else might he spin off from THoR? Well, if he did a book, I&#8217;d buy it for sure. Two of the best reasons to do a book:</p>
<ol>
<li>He could include some nice maps. There are some on the podcast site, but I think book-quality maps would add a ton of value.</li>
<li>I could look up &#8220;Huey, Dewey and Louie&#8221; in the index and find that inflation episode.</li>
</ol>
<p>I&#8217;ve already completed one spinoff with absolutely no commercial value, but it was fun and didn&#8217;t take too much time. (see below)</p>
<h2>Vale, THoR</h2>
<p>The 1,229 year history comes in at just about 7 years per episode. With an average episode length of about 25 minutes, Duncan covered about three months of Roman history per podcast minute. Just right.</p>
<p>Thanks Mike. Sunday nights just won&#8217;t be the same.</p>
<h2>xRM History of Rome Application</h2>
<p>Want a list of Roman emperors in a spreadsheet? <a href="http://www.forumancientcoins.com/historia/rome_gen.htm">Here you go</a>.</p>
<p>Spreadsheets are OK, but if I have structured data to track and analyze I always go with Dynamics CRM. When I wrote <a href="http://www.dynamicscrmtrickbag.com/2009/10/04/thoughts-on-xrm/"><em>What if they took the C out of CRM</em></a>, I was still new to Roman history and didn&#8217;t fully appreciate how much more insight I&#8217;d gain from it if the historical data were in an xRM application. For example, consider the following figure:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050712_0120_TheHistoryo1.png" alt="" /></p>
<p>This is the <em>Emperors</em> view of the Romans entity (renamed Contact), with the <em>Emperors by Cause of Demise</em> chart selected. (I customized the Status Reason field for &#8220;cause of demise&#8221;.)</p>
<p>An application like this demands dashboards. For example, here&#8217;s the <em>Emperors at a Glance</em> dashboard:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050712_0120_TheHistoryo2.png" alt="" /></p>
<p>If I ever need a reminder on who the real stinkers were, I can simply drill down on the 5 bar in the <em>Emperors by Rating </em>chart:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050712_0120_TheHistoryo3.png" alt="" /></p>
<p>And on the off chance I forget which emperor died because those darned Goths just made him so mad, I can drill down on the Emperors by Cause of Demise chart:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050712_0120_TheHistoryo4.png" alt="" /></p>
<p>And talk about a perfect use of the <strong>Connections</strong> feature! Here are just a few of the connection roles I&#8217;ve created to keep track of the various ways these people were connected to each other:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050712_0120_TheHistoryo5.png" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/05/06/the-history-of-rome/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Trick Bag Browser Watch</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/05/02/trick-bag-browser-watch/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/05/02/trick-bag-browser-watch/#comments</comments>
		<pubDate>Wed, 02 May 2012 21:52:12 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[News You Can Use]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/2012/05/02/trick-bag-browser-watch/</guid>
		<description><![CDATA[May 2, 2012 - A recent tweet by Mitch Milam on his "what browser will you use with the CRM Anywhere release" poll got me thinking about ... well, what browsers people will use with the CRM Anywhere release. This article compares Mitch's results with a different kind of poll, as reflected in my Trick Bag Browser Watch dashboard. Enjoy!]]></description>
			<content:encoded><![CDATA[<p>May 2, 2012 – Besides being an all-around swell guy, <a href="http://blogs.infinite-x.net">Mitch Milam</a> also has a great blog. As of May 2, his recent <a href="http://blogs.infinite-x.net/about-this-site/pollsarchive/">poll on which browser his readers expect to use with CRM 2011</a> had Chrome with 50%, IE with 49%, Firefox with 22% and Safari with 19% (you can vote more than once, so the percentages don&#8217;t add up to 100):</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050212_2151_TrickBagBro1.png" alt="" /></p>
<p>I thought it would be fun to compare that against a dashboard I created, the <strong>Trick Bag Browser Watch</strong>, which is based on the ClickDimensions custom entity, Page Visits. (I&#8217;ve written plenty about ClickDimensions, my favorite add-on for Dynamics CRM, so I won&#8217;t go into details here. For our present purposes, what you need to know is CD gives you a snippet of HTML/JavaScript, unique to your organization, and you drop it on any page or site you want to do analytics against. As you&#8217;ll see below, one of the big advantages of having records like visits and page views in your CRM is that they are tied back to contact records. And while anonymous analytics are interesting, non-anonymous analytics are a lot <em>more</em> interesting!)</p>
<p>With that background, let&#8217;s take a look at the revealed browser preferences of Dynamics CRM Trick Bag readers. The next figure shows two different visualizations of all site visits for the last six weeks. The one on the left is by week and browser in case we can see any trends; the one on the right is the all-up distribution for the period:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050212_2151_TrickBagBro2.png" alt="" width="699" height="328" /></p>
<p>In my &#8220;poll&#8221;, you only get to vote once, so everything totals to 100%:</p>
<div>
<table style="border-collapse:collapse" border="0">
<colgroup span="1">
<col style="width: 87px;" span="1"></col>
<col style="width: 81px;" span="1"></col>
<col style="width: 84px;" span="1"></col>
</colgroup>
<tbody>
<tr style="background: #4f81bd; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid #95b3d7 0.5pt; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:white"><strong>Browser</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid #95b3d7 0.5pt; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:white"><strong>Visits</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid #95b3d7 0.5pt; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom"><span style="color:white"><strong>Percent</strong></span></td>
</tr>
<tr style="background: #dce6f1; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">IE</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">18131</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">51%</span></p>
</td>
</tr>
<tr style="height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">Chrome</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">8284</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">23%</span></p>
</td>
</tr>
<tr style="background: #dce6f1; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">Firefox</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">5401</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">15%</span></p>
</td>
</tr>
<tr style="height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">Safari</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">1568</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">4%</span></p>
</td>
</tr>
<tr style="background: #dce6f1; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">All others</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">2500</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">7%</span></p>
</td>
</tr>
<tr style="height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black"><strong>Total</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black"><strong>35884</strong></span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black"><strong>100%</strong></span></p>
</td>
</tr>
</tbody>
</table>
</div>
<p> </p>
<p>The main difference between Mitch&#8217;s results and mine is that about twice as many of my readers access the Trick Bag with IE than with Chrome; Mitch has a slight edge of readers <em>forecasting</em> they will use Chrome to access CRM 2011 when multi-browser support ships with the <a href="http://crmpublish.blob.core.windows.net/docs/ReleasePreviewGuide.pdf">CRM Anywhere release</a> sometime… very soon.</p>
<p>I mentioned above that analytics are more interesting when associated with something like contact records, which brings me to the next figure. These are the same two visualizations, but this filtered dataset only includes <em>contact</em> page views:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050212_2151_TrickBagBro3.png" alt="" width="678" height="301" /></p>
<p>Here are the numbers:</p>
<div>
<table style="border-collapse:collapse" border="0">
<colgroup span="1">
<col style="width: 87px;" span="1"></col>
<col style="width: 81px;" span="1"></col>
<col style="width: 84px;" span="1"></col>
</colgroup>
<tbody>
<tr style="background: #4f81bd; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid #95b3d7 0.5pt; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:white"><strong>Browser</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid #95b3d7 0.5pt; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:white"><strong>Visits</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid #95b3d7 0.5pt; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom"><span style="color:white"><strong>Percent</strong></span></td>
</tr>
<tr style="background: #dce6f1; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">IE</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">2462</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">69%</span></p>
</td>
</tr>
<tr style="height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">Chrome</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">525</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">15%</span></p>
</td>
</tr>
<tr style="background: #dce6f1; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">Firefox</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">412</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">12%</span></p>
</td>
</tr>
<tr style="height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">Android</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">49</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">1%</span></p>
</td>
</tr>
<tr style="background: #dce6f1; height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">iPad</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">44</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">1%</span></p>
</td>
</tr>
<tr style="height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black">All others</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black">80</span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black">2%</span></p>
</td>
</tr>
<tr style="height: 24px;">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid #95b3d7 0.5pt; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom"><span style="color:black"><strong>Total</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  none" valign="bottom">
<p style="text-align: right"><span style="color:black"><strong>3572</strong></span></p>
</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid #95b3d7 0.5pt; border-right:  solid #95b3d7 0.5pt" valign="bottom">
<p style="text-align: right"><span style="color:black"><strong>100%</strong></span></p>
</td>
</tr>
</tbody>
</table>
</div>
<p> </p>
<p>IE accounts for 69% of visits from <em>contacts</em> as compared to its 51% share among <em>all</em> visits. That makes sense: you&#8217;d expect my contacts to be a pretty CRM-centric crowd, and CRM&#8217;s soon to be former IE-only requirement has created an IE bias in that group.</p>
<p>It will be fascinating to see how these numbers change in the next few months. For most of my clients, I expect the Big Deal<strong><em><br />
</em></strong>will be the availability, directly from Microsoft, of a rich mobile client for Dynamics CRM on the device of their choice. Microsoft has been clear and consistent on the importance of having a great mobile experience for Dynamics CRM, and I think we can expect that a fast-growing chunk of our CRM interaction will be mobile.</p>
<p>And to the extent that Trick Bag readers are representative of CRM users, I can expect a trend like the one shown here will continue (also from the Trick Bag Browser Watch dashboard):</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/05/050212_2151_TrickBagBro4.png" alt="" /></p>
<p>I guess I better start optimizing those pages for the mobile experience!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/05/02/trick-bag-browser-watch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>User-Configurable Service Level Agreements</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/04/24/user-configurable-service-level-agreements/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/04/24/user-configurable-service-level-agreements/#comments</comments>
		<pubDate>Tue, 24 Apr 2012 14:23:30 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[CRM 2011 Business Process Book]]></category>
		<category><![CDATA[Customization]]></category>
		<category><![CDATA[Workflow and Dialog Processes]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/?p=4711</guid>
		<description><![CDATA[April 24, 2012 - This article describes how to use a custom entity to store information regarding service level agreements, and how to use a workflow to populate a case with information for a specific SLA. This is an example of a more general technique, and I conclude with a brief discussion of how you could extend it to other scenarios. ]]></description>
			<content:encoded><![CDATA[<p>April 24, 2012 &#8211; Agreements between customers and service providers regarding things such as what must happen to resolve a case, or what happens when a case isn&#8217;t resolved within some agreed-upon timeframe are often referred to as service level agreements. (See <a href="http://en.wikipedia.org/wiki/Service_level_agreement">http://en.wikipedia.org/wiki/Service_level_agreement</a> for a good overview discussion of service level agreements.) According to the Wikipedia definition,</p>
<p style="margin-left: 36pt"><em>A service-level agreement is a negotiated agreement between two parties, where one is the customer and the other is the service provider… The SLA records a common understanding about services, priorities, responsibilities, guarantees, and warranties.<br />
</em></p>
<p>While a simple case routing and escalation workflow isn&#8217;t itself a service level agreement, it might include several components of one. In general, service level agreements (SLAs) are more complex, with clearly defined requirements, specific penalties for non-performance, and so forth. There are several problems with trying to implement service level agreements entirely within the Dynamics CRM workflow structure:</p>
<ul>
<li>The workflow designer is not the right place to store all of the complex components of an SLA.</li>
<li>A case routing and escalation workflow is very specific, effectively hardwired for the terms of a single SLA. If you needed to implement SLAs with custom terms for many different customers, the workflow approach would quickly become tedious.</li>
</ul>
<p>Here we will examine an approach that solves problems like these. Here are some of its characteristics:</p>
<ul style="margin-left: 38pt">
<li>We will use a custom entity, rather than the workflow designer, to represent the SLA. Custom fields will contain SLA-specific information, such as queues to route cases to, escalation periods, and so forth.</li>
<li>The SLA entity has a 1:N relationship to the case entity. Thus, when a case is created, it can be associated with an SLA record, and a workflow process can use dynamic values to implement the terms of the selected SLA.</li>
<li>Optionally, we can also create a 1:N relationship from SLA to account. With this in place, the workflow process could automatically check the account record for a specified SLA, and then implement the terms of the SLA automatically for any case created for the account.</li>
</ul>
<h2>How it Works</h2>
<p>Before diving into the workflow, let&#8217;s take a look at the custom SLA entity. The following figure shows the SLA grid after entering a few sample records:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu1.png" alt="" /></p>
<p>And the following figure shows the form for a specific SLA record:<br />
<img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu2.png" alt="" /></p>
<p>The most important aspect of this approach is that the terms of an agreement are effectively variables, with the data stored in the SLA entity: this is how we avoid the hardwired aspect of implementing directly within the workflow designer. Because the SLA entity has a 1:N relationship to both account and case, a lookup field on their respective forms allows a user to select an SLA.</p>
<p>As you can see from the form, the SLA in this example consists of the following components:</p>
<ul>
<li>A &#8220;Level 1&#8243; queue, where a case will be routed to first; and a &#8220;Level 2&#8243; queue for escalation.</li>
<li>How many days to wait before escalating.</li>
<li>Which user to assign to cases under the SLA (&#8221;Service Rep&#8221;).</li>
<li>An optional incident fee.</li>
<li>Terms of Service and Non-compliance text fields.</li>
</ul>
<p>Again, since this is a custom entity with a parental relationship to case and/or account, you can extend it to incorporate arbitrarily complex SLA structures.</p>
<h2>Setting Up</h2>
<p>The following table presents the customizations to the case and account entities, and the custom SLA entity, that are used by the workflow.</p>
<p><span style="font-family:Cambria; font-size:9pt"><strong>Required Entity Customizations<br />
</strong></span></p>
<div>
<table style="border-collapse:collapse" border="0">
<colgroup span="1">
<col style="width: 178px;" span="1"></col>
<col style="width: 178px;" span="1"></col>
<col style="width: 442px;" span="1"></col>
</colgroup>
<tbody>
<tr style="background: #4f81bd">
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid 2.25pt; border-left:  none; border-bottom:  solid 2.25pt; border-right:  none"><span style="color:white"><strong>Entity</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid 2.25pt; border-left:  none; border-bottom:  solid 2.25pt; border-right:  none"><span style="color:white"><strong>Custom Fields</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  solid 2.25pt; border-left:  none; border-bottom:  solid 2.25pt; border-right:  none"><span style="color:white"><strong>Field Type and Purpose</strong></span></td>
</tr>
<tr>
<td style="background: #4f81bd; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  none; border-right:  solid 0.5pt" rowspan="6"><span style="color:white"><strong>SLA (custom)</strong></span></td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">Escalation Period</td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Whole Number.</strong> Number of days until case is escalated.</td>
</tr>
<tr>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid 0.5pt; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">Incident Fee</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Currency</strong>. Optional, can be used to track per-incident fees.</td>
</tr>
<tr style="background: #d8d8d8">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid 0.5pt; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">Service Rep</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Lookup to User entity</strong>. Allows users to specify different users as escalation manager for different SLAs.Creates a custom 1:N relationship from User to SLA</td>
</tr>
<tr>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid 0.5pt; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">Level 1 Queue</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Lookup to Queue entity</strong>. Allows users to specify queue to which new cases are routed.Creates a custom 1:N relationship from Queue to SLA</td>
</tr>
<tr style="background: #d8d8d8">
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid 0.5pt; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">Level 2 Queue</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Lookup to Queue entity</strong>. Allows users to specify queue to which escalated cases are routed.Creates a custom 1:N relationship from Queue to SLA</td>
</tr>
<tr>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  solid 0.5pt; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">Terms of Service</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Multiple Lines of Text.</strong> Description of SLA terms</td>
</tr>
<tr>
<td style="background: #4f81bd; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"> </td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">Non-compliance Penalty</td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Multiple Lines of Text. </strong>Description of penalty, if any, for non-compliance</td>
</tr>
<tr>
<td style="background: #4f81bd; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><span style="color:white"><strong>Case</strong></span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">SLA</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Lookup to SLA entity</strong>. Allows users to select SLA with which case is associated.</td>
</tr>
<tr>
<td style="background: #4f81bd; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"> </td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Follow Up By</strong> (system field)</td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Rename to Escalation Date</strong></td>
</tr>
<tr>
<td style="background: #4f81bd; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"> </td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">All SLA fields</td>
<td style="padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Escalation Period, Incident Fee, etc.<br />
</strong>These are added to case entity and form for easy reference. Will be read-only after workflow is activated.</td>
</tr>
<tr>
<td style="background: #4f81bd; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 2.25pt; border-right:  solid 0.5pt"><span style="color:white"><strong>Account</strong></span></td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt">SLA</td>
<td style="background: #d8d8d8; padding-left: 9px; padding-right: 9px; border-top:  none; border-left:  none; border-bottom:  solid 0.5pt; border-right:  solid 0.5pt"><strong>Lookup to SLA entity</strong>. Allows users to select SLA for an account. If case is created for account, workflow can automatically select the appropriate SLA.</td>
</tr>
</tbody>
</table>
</div>
<h2>The Workflow</h2>
<p>The <strong>Case Escalation and Routing </strong>workflow uses the following business rules to determine which SLA to apply to a new case:</p>
<ul>
<li>If an SLA has been selected for a case, the workflow leaves it as is. This allows a user to &#8220;override&#8221; an account-specific SLA.</li>
<li>If no SLA has been selected for a case but one has been for an account, the account SLA will be applied to the case.</li>
<li>If neither the account nor case records have an SLA selected, the workflow stops, and no SLA rules are subsequently applied to the case.</li>
</ul>
<p>The workflow – <strong>Case Escalation Process</strong> – has organization level scope and runs automatically when a case record is created. I divided it into three stages: the first one determines which SLA, if any, should be applied to the case; the second applies the basic terms of the SLA to the case; the third implements the case escalation logic.</p>
<p><strong>The following figure shows the first stage</strong>. All the first stage does is determine which SLA should be associated with the case, according to the rules just described. The Update Case step uses dynamic values to fill in the case SLA lookup with the SLA selected for the account, in the event an override SLA has not been selected for the case:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu3.png" alt="" /></p>
<p>Once the appropriate SLA is associated with the case, <strong>the second stage applies the terms of the SLA to the case.<br />
<img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu4.png" alt="" /></strong></p>
<p>In the SLA structure implemented here, there are three components to the &#8220;terms&#8221; of an SLA, all of which are implemented in this stage:</p>
<ul>
<li>
<div>Field values from the SLA are filled in on the case record by the <strong>Update Case</strong> step. Since there&#8217;s a 1:N relationship from SLA to case this is not strictly necessary…but it&#8217;s often quite convenient to have them available on the case record. I get requests like this from customers all the time, and I often swallow hard and implement it like this, weighing the tradeoff between database design purity and ease of customer use. (Not to mention, if you refuse on the grounds of database design purity, you sound like a dweeb.) The following figure shows how the dynamic values are updated in my example, filling in the case SLA fields in a custom section on the case form with the values of the corresponding fields from the SLA record:<br />
<img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu5.png" alt="" /></div>
<p style="margin-left: 22pt">
<ul>
<li>The second part assigns the case record to a Service Rep, if one was specified on the SLA.</li>
<li>The third part checks whether a Level 1 Queue was specified, and routes the new case to the appropriate queue.</li>
</ul>
</li>
</ul>
<p>The third stage performs two main tasks: updates the <strong>Escalation Date</strong> field based on the SLA&#8217;s <strong>Escalation Period </strong>value, and then implements the Wait…Escalate logic. The following figure shows the collapsed view of the entire third stage, since it&#8217;s too big to show in one screen shot:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu6.png" alt="" /></p>
<p>Here&#8217;s the first part expanded:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu7.png" alt="" /></p>
<p>Remember the goal of this conditional block is to update the Follow Up By (renamed to Escalation Date) field on the case record. Here&#8217;s what the properties dialog looks like for the first of the three conditions included here:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu8.png" alt="" /></p>
<p>The reason this needs to be performed with a conditional block, checking for each possible value of the Escalation Period field, is that dynamic values cannot be used to perform date arithmetic. That is, if you could use the <strong>Increment By</strong> operator to increment a date field, you could take the following approach:</p>
<ol>
<li>Fill in the Escalation Date field with the Created On date.</li>
<li>Increment it by the value of the Escalation Period.</li>
</ol>
<p><em>Unfortunately, when this was written date fields only support the <strong>Set To </strong>and <strong>Clear</strong> operators. So while this somewhat hard-wired approach is a little inconvenient, it&#8217;s not that bad. The most important point is that it allows the user to configure the wait period in the SLA entity, and does not require you to make updates to the workflow itself to accommodate different wait periods.<br />
</em></p>
<p>In any event, after the Escalation Date field is filled in, we&#8217;re ready for the wait…escalate logic, illustrated in the following figure. There are three possible outcomes the way I&#8217;ve written the process:</p>
<ul>
<li>The case might be resolved before the escalation date is reached.</li>
<li>The case might be canceled before the escalation date is reached.</li>
<li>The escalation date might be reached before either of those happens, in which case we need to escalate.</li>
</ul>
<p>We&#8217;ve just perfectly described the requirements for a <strong>Wait until…Otherwise Parallel Wait Branch…</strong> conditional block: a set of mutually exclusive outcomes with a time dependency, and we don&#8217;t know which will happen first.</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu9.png" alt="" /></p>
<p>We&#8217;ve seen this before in the section on Wait conditions, but it&#8217;s worth a review. Here&#8217;s what the <strong>Timeout until</strong><br />
<span style="color:#548dd4"><strong>Case:Escalation Date </strong></span>condition looks like:<br />
<img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu10.png" alt="" /></p>
<p>Remember, in situations like this is the <strong>Process Timeout</strong> variable you want to use. The way I think of it, you&#8217;re forcing the process to take a timeout until the system clock equals the value of the Escalation Date field on the case record, and this is how you do it.</p>
<p>Here&#8217;s an example to show what it might look like as a user creates a case. If necessary, refer back to the figure illustrating the Standard SLA shown above. Suppose Advanced Components has that SLA selected on their account form. A new case is created, with Advanced Components as the customer, and an override SLA is not selected for the new case.</p>
<p>The case is created and saved on February 5, 2012. After the workflow has had a chance to run the case form looks like this:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu11.png" alt="" /></p>
<p>Notice the workflow has filled in the values in the SLA Information section. If you monitor the workflow process, you will see that everything in the first two stages has happened, and that the process is now waiting in stage 3:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu12.png" alt="" /></p>
<p>There are plenty of ways to monitor the progress of processes like this. In fact, I often find that the tactics I use to test and troubleshoot processes are also useful to clients after they go into production. For example, many users (including this one!) find the default UI for working with queues and queue items to be a little confusing at times. I usually create a custom dashboard containing lists with specific views of queue items so I can verify that items are being correctly routed to queues. Here&#8217;s an example that makes it obvious that the case just created did actually get routed to the correct Level 1 queue:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu13.png" alt="" /></p>
<h2>Summary</h2>
<p>The approach discussed here effectively substituted a custom entity – the SLA – for what might otherwise be accomplished by implementing custom business logic, hardwired for a specific SLA, in the workflow designer. Provided the SLA entity has a parental relationship to case, dynamic values can be used to grab SLA-specific data from a customer&#8217;s SLA when a new case is created. SLA creation and maintenance becomes a task business users can perform, and workflow designers can do other things, such as go skiing or watch the White Sox or the Mariners, or both.</p>
<p>The approach can be generalized to non-service scenarios also. The general idea is that you have a &#8220;configuration&#8221; entity to store specific combinations of values for various configurations. Any record type with an N:1 relationship to the configuration entity can be populated with data from one of its records. Here are a few examples where you could apply the general approach:</p>
<ul style="margin-left: 40pt">
<li>Use an &#8220;opportunity type&#8221; entity to store combinations of data to use on different opportunity types. When a user creates an opportunity and selects a type, you could attach appropriate templates or sales literature, notify appropriate users, update with the appropriate price list and so forth.</li>
<li>Use an &#8220;event type&#8221; entity, and create a 1:N relationship from it to the service activity entity, updating specific information on a service activity record when an event type is selected.</li>
<li>Use a &#8220;product type&#8221; entity, and create a 1:N from it to product, auto-populating information on a product record based on the selection of product type.</li>
</ul>
<p>A final note: this article is adapted from an example in my upcoming book, which I will soon be able to refer to simply as my book. Look, it&#8217;s even got a cover design (thanks to my publisher, the indefatigable Julie Yack):</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042412_1422_UserConfigu14.png" alt="" /></p>
<p>I&#8217;ve posted plenty of other excerpts and examples in the <a href="http://www.dynamicscrmtrickbag.com/category/workflow/">Workflow and Dialog Processes</a> article category, and I&#8217;ll present some of my <a href="http://www.dynamicscrmtrickbag.com/2012/04/17/webinar-my-top-x-fave-business-process-tips-tricks/">favorite business process tips &amp; tricks</a> in the webinar scheduled for May 31.</p>
<p>forific l, service level agreements (SLAs) are more complex, withhe wait period in the SLA entity, and does not require you to</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/04/24/user-configurable-service-level-agreements/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dynamics CRM 2011 Security Roles Revisited</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/04/23/dynamics-crm-2011-security-roles-revisited/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/04/23/dynamics-crm-2011-security-roles-revisited/#comments</comments>
		<pubDate>Mon, 23 Apr 2012 19:50:20 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[Customization]]></category>
		<category><![CDATA[Training and Certification]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/?p=4694</guid>
		<description><![CDATA[April 23, 2012 - An article I wrote some time ago about CRM 2011 security roles is consistently the most popular on my blog. Judging by the questions I get, a few topics could stand more clarification, and they are the topics of this article and the accompanying video. ]]></description>
			<content:encoded><![CDATA[<p>April 23, 2012 – Week in, week out, an article I wrote some time ago on <a href="http://www.dynamicscrmtrickbag.com/2011/07/20/dynamics-crm-2011-security-roles/">Dynamics CRM security roles</a> is the most popular article on the Trick Bag. For example, courtesy of the <a href="http://www.dynamicscrmtrickbag.com/2012/03/23/the-importance-of-analytics/">ClickDimensions analytics</a> features, here are page views for the last 30 days, for the top ten pages on the blog:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/04/042312_1950_DynamicsCRM1.png" alt="" /></p>
<p>I recently posted a video on my <a href="http://www.youtube.com/user/RichardKnudson">YouTube channel</a> that clarifies some of the least intuitive aspects of Dynamics CRM security roles, and rather than bury it at the end of what&#8217;s already a borderline too-long article, I thought it better have its very own article.</p>
<p>In the video, I walk through a custom security role for what I called the &#8220;Summer Intern&#8221; scenario, and the most important points it should clarify are the following:</p>
<ul style="margin-left: 38pt">
<li>
<div>The difference between the <strong>Append</strong> and <strong>Append To</strong> privileges. The <strong>Append</strong> privileges you have for an entity determine whether you can append it (add it as a child record) to other records. <strong>Append To</strong> privileges for an entity determine whether you can append other records to it. Whenever I cover this topic in training, I always have to repeat the previous two sentences to myself several times before hand, so I know for sure it&#8217;s one of those topics that could use a good demo. Here are a few examples. Suppose your security role has:</div>
<ul>
<li>Append privilege for the Activity entity set to Organization; Append To for Account set to None; Append to for Contact set to User. This means you cannot add any activity records to any accounts (you won&#8217;t see the Add ribbon on the account form), but you can add activities to contact records provided you own the activity.</li>
<li>Append To for Account set to Organization, Append for Contact set to Business Unit, Append for Opportunity set to None. This means you can associate a contact record with any parent account record, provided that the contact record is owned by you or any user in your business unit. You won&#8217;t be able to associate an opportunity record with any parent record…which means you won&#8217;t be able to create one because the Potential Customer field is required.</li>
</ul>
</li>
<li>
<div>The <strong>Create</strong> privilege. I get lots of questions about this one, and for some reason I didn&#8217;t cover it much if at all in the security article I mentioned earlier. The video definitely calls this one out, but here&#8217;s a short explanation: the Create privileges you have for an entity determine which users you can create a record for:</div>
<ul>
<li>If set to <strong>None</strong>, you can&#8217;t create any records and you don&#8217;t see the New button on the ribbon.</li>
<li>If set to <strong>User</strong>, you can only create records and assign them to yourself.</li>
<li>If set to <strong>Business Unit</strong>, you can create records and assign to you, or any users in your business unit.</li>
<li><strong>Parent-Child Business Unit</strong>: can create and assign to you, any users in your business unit, or any child business units.</li>
<li><strong>Organization</strong>: can create and assign a record to any user in the entire CRM organization.</li>
</ul>
<p>I get a lot of questions about this one, and I think the reason is that it seems like it should be covered by the Assign privilege. It isn&#8217;t though: think of Assign as controlling your ability to assign records <em>after</em> they&#8217;ve been created. Create controls what happens the first time a record is saved. There&#8217;s an analogy to this in workflows and dialogs, by the way. What you&#8217;ll notice there is that when a record is first created, the Assign event is not triggered. So if it&#8217;s important to notify a user that a record has been assigned to them, you need to use <em>both</em> the <strong>Record is created</strong> and <strong>Record is assigned</strong> triggers: In a technical sense, when a record is <em>created</em> it&#8217;s not <em>assigned</em> (even though in a practical sense it is, since it has an owner!)</li>
<li><strong>Miscellaneous Privileges</strong>. Most of these are found on the security role&#8217;s Business Management tab. These have to do with things that are NOT entity-specific, such as Export to Excel, Bulk Edit, Print and so forth. Most of these are all or nothing: full green Organization or empty red None. If set to None, the button in question (Excel, Merge with two records selected, Edit with multiple records selected, etc.) just doesn&#8217;t show up on the ribbon.</li>
</ul>
<p>Here&#8217;s the video. Enjoy.<br />
<iframe width="420" height="315" src="http://www.youtube.com/embed/bXuqCDehe9k" frameborder="0" allowfullscreen></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/04/23/dynamics-crm-2011-security-roles-revisited/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Webinar: My Top X Fave Business Process Tips &amp; Tricks</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/04/17/webinar-my-top-x-fave-business-process-tips-tricks/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/04/17/webinar-my-top-x-fave-business-process-tips-tricks/#comments</comments>
		<pubDate>Tue, 17 Apr 2012 21:39:32 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[News You Can Use]]></category>
		<category><![CDATA[Tips, Tricks, Q&A]]></category>
		<category><![CDATA[Workflow and Dialog Processes]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/?p=4687</guid>
		<description><![CDATA[April 17 2012 &#8211; I surveyed attendees at a recent webinar to find out which topics they&#8217;d like to see in future webinars, and the most preferred by a longshot was also the one with the longest name by a longshot: My Top X Fave Business Process Tips &#38; Tricks. Even though my posted survey [...]]]></description>
			<content:encoded><![CDATA[<p>April 17 2012 &#8211; I surveyed attendees at a recent webinar to find out which topics they&#8217;d like to see in future webinars, and the most preferred by a longshot was also the one with the longest name by a longshot: My Top X Fave Business Process Tips &amp; Tricks. Even though my posted survey got thrown out, that was also <em>my </em>favorite topic, so it worked out great.</p>
<p>So&#8230;register now for the 90-minute session, May 31, noon CDT. Topics include, but not limited to:</p>
<ul>
<li><span style="font-size: 11px; font-family: Verdana;">What can you </span><strong>NOT</strong><span style="font-size: 11px; font-family: Verdana;"> do with business processes?</span></li>
<li><span style="font-family: Verdana; font-size: 11px;">What can you do with processes  that can not be done interactively?</span></li>
<li><span style="font-family: Verdana; font-size: 11px;">Working with closed records and  read-only fields</span></li>
<li><span style="font-family: Verdana; font-size: 11px;">Working with hyperlinks and  record URLs</span></li>
<li><span style="font-family: Verdana; font-size: 11px;">Security: who can run &#8216;em, who  can create &#8216;em?</span></li>
<li><span style="font-family: Verdana; font-size: 11px;">Dialogs: when to query, when to  look up?</span></li>
<li><span style="font-family: Verdana; font-size: 11px;">Dialog Power-Tip: run dialogs  from dashboard links</span></li>
<li><span style="font-family: Verdana; font-size: 11px;">Workflows v. Dialogs: Round-Robin  assignment and cloning records</span></li>
</ul>
<p><iframe src="http://files.dynamicscrmtrickbag.com/mageniumcom-ajhih/pages/b386d399d988e111b47c1cc1dee87acd.html" width="100%" height="500px" type="text/html" frameborder="0" style="border:0"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/04/17/webinar-my-top-x-fave-business-process-tips-tricks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Convergence 2012 Highlights Recordings and Resources</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/04/04/convergence-2012-highlights-recordings/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/04/04/convergence-2012-highlights-recordings/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 15:40:40 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[News You Can Use]]></category>
		<category><![CDATA[Tips, Tricks, Q&A]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/?p=4651</guid>
		<description><![CDATA[April 4, 2012 - Links and Resources from Convergence Highlights Webinar]]></description>
			<content:encoded><![CDATA[<p>April 5, 2012 &#8211; This is a companion piece to my April 4 webinar, Convergence 2012 Highlights. I posted links to the recordings on the <a href="http://www.dynamicscrmtrickbag.com/trick-bag-video/" target="_self">Trick Bag Video</a> page, or you can visit my <a href="http://www.youtube.com/user/RichardKnudson" target="_blank">YouTube channel </a>and watch them there.</p>
<p>In the webinar I referred to several pages and resources for more information, so I posted the links here:</p>
<h3>The Q2 2012/CRM Anywhere/R8 Release</h3>
<p><a href="http://crmpublish.blob.core.windows.net/docs/ReleasePreviewGuide.pdf" target="_blank">http://crmpublish.blob.core.windows.net/docs/ReleasePreviewGuide.pdf</a></p>
<h3>Dynamics CRM and SQL 2012: Better Together</h3>
<p><a href="http://blogs.msdn.com/b/crm/archive/2012/03/07/microsoft-dynamics-crm-and-sql-server-2012-better-together.aspx" target="_blank">http://blogs.msdn.com/b/crm/archive/2012/03/07/microsoft-dynamics-crm-and-sql-server-2012-better-together.aspx</a></p>
<h3>The Dynamics CRM Marketplace, (a search for solutions from Microsoft Dynamics labs)</h3>
<p><a href="http://dynamics-crm.pinpoint.microsoft.com/en-US/applications/search?q=microsoft+dynamics+labs" target="_blank">http://dynamics-crm.pinpoint.microsoft.com/en-US/applications/search?q=microsoft+dynamics+labs</a></p>
<h3>CodePlex, (a search for CRM 2011)</h3>
<p><a href="http://www.codeplex.com/site/search?query=crm%202011" target="_blank">http://www.codeplex.com/site/search?query=crm%202011</a></p>
<h3>Social Analytics (“Vancouver”) in R9 timeframe</h3>
<p><a href="http://www.microsoft.com/en-us/sqlazurelabs/labs/socialanalytics.aspx" target="_blank">http://www.microsoft.com/en-us/sqlazurelabs/labs/socialanalytics.aspx</a></p>
<h3>Single Sign-on and Synchronized Users</h3>
<p><a href="http://msdn.microsoft.com/en-us/library/hh675418.aspx" target="_blank">http://msdn.microsoft.com/en-us/library/hh675418.aspx</a></p>
<p><a href="http://onlinehelp.microsoft.com/en-us/office365-enterprises/hh125004.aspx" target="_blank">http://onlinehelp.microsoft.com/en-us/office365-enterprises/hh125004.aspx</a></p>
<h3>IDC June 2011 Study on Public IT Cloud Services Spending</h3>
<p><a href="http://www.idc.com/getdoc.jsp?containerId=prUS22897311" target="_blank">http://www.idc.com/getdoc.jsp?containerId=prUS22897311</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/04/04/convergence-2012-highlights-recordings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Importance of Analytics</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/03/23/the-importance-of-analytics/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/03/23/the-importance-of-analytics/#comments</comments>
		<pubDate>Fri, 23 Mar 2012 18:40:34 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[CRM Add-Ons]]></category>
		<category><![CDATA[News You Can Use]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/2012/03/23/the-importance-of-analytics/</guid>
		<description><![CDATA[March 23, 2012 – When I first started doing marketing automation integrated within Dynamics CRM, the only thing I cared about was email tracking. That is, after sending a marketing email, knowing which emails were delivered or bounced, which ones were opened or clicked through, and so forth. But the more marketing I do, the more I appreciate the importance of other features as a complement to email tracking, and one of those – analytics – is the topic of this article.]]></description>
			<content:encoded><![CDATA[<p>March 23, 2012 – When I first started doing marketing automation integrated <em>within</em> Dynamics CRM, the only thing I cared about was email <em>tracking</em>. That is, after sending a marketing email, knowing which emails were delivered or bounced, which ones were opened or clicked through, and so forth. But the more marketing I do, the more I appreciate the importance of other features as a complement to email tracking, and one of those – <em>analytics</em> – is the topic of this article.</p>
<p>I use (and highly recommend) the <a href="http://www.clickdimensions.com" target="_blank">ClickDimensions</a> marketing automation solution, which lives inside Dynamics CRM and provides visualizations like the following one:</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/032312_1840_TheImportan12.png" alt="" /></p>
<p>That figure illustrates the form of the <strong>Email Send</strong> entity (or in non-PC terms, the Email Blast), and the fact that all of those events (Delivered, Opens, Clicks, Bounces, etc.) are associated with contact records is what we mean by email tracking and like I said, when I first started out that was what mattered.</p>
<h2>Why Analytics Matter</h2>
<p>But the longer I do marketing automation the more I appreciate the importance of other feature areas. For example, ClickDimensions (CD) provides its customers with some tracking script (analogous to what you might get for Google Analytics), and you can embed it in your web site&#8217;s HTML to track activity such as site visits and page views. The tight integration of the CD solution with CRM means that visits and page views are implemented as custom entities, so after turning on the tracking script you can see things like the following figure, which shows several records of the <strong>Visits</strong> type.</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/032312_1840_TheImportan22.png" alt="" /></p>
<p>The highlighted columns are <strong>Lead</strong> and <strong>Contact</strong>, and begin to illustrate why the analytics features are so important as a complement to email tracking. If all your web site traffic was anonymous, you might as well use Google Analytics. But the ability to associate visits and page views with your customer or potential customer records is a powerful thing, and I&#8217;ll show you a specific example of this next.</p>
<h2>The Importance of Being Non-Anonymous</h2>
<p>A visitor to your web site might view multiple pages. The previous figure showed several <strong>Visit</strong> records, and you can probably guess that ClickDimensions also provides a <strong>Page View</strong> record type. And as with visits, the distinction between anonymous and non-anonymous page views is an important one. I get a dramatic reminder of this every time I send out one of my <strong><em>Dynamics CRM News You Can Use</em></strong> emails. For example, the most recent was the Convergence 2012 edition, which went out on March 22.  The next most recent was the February 2012 email, sent on Feb. 29. (Thank goodness this was a leap year!)</p>
<p>The easiest way for CD to associate a page view with a contact is when the page view is from a link in a sent email. So I suppose it&#8217;s not surprising that non-anonymous page views spike immediately after an email goes out. In my experience, though, the non-obvious thing is the importance of the non-anonymous (contact) views in driving overall page views.</p>
<p>You can see this phenomenon in the following table.</p>
<p>The top chart represents all page views, by day, for the last 30 days. The bottom chart represents, for the same time period, a subset of page views: only the ones from contacts.</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/032312_1840_TheImportan32.png" alt="" width="594" height="310" /></p>
<p>Those two charts are from a custom dashboard I built (which again illustrates the importance of the tight integration of CD with CRM: page views is a custom entity, so you can build charts and dashboards, custom workflows, and use all the standard customization techniques). The most obvious fact is how page views by contacts spike after an email goes out. (I know it&#8217;s hard to read; the last two emails I sent out account for the spikes on 2/29 and 3/22.) The less obvious one is how those contact views impact overall page views. Almost invariably, the days with the most overall page views are the same as the ones with the most contact page views, and that pattern holds true for the time period in the table.</p>
<p>Another slice of the same data is by page, and an example of this is shown in the following table.</p>
<p>The top chart shows the top ten pages on my blog, stack-ranked by number of page views for the last seven days. The data set for this chart includes <strong>all</strong><br />
<strong>page views</strong>. The bottom chart is the same, except for a different subset of the data: <strong>only page views associated with a contact record</strong>.</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/032312_1840_TheImportan42.png" alt="" /></p>
<p>The highlighted bars represent page views for the <a href="http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/" target="_blank">Convergence 2012 Highlights </a>page. That page&#8217;s share of <em>all</em> page views is about 15% for the last week, but its share of pages viewed by <em>contacts</em> is well over half.  This has a couple of possible interpretations: either my contacts are more interested in the Convergence 2012 Highlights session than anonymous visitors, or the email blast (that included about ten links to the Convergence Highlights session landing page) was effective. Or a combination of the two.</p>
<p>Either way, it&#8217;s good to know, and it&#8217;s the sort of thing you really <em>can&#8217;t </em>know without thoroughly integrating your marketing automation and customer relationship management efforts.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/03/23/the-importance-of-analytics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Convergence 2012: It’s a Wrap</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/03/21/convergence-2012-it%e2%80%99s-a-wrap/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/03/21/convergence-2012-it%e2%80%99s-a-wrap/#comments</comments>
		<pubDate>Wed, 21 Mar 2012 19:42:21 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[News You Can Use]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/2012/03/21/convergence-2012-it%e2%80%99s-a-wrap/</guid>
		<description><![CDATA[This year I planned ahead, so even as Convergence 2012 goes down the home stretch, I wrote up my CRM-centric summary of the proceedings before I forgot everything. And just in case you really wanted to be there but couldn&#8217;t, you can attend my Convergence 2012 Highlights webinar on Wednesday April 4 and I&#8217;ll do [...]]]></description>
			<content:encoded><![CDATA[<p>This year I planned ahead, so even as Convergence 2012 goes down the home stretch, I wrote up my CRM-centric summary of the proceedings before I forgot everything. And just in case you really wanted to be there but couldn&#8217;t, you can attend my <a href="http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/">Convergence 2012 Highlights webinar</a> on Wednesday April 4 and I&#8217;ll do my best to summarize it for you in a free (yet exceedingly valuable!) 90-minute session.</p>
<p>Microsoft Dynamics CRM General Manager Dennis Michalis delivered the keynote for the CRM track on Monday. He identified four Big Trends for CRM, and talked about how they&#8217;re reflected in his team&#8217;s development efforts. I can&#8217;t think of a better organizational theme for an article like this one, so with thanks to Dennis, let&#8217;s dive in:</p>
<h1><a name="bigdata"></a>Big Data</h1>
<p>Big data just keep getting bigger, and certainly customer relationship management applications contribute their fair share of the 2.5 quintillion bytes created on a daily basis (according to the <a href="http://en.wikipedia.org/wiki/Big_data">Wikipedia Big Data page</a>). It&#8217;s safe to say that the built-in tools Dynamics CRM has for reporting on, analyzing and visualizing data have not kept up with the application&#8217;s ability to handle large data sets. But that&#8217;s going to change over the next few months, especially as some key technologies from SQL Server 2012 find their way into the feature set.</p>
<p>For Dynamics CRM, the big news in the Big Data category is that the Q2 2012 service update will fully leverage the just-released SQL Server 2012. On the reporting and analytics front, we&#8217;ll be able to use the Power View SSRS add-in. It will be available in the form of Power View templates available for download from the Dynamics CRM Marketplace.</p>
<p>Of course, Big Data need a lot more than reporting and analytics. <a href="http://blogs.msdn.com/b/crm/archive/2012/03/07/microsoft-dynamics-crm-and-sql-server-2012-better-together.aspx" target="_blank">Read this article</a> on how the rest of the improvements in SQL Server 2012 will make Dynamics CRM more scalable, reliable and secure than ever.</p>
<h1><a name="cloud"></a>Cloud</h1>
<p>Dynamics CRM Online, launched in April 2009, blazed the cloud trail for Microsoft&#8217;s business applications. Three years later it&#8217;s got a lot more company, with Office 365, the Azure development platform, and upcoming online ERP options for Dynamics NAV and AX. Microsoft customers&#8217; cloud migrations started with a trickle, have become a steady stream, and could become a torrent if Microsoft executes on its aggressive plans.</p>
<p>Various flavors of Office 365 include the desktop applications, plus SharePoint, Exchange Online and Lync. Azure provides a cloud infrastructure for custom development. And the upcoming cloud options for NAV and AX means that, for a wide variety of organizations, an all-cloud infrastructure (i.e., no infrastructure as far as IT is concerned) will be possible.</p>
<p>While Microsoft is uniquely positioned to make the investment required for plans as aggressive as these, plenty of execution needs to happen as well.</p>
<p>In my view, the biggest current execution gap in Microsoft&#8217;s business cloud offerings is single sign-on, or identity federation. This is the latest example of something that&#8217;s simply too difficult to be feasible for many of the SMB organizations who otherwise would be prime candidates for a cloud infrastructure. For example, the ten-step process outlined on <a href="http://onlinehelp.microsoft.com/en-us/office365-enterprises/hh125004.aspx">the single sign-on roadmap page</a> looks like a recipe for another kind of ten-step program.</p>
<h1><a name="social"></a>Social</h1>
<p>Social CRM has gone from curiosity to mainstream in the two years since I referred to Convergence 2010 as the Social Convergence. And while it&#8217;s still as hard to precisely define it as it is easy for parents to embarrass their kids on Facebook, Microsoft has staked out a leadership role in the social CRM space. The Activity Feeds feature (released in the November 2011 service update) was a start, but Microsoft has aggressive &#8212; and very near term &#8212; plans to build on that initial investment.</p>
<p>In my view, the most important new items on the social CRM front is the following:</p>
<ul>
<li>Activity Feeds will be enhanced in the Q2 service update, with the ability to Like or Unlike posts, and improved post filtering capabilities such as (especially!) making data views available to filter posts (e.g., My Accounts, Opportunities Over $1M closing in the Next Month and so forth)</li>
<li>A LinkedIn integration will be available as a managed solution, downloadable from the marketplace. I assume it will be free, although I did not hear that word used to describe it.</li>
<li>An InsideView mashup will apparently become part of the core Dynamics CRM feature set. I once described InsideView as the <a href="http://www.dynamicscrmtrickbag.com/2009/10/01/insideview-2/">ultimate Dynamics CRM mashup</a> and I use it every day, so I&#8217;m really looking forward to this one.</li>
</ul>
<h1><a name="anywhere"></a>CRM Anywhere</h1>
<p>Multiple browser support comes to Dynamics CRM in the Q2 2012 service update. Aptly referred to as the <a href="http://crmpublish.blob.core.windows.net/docs/ReleasePreviewGuide.pdf">CRM Anywhere release</a>, we (finally) will get support for Safari, Firefox and Chrome. And maybe even more important is the exciting news that native mobile clients will be available for iOS, Android and Windows Mobile platforms.</p>
<p>In addition to all flavors of IE, the supported browsers will be:</p>
<ul>
<li>Safari running on Mac or iPad</li>
<li>Firefox running on PC or Mac</li>
<li>Chrome running on PC</li>
</ul>
<p>The update will also include an enhanced mobility experience called Microsoft Dynamics CRM Mobile. This is a new cloud-based, cross-platform native mobile client for Windows Phone 7.5, iPad, iPhone, Android, and Blackberry devices. This is a native client app &#8212; not a browser solution – so the mobile CRM experience won&#8217;t require an Internet connection, and will leverage the cool features of each platform.</p>
<p>CRM Online customers will be able to purchase mobile client apps directly from Microsoft in the Dynamics CRM Marketplace for $30/user per month; on-premise customers will need to continue to purchase a rich mobile experience from third party vendors such as CWR Mobility, the company Microsoft partnered with on the Microsoft Dynamics CRM Mobile application.</p>
<p>For a comprehensive statement of the new features coming this spring, visit the <a href="http://crmpublish.blob.core.windows.net/docs/ReleasePreviewGuide.pdf">Q2 2012 service update/CRM Anywhere release page</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/03/21/convergence-2012-it%e2%80%99s-a-wrap/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Marketing Automation Goal Management, Part 2</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/03/16/marketing-automation-goal-management-part-2/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/03/16/marketing-automation-goal-management-part-2/#comments</comments>
		<pubDate>Sat, 17 Mar 2012 00:03:23 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[CRM Add-Ons]]></category>
		<category><![CDATA[News You Can Use]]></category>
		<category><![CDATA[Tips, Tricks, Q&A]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/2012/03/16/marketing-automation-goal-management-part-2/</guid>
		<description><![CDATA[March 16, 2012 - Part 1 of this series of this series showed how to use the goal management features of CRM 2011 to create click-through goals for a ClickDimensions email marketing campaign. Part 2 goes a step further and shows how to create conversion goals for email marketing. ]]></description>
			<content:encoded><![CDATA[<h1>Introduction<br />
</h1>
<p>In <a href="http://www.dynamicscrmtrickbag.com/2012/03/05/marketing-automation-goal-management-part-1/">part 1</a> of this series I explained how you can apply the goal management features of Dynamics CRM 2011 to marketing automation scenarios. I use the ClickDimensions add-on solution, and the goals I discussed in the first article were for email marketing clicks; specifically, how to build and track progress against goals for clicks from my monthly <em>Dynamics CRM News You Can Use</em> emails. The end result was a chart like this one:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu1.png" alt=""/>
	</p>
<p>Clicks are nice, and as I said in the first article they are a necessary starting point. But for most organizations they aren&#8217;t enough, since they&#8217;re usually just a stage in a larger process. For example, suppose you visualize an email marketing pipeline with a funnel chart like the following one:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu2.png" alt=""/>
	</p>
<p>The great thing about an add-on like ClickDimensions is that all of these actions are tracked in CRM, and they&#8217;re all associated with your customer records. Last time I showed how to track progress against click goals. In this article we move on to conversions.
</p>
<h1>Background: ClickDimensions Forms<br />
</h1>
<p>After an email recipient clicks a link, what do you want them to do next? Well, if they click through to a form you generally want them to provide some information and click the <em>submit</em> button. You can think of <em>converting</em> a click into a more committed activity: maybe it&#8217;s a purchase, a request for a discount coupon or for a white paper. In the scenario I&#8217;ll describe next, it&#8217;s a registration request for an upcoming webinar I&#8217;m delivering on April 4, <a href="http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/">Convergence 2012 Highlights</a>.
</p>
<h2>Building a Form<br />
</h2>
<p>Like the rest of the components in ClickDimensions (CD) marketing automation add-on the form designer is simple to use and gets the job done. In CD terminology, forms are a type of <strong>Web Content</strong>, which is a custom entity contained in the CD solution. (The other types of web content are surveys, landing pages, and subscriptions.) Here&#8217;s the form designer, opened from the context of the Web Content form for the Convergence 2012 Highlights form I wanted to create:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu3.png" alt=""/>
	</p>
<p>Designing a form is a simple drag and drop process. Forms are designed to capture information to the lead or contact entities in CRM, and you can map form fields to system or custom CRM fields, as you can see from the custom &#8220;Coupon Request&#8221; field in the previous figure. In addition to data fields, you can drop other components such as HTML or a CAPTCHA widget directly onto a form. You can set field and overall form properties, preview the current version of the form, optionally create an auto-responder using a CD email template, and a few other things.
</p>
<h2>Deploying a Form<br />
</h2>
<p>When your form&#8217;s ready, you can click the <strong>Embed</strong> button to copy the Iframe code to the clipboard, then paste it into the HTML of a web page. Here&#8217;s an example of a deployed form (the Convergence 2012 Highlights form I mentioned previously):
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu4.png" alt=""/>
	</p>
<h2>Posted Forms<br />
</h2>
<p>Once a form is deployed you start to really appreciate the advantages of having forms integrated with a marketing automation solution. The following figure is pretty much the money shot:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu5.png" alt=""/>
	</p>
<p>The two highlighted columns (I made them skinny to obscure the names) are <strong>Contact</strong> and <strong>Lead</strong>. The way CD forms work, a search is performed when a form is submitted (when a <strong>Posted Form</strong> record is created, in CD lingo). If a contact record is located, the posted form is associated with that contact. If not, a new lead record is created and associated with the posted form. And if the lead record is then qualified to a contact, the posted form is associated with both!
</p>
<h1>Goals<br />
</h1>
<p>Now that we know how to build and deploy forms, and how the posted forms come into CRM, we&#8217;re ready to set and track progress against goals. Establishing goal targets for clicks (the topic of the previous article) can be difficult, especially when you&#8217;re just starting out. It gets easier over time, as you get more experience and gather more data, and especially if you send marketing emails on a regular basis.  But in some scenarios it&#8217;s easy to set a goal target. For example, for my upcoming <a href="http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/">Convergence 2012 Highlights</a> webinar, I&#8217;d like about 50 attendees. Since there&#8217;s always some drop-off for a free online session, I&#8217;ll go with a target of 60 and a stretch target of 70.
</p>
<p>Remember, the form I&#8217;ve referred to a couple of times allows a visitor to request registration for the webinar. When the form is submitted the request comes into CRM as a posted form record, so the goal I create needs to be for <strong>posted form</strong> records.
</p>
<h2>Building the Goal Metric<br />
</h2>
<p>And if you know a little about goal management, you know that means you need a goal metric for the posted form record type. Here&#8217;s what mine looks like:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu6.png" alt=""/>
	</p>
<p>The metric type is count, I selected the <strong>Track Stretch Target</strong> option, and I defined a single rollup field for the Posted Form record type. Notice that there&#8217;s an <em>actual</em> rollup field but no <em>in-progress</em>. That&#8217;s because, like clicks, form submits are discrete events: they either happen or they don&#8217;t, so there&#8217;s no in-progress state. Here&#8217;s what the rollup field looks like for a goal metric like this one:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu7.png" alt=""/>
	</p>
<h2>Building the Goal and the Rollup Query<br />
</h2>
<p>With the goal metric in place, I can create the goal. The following figure shows the <strong>General</strong>, <strong>Time Period</strong> and <strong>Targets</strong> sections of my goal form:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu8.png" alt=""/>
	</p>
<p>Here are the things to notice from the previous figure:
</p>
<ul>
<li>It&#8217;s based on the Form Submits metric reviewed above.
</li>
<li>The custom time period ends the day of the seminar. Unlike the previously discussed goal for clicks, a goal for webinar registrations has a clearly defined end date!
</li>
<li>The Stretch Target field shows up because I selected that option on the goal metric.
</li>
</ul>
<p>The following figure shows the <strong>Actuals</strong> and <strong>Goal Criteria</strong> sections from the bottom of the form:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu9.png" alt=""/>
	</p>
<p>If you read the previous article, you probably guessed that this goal would require a rollup query. In this case, the rollup query is required to specify <em>which</em> posted form records should roll up to the goal. It looks like this:
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu10.png" alt=""/>
	</p>
<p>It&#8217;s defined for the posted form entity type, and the query specifies that only posted forms related to the <a href="http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/">Convergence 2012 Highlights</a> form should roll up. (Remember: the form entity is the parent of the posted form, so we can use that relationship to build the query.)
</p>
<h1>Charts and Dashboards<br />
</h1>
<p>As with other goal management charts and dashboards, the ones I use for this scenario are quite specific. The following figure shows a dashboard I find useful; all it does is add a single Goal Progress chart for form submits (webinar registration requests, that is) to the one I showed at the beginning of this article.
</p>
<p><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031712_0002_MarketingAu11.png" alt=""/>
	</p>
<h1>Summary and Homework Assignment<br />
</h1>
<p>I&#8217;ll close with a couple of related points. First, even a cursory glance at the goal progress chart for webinar registrations indicates I&#8217;m not where I should be. Since this goal has such a short time period (from March 1 to the April 4 webinar date, remember) the <strong>Today&#8217;s Target</strong> metric is actually interesting. And with 13 requests (22% of the 60 target value) my actual is less than the <strong>Today&#8217;s Target</strong> value of 27. But I&#8217;m not overly concerned yet: Convergence 2012 is next week, and that&#8217;s the perfect time to send my special March 2012 Convergence edition of Dynamics CRM News You Can Use, which will prominently feature links to the <a href="http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/">Convergence 2012 Highlights page</a>, and should drive plenty of requests.
</p>
<p>This brings up my second and final closing point. You may wonder what any of this has to do with email marketing, the marketing pipeline funnel and all that. All I&#8217;ve done so far is built and deployed a form, created a goal for form submits and talked about tracking goal progress. Where does the marketing come in? That happens next week. So far the registration requests have all been from what you might think of as organic traffic: I published the page on Tuesday and had 13 registration requests on Wednesday and Thursday. So how does the goal measure marketing efforts? Well, my blog is a marketing vehicle, so it does measure that, but it doesn&#8217;t really measure <em>email marketing</em> efforts.
</p>
<p>That&#8217;s the homework assignment: the goal I described here is an overall webinar registration goal, but if I want one to focus in specifically on email marketing&#8217;s contribution, I need to narrow it down a bit. Let me know if you&#8217;ve got the perfect solution to this. I&#8217;ve got at least one in mind, and there&#8217;s a clue in the screenshot in the <strong>Posted Forms</strong> section above.
</p>
<p>In the meantime, if you&#8217;d like to participate in my ongoing experiments in Dynamics CRM-centric marketing automation, <a href="http://www.dynamicscrmtrickbag.com/subscribe/">fill out this form</a> to become a subscriber.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/03/16/marketing-automation-goal-management-part-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Convergence 2012 Highlights</title>
		<link>http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/</link>
		<comments>http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/#comments</comments>
		<pubDate>Tue, 13 Mar 2012 21:00:27 +0000</pubDate>
		<dc:creator>Richard Knudson</dc:creator>
				<category><![CDATA[News You Can Use]]></category>

		<guid isPermaLink="false">http://www.dynamicscrmtrickbag.com/?p=4572</guid>
		<description><![CDATA[March 13, 2012 -- I recommend you attend Convergence 2012 in person, but just in case you can't get to Houston next week, you can still attend my Convergence 2012 Highlights webinar on April 4. ]]></description>
			<content:encoded><![CDATA[<div>
<table style="border-collapse:collapse" border="0">
<colgroup>
<col style="width: 501px;"></col>
<col style="width: 297px;"></col>
</colgroup>
<tbody>
<tr>
<td style="padding-left: 9px; padding-right: 9px">
<p style="text-align: center"><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031312_2055_Convergence12.png" alt="" /></p>
</td>
<td style="padding-left: 9px; padding-right: 9px" rowspan="2">
<p style="text-align: center;"><img class="aligncenter" src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031312_2055_Convergence22.png" alt="" width="140" height="192" /></p>
<p style="text-align: center"><img style="border-style: initial; border-color: initial;" src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031312_2055_Convergence42.png" alt="" /><img src="http://www.dynamicscrmtrickbag.com/wp-content/uploads/2012/03/031312_2055_Convergence32.png" alt="" /></p>
<p style="text-align: center">
</td>
</tr>
<tr>
<td style="padding-left: 9px; padding-right: 9px">Just in case you wondered what Colin Powell, Daughtry, Rodney and I have in common, it&#8217;s that we&#8217;re all going to be in Houston for Microsoft Convergence 2012 conference next week! It&#8217;s going to be a great show, with a stimulating mix of customers and partners, a big tradeshow, <a href="http://www.microsoft.com/dynamics/convergence/houston12/Sessions.aspx">tons of sessions</a> on all of the Dynamics products plus a lot more.</p>
<p>I hope you&#8217;re joining us, but if you aren&#8217;t, don&#8217;t worry. I&#8217;ll catch you up on the highlights, the futures, and all the most important new stuff in my special post-event <em>Convergence 2012 Highlights</em> webinar. In this fast-paced 90-minute session I&#8217;ll present my Dynamics CRM-centric take on the proceedings, so you can start planning for the most important upcoming new features.</p>
<p>NDAs are not required, since everything I cover will be in the <em>must-disclose</em> category, but you do need to register. And best of all, registration&#8217;s free, apart from the few minutes it takes to provide your information and figure out the captcha control at the bottom of the form.</p>
<p>Post-Event:</p>
<p>Visit the <a href="http://www.dynamicscrmtrickbag.com/trick-bag-video/" target="_self">Trick Bag Video page </a>for the session recordings.</td>
</tr>
</tbody>
</table>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamicscrmtrickbag.com/2012/03/13/convergence-2012-highlights/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

