<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:yt="http://gdata.youtube.com/schemas/2007" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
   <channel>
      <title>C5 Insight: Dynamics CRM</title>
      <description>All posts related to Dynamics CRM.</description>
      <link>http://pipes.yahoo.com/pipes/pipe.info?_id=f921e48c875150a7f5bd10198200e19e</link>
      <atom:link rel="next" href="http://pipes.yahoo.com/pipes/pipe.run?_id=f921e48c875150a7f5bd10198200e19e&amp;_render=rss&amp;page=2" />
      <pubDate>Sat, 26 May 2012 18:09:45 +0000</pubDate>
      <generator>http://pipes.yahoo.com/pipes/</generator>
      <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/C5DynamicsCRM" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="c5dynamicscrm" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">C5DynamicsCRM</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
         <title>Microsoft Collaboration and Virtualization: A Real World Deminar</title>
         <link>http://feedproxy.google.com/~r/successacceleratorsdynamicscrm/~3/3Jdtj7_KkUI/Default.aspx</link>
         <description>Who:  &lt;a rel="nofollow" target="_blank" href='http://www.C5Insight.com'&gt;C5 Insight&lt;/a&gt;&lt;br/&gt;What: Live Event&lt;br/&gt;When: Wednesday, May 30, 2012 10:00 AM - 1:00 PM EST&lt;br/&gt;How Much: $0.00&lt;br/&gt;Event Type: Live Event&lt;br/&gt;&lt;a rel="nofollow" target="_blank" href='http://www.successaccelerators.com/EventListPage/EventRegistration/tabid/1140/Default.aspx?id=442b9116-439a-e111-a8cb-1cc1dee89a7f'&gt;Register&lt;/a&gt;&lt;br/&gt;&lt;img src="http://feeds.feedburner.com/~r/successacceleratorsdynamicscrm/~4/3Jdtj7_KkUI" height="1" width="1"/&gt;</description>
         <guid isPermaLink="false">442b9116-439a-e111-a8cb-1cc1dee89a7f</guid>
         <pubDate>Wed, 30 May 2012 00:00:00 +0000</pubDate>
      </item>
      <item>
         <title>Quick Tip: Finding the Activity Feed Solution</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/277/Download-The-CRM-2011-Activity-Feed-Solution.aspx</link>
         <description>&lt;p&gt;It has come to our attention that the Activity Feed solution is temporarily unavailable for download from the Microsoft Marketplace (the link for the download had been: &lt;a rel="nofollow" target="_blank" href="http://pinpoint.microsoft.com/en-us/applications/microsoft-dynamics-crm-activity-feeds-12884926310"&gt;http://pinpoint.microsoft.com/en-us/applications/microsoft-dynamics-crm-activity-feeds-12884926310&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Fortunately, we had downloaded a recent copy of this for a client deployment.  If you need a copy of the file, please contact us (&lt;a rel="nofollow" target="_blank" href="http://www.c5insight.com/contact.aspx"&gt;click here&lt;/a&gt;) and request the file and we will email it to you.  To install it:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Be sure you are running UR6 or later (we have tested it on UR8)&lt;/li&gt;
    &lt;li&gt;Import the .cab file into CRM as a solution&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;It is provided without warranty, but we have installed it in a test environment and it works without an issue.  If you become aware of the download becoming available again, please reply to this post so we can update it accordingly. &lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/277/Download-The-CRM-2011-Activity-Feed-Solution.aspx</guid>
         <pubDate>Wed, 16 May 2012 20:36:00 +0000</pubDate>
      </item>
      <item>
         <title>Application Data Integration – Part Three, Timing and the Rules</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/258/Application-Data-Integration-Part-Three-Timing-and-the-Rules.aspx</link>
         <description>&lt;hr /&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/font&gt;his is my third blog in a series concerning data integration.  In my first two blog entries we overviewed some of the data integration hurdles as well as some of the common methods used to discover the net-change data that will need to be translated.  Here in my third blog I’ll discuss some of the benefits of not integrating in real-time, but creating a batch job to perform the integration.  We’ll also look at the Business Rules that may need to be applied within the integration process.&lt;/p&gt;
&lt;p&gt;&lt;hr /&gt;
&lt;font size="4"&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/font&gt;hey say ‘timing is everything’.  I don’t necessarily agree that it’s &lt;em&gt;everything&lt;/em&gt;, but it is an important ingredient in the design of your integration.  It’s always my first reaction to go ‘real-time’ with an integration project.  Scoping and requirements gathering will then bring me to a place where a part of the integration may not work designed to run as real-time.  Every business is built on processes that serve them well, or at least served them well back in the day.  There are times when transaction volume will preclude using real-time methods for translation.  Running the process, because of the volume, may have such an impact on the system, that user can not tolerate the sluggishness of the system during business hours.  Perhaps there is a business process that does not make data available until after business hours.  There can be any number of business process scenarios that would dictate utilizing a batch integration process rather than a real-time integration process.&lt;/p&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/font&gt;usiness processes are not the only consideration when designing your integration.  The environment, and specifically the hardware that the integrated systems reside on, can play a key role in determining the integration process to use.  For example, if your integration design requires polling a record set for the net-change data, that polling can effect performance.  But to a greater extent, the record set that is returned will typically populate any RAM that is available, and if there is not enough RAM to hold the entire return record set, then it will occupy static drive space.  Depending on how large the net-change record set is, that’s been returned, stealing all available RAM can seriously impact performance of the system.  Conversely, you may have designed a multi-threaded integration process, such as utilizing a message queue as a pickup point for the extracted net- change data.  Where running a multi-threaded process, you are able to translation a larger volume of data in a shorter period of time, but, that process will be very CPU intensive.&lt;img align="right" width="175" height="276" alt="" src="http://blogs.c5insight.com/Portals/0/BlogImages/Other/Seen My Data.png"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;S&lt;/strong&gt;&lt;/font&gt;o, when developing your integration design, keep in mind that batch processing is memory intensive and multi-threaded processes are CPU intensive.  Depending on the environment you’re working in, you may have the inclination to build one type of integration process, but the impact of that process would be too costly in terms of system performance and end-user satisfaction.&lt;/p&gt;
&lt;p&gt;&lt;hr /&gt;
&lt;font size="4"&gt;&lt;strong&gt;O&lt;/strong&gt;&lt;/font&gt;k, so you have one part of your integration setup, great.  You’re integrating customers from your CRM system to your ERP system, fantastic.  You turn on the integration, and not too long afterward, folks from the finance group are complaining that there are customers in ERP that don’t belong in the system.  “What’d?, you say.  I thought you wanted customers integrated in both system?”.  The response from finance is that some of these aren’t customers, they are only prospects.  Ah, so not all customers are the same in the CRM system.&lt;/p&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/font&gt;his is a very typical scenario.  The CRM system breaks down ‘customers’ into different customer types.  Only ‘customers’ that have actually bought something are to be integrated into the ERP system.  So, you need to be able to filter records in order to meet the requirements of this business rule .  That filtering can take place in two different places, &lt;strong&gt;a)&lt;/strong&gt; at the time of discovery of the net-change data or, &lt;strong&gt;b)&lt;/strong&gt; during the translation process of the net-change data.  If you have used a query to discover the net-change data, you may only need to add something to the WHERE clause of the query, to ensure that only records that meet the business rule criteria are discovered.  If the application has it’s own net-change method, but cannot be modified to filter the records, you will need to build the filtering into the translation process rather than in the discovery process.  There can, however, be some advantages to filtering at the integration process level.  Let’s say that you only want purchasing customers being integrated into you ERP system, but you would like to see an aggregated view of all new customers that have been added to the either system.  When you filter out the customers at the translation point rather than the discovery point, you have the records discovered in the net-change process, so, the entire record set can be used to create customer, by type, reporting.&lt;/p&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/font&gt;nother. more complex example would be; sales orders being placed in the ERP system and then translated to one of several warehouse systems for processing.  In this case, you not only have to filter the record set, but you also have to determine what translation processes will be used to ensure the sales order record is consumed by the correct warehouse system.  As you can see, business rules will have a huge impact on how you might design your integration process.  The entire solution may incorporate many different net-change discovery methods as well as many different data translation methods.  Don’t get caught building a useless solution, wasting time and money.  Dig deep into the requirements in order to develop the best integration processes for the given scenario your are working under.&lt;/p&gt;
&lt;p&gt;&lt;hr /&gt;
&lt;font size="4"&gt;&lt;strong&gt;&lt;img align="left" style="width:106px;height:97px;" alt="" src="http://blogs.c5insight.com/Portals/0/BlogImages/Other/Integration Cycle.png"/&gt;A&lt;/strong&gt;&lt;/font&gt;s promised, this series is intended to be somewhat high level, but, I hope through some of the topics covered you have become a little more familiar with Application Data Integration.  It can be tricky stuff to get your hear around; there are a lot of issues to consider.  Not digging deep enough for the requirements can be very costly, not only monetarily, but also with adoption by your end-users if your integration is tied to a new business system implementation.  Knowledge is power, so I hope I’ve charged your batteries a little.&lt;/p&gt;
&lt;hr /&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/258/Application-Data-Integration-Part-Three-Timing-and-the-Rules.aspx</guid>
         <pubDate>Tue, 03 Apr 2012 18:00:00 +0000</pubDate>
      </item>
      <item>
         <title>Application Data Integration – Part Two, Net-Change</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/256/Application-Data-Integration-Part-Two-Net-Change.aspx</link>
         <description>&lt;hr /&gt;
&lt;p&gt;&lt;b&gt;&lt;font size="4"&gt;&lt;img hspace="10" alt="" align="left" style="width:106px;height:106px;" src="http://blogs.c5insight.com/Portals/0/BlogImages/Other/Integration Creep.png"/&gt;I&lt;/font&gt;&lt;/b&gt;n my previous blog focusing on the hurdles of real-time, two-way data integration, I highlighted the hurdle of how to discover the data you need translated. In most cases, discovering the net-change data is all you want to translate on a real-time basis. Remember, a two-way integration means net-change data going in two directions or more (depending on the number of systems you’re integrating) at a rate determined by how many end-users there are on each of the systems being integrated. Business systems with a significant amount of end-users can create substantial volumes of net-change data.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;b&gt;&lt;font size="4"&gt;I&lt;/font&gt;&lt;/b&gt;n order to manage the volume of data flowing between systems, you must choose a net-change model to discover just the data that needs to translate. There are traditionally four basic models to choose from, one of which will discover the net-change data. They are not all equal though, so choosing will depend somewhat on the system(s) you’re working with and somewhat depend on the data model of the system(s) with which you’re working.&lt;/p&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/font&gt;he four methods are as follows, in best practice order:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;&lt;strong&gt;Application Method&lt;/strong&gt; – this method is the most reliable and system efficient.  It relies on the system, or application, to find the net-change data and produce it in a format that is easily translated and consumed by other systems.  Some of the advantages of the Application Method are; &lt;img alt="Application Net-Change" align="right" width="200" height="100" src="http://blogs.c5insight.comhttp://blogs.c5insight.comhttp://blogs.c5insight.com/Portals/0/BlogImages/Other/Net-Change 1.png"/&gt; &lt;br /&gt;
    &lt;strong&gt;&lt;font color="#000000"&gt;a)&lt;/font&gt;&lt;/strong&gt;  It typically can support deletes.  In other words, records deleted by end-users can be traced to the other integrated systems, and if the business rules permit, will delete those records as well. &lt;br /&gt;
    &lt;strong&gt;&lt;font color="#000000"&gt;b)&lt;/font&gt;&lt;/strong&gt;  It is more likely to produce the net-change data in the order in which it was changed.  This could become important if the net-change data is being produced in logical but separate extracts.  One example would be if the system that is producing  the net-change data, splits a sales order into a header file and a detail file.  The consuming system will likely have referential integrity rules that would not allow details to be consumed before the header. &lt;br /&gt;
    &lt;strong&gt;&lt;font color="#000000"&gt;c)&lt;/font&gt;&lt;/strong&gt;  It has, typically, very little impact on the producing system, providing an un-noticeable effect to the end-users. &lt;br /&gt;
    &lt;strong&gt;&lt;font color="#000000"&gt;d)&lt;/font&gt;&lt;/strong&gt;  Reliability is a key factor.  If the application is running, then net-change is being discovered and made consumable for other systems.  &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Tracker-Table&lt;/strong&gt; &lt;strong&gt;Method&lt;/strong&gt; – Also known as the&lt;em&gt; shadow table method&lt;/em&gt;, the tracker-table method is somewhat invasive, but is very useful in cases where the data model does not always supply a last modified date/time stamp on each record.  The tracker-table method does just what it says, it tracks the records that have had a change made to them.  It is invasive because it requires creating objects in the database of the system.  The idea being, create a table with at least three columns (ObjectName, RecordId,ChangeType).  This is the tracking table.  Then, place triggers on the tables which you are interested in seeing the net-change.  The triggers are designed to modify the tracker-table in the following ways; &lt;img hspace="2" alt="" align="right" width="200" height="100" src="http://blogs.c5insight.comhttp://blogs.c5insight.comhttp://blogs.c5insight.com/Portals/0/BlogImages/Other/Net-Change 2.png"/&gt; &lt;br /&gt;
    &lt;strong&gt;&lt;font color="#000000"&gt;a)&lt;/font&gt;&lt;/strong&gt;  If there is an insert on the table (a new record created),  the trigger will add a record to the tracker-table with three values; &lt;strong&gt;1&lt;/strong&gt; - the table name where the changes came from, &lt;strong&gt;2&lt;/strong&gt; – the recordId that was created when the record was committed, &lt;strong&gt;3&lt;/strong&gt; – an identifier of the type of action that was performed (i.e. I = insert, U = update, D = deleted). &lt;br /&gt;
    &lt;strong&gt;&lt;font color="#000000"&gt;b)&lt;/font&gt;&lt;/strong&gt;  If there is an update made on the table, the trigger will search the tracker-table to find  the ObjectName/RecordId that corresponds to the record that was updated.  When the match is made, the trigger  then adds a ‘U’ to the ChangeType column indicating that the record corresponding to the recordid in the tracker-table, has been updated.. &lt;br /&gt;
    &lt;br /&gt;
    Now that the net-change has been identified in the tracker-table, a mechanism needs to be developed (or a third-party tool employed i.e. Scribe or Informatica), to poll the tracker table for records with an ‘I’, ‘U’ or ‘D’, then join the recordid to the base table and retrieve the record that was changed.  Once retrieved, set the ‘ChangeType’ in the tracker table back to NULL.  Then simply choose the frequency that you want to poll the tracker–table for ‘I’, ‘U’ or ‘D’.  &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Last Update Date Method&lt;/strong&gt; – This method is non-invasive and can be as reliable as the Application and Tracker-Table methods. With this method you simply create a mechanism (or a third-party tool employed i.e. Scribe or Informatica) to poll the data-object for records that are new, or have an last&lt;img hspace="2" alt="" vspace="5" align="right" width="200" height="100" src="http://blogs.c5insight.comhttp://blogs.c5insight.comhttp://blogs.c5insight.com/Portals/0/BlogImages/Other/Net-Change 3.png"/&gt; update date/time stamp that is greater than the last time you polled the data-object.  There are a few other caveats to the WHERE clause but, essentially that’s all there is to it.  Here’s the kicker.  The reason that this method is 3rd in the best-practice ranking is because it is dependent on the clocks being used in the comparison, being synchronized.  If for some odd and perplexing reason one of your applications is getting it’s date/time from the desktop clock (or some other unreliable source), you would most likely end up with records falling through the cracks.  You must make sure the clocks you are using to compared and stamp are reliable. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Comparison Method&lt;/strong&gt; – If you must discover your net-change records, and none of the first three methods can be applied, this may be your last option.  The Comparison Method (&lt;em&gt;or snapshot method&lt;/em&gt;) consists of making a copy of the recordset in which the net-change data resides.  Then at some point after that first copy, take another copy of the object and compare each row/column for the differences.  This is an extremely laborious method, but at times, desperate men must do desperate things.&lt;/li&gt;
&lt;/ol&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;L&lt;/strong&gt;&lt;/font&gt;astly, what to do with concurrent updates to a record.  End-user #1  in sales, opens John Smith’s contact record to add a new cell number.  At the same moment End-user #2 in finance, opens John Smith’s record to update the billing address.  With applications like Dynamics CRM, Salesforce and SharePoint, the application logic will manage the concurrent changes and will make sure both are recognized and able to be discovered as net-change, and translated.  Other than that, it’s the ‘last out wins’ method.&lt;/p&gt;
&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/font&gt;n my next post in this series, we’ll take a look at working the business process rules and application rules, into the integration process, and, at what frequency should the integration run.&lt;/p&gt;
&lt;hr /&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/256/Application-Data-Integration-Part-Two-Net-Change.aspx</guid>
         <pubDate>Wed, 28 Mar 2012 22:30:00 +0000</pubDate>
      </item>
      <item>
         <title>Convergence Report 2: The Future of Dynamics CRM from #CONV12</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/260/Convergence-Report-2-The-Future-of-Dynamics-CRM-from-CONV12.aspx</link>
         <description>&lt;p&gt;I am back home from Convergence and still trying to digest the wealth of information that was shared!&lt;/p&gt;
&lt;p&gt;Of course one of the most anticipated parts of the Microsoft Convergence 2012 event in Houston was learning about the future of Dynamics CRM … what new features and functions does Microsoft plan to add? I must say that Microsoft did a better job than normal in providing a vision of what the future may hold. The very short summary is that over the course of the next 12 months, you will see Dynamics CRM become more: anytime, any device, any business – than ever before. In this article we’ll take a deeper look into exactly what that means and how to expect this to translate into changes in the platform over the next several releases.&lt;/p&gt;
&lt;h2&gt;CRM 2011 Q2 2012 SERVICE UPDATE (Dynamics CRM 2012?)&lt;/h2&gt;
&lt;p&gt;Microsoft has been talking about the next release of CRM for quite some time – it bears the sexy name “Microsoft Dynamics CRM 2011 Q2 2012 Service Update.”  It’s hard to hide the excitement as a name like that rolls of the tongue!  Prior to Convergence, Microsoft already hosted a number of events to discuss this release – expected to be available by July 1, 2012.  The highlights are below for those of you who have not yet heard the details.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dynamics CRM 2011 on Any Browser:&lt;/strong&gt; Microsoft is promising to deliver CRM via the most popular browsers as a part of this release including: Internet Explorer (of course), Firefox, Chrome and Safari.  So what’s all the fuss about?  In many companies there are users that are using Apple computers.  These have often been individuals in the marketing department who deliver important skill sets that require access to CRM, or  business executives who won’t give up their Macbooks.  In both cases the only option was to either have multiple different computers, or install a PC emulator on the Mac.  Neither situation was ideal.  Now these users can access CRM directly within their Mac.  This will also enable users of tablets (such as iPads) with compatible browsers to access CRM.  Outlook integration, however, is still available only in the PC/Windows environment.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Convergence-Report-2-The-Future-of-Dynam_6AFA/3-25-2012%203-02-27%20PM_2.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="CRM 2011 CWR Mobility" border="0" alt="CRM 2011 on mobile devices" align="left" width="232" height="141" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Convergence-Report-2-The-Future-of-Dynam_6AFA/3-25-2012%203-02-27%20PM_thumb.png"/&gt;&lt;/a&gt;Dynamics CRM 2011 on Any Device:&lt;/strong&gt; With this new release Microsoft is rolling out expanded mobile capabilities – including a version of CRM for iPad, iPhone, Android and Windows Phone devices.  With the iPad invading corporations everywhere, this is a welcome move on Microsoft’s part.  These new mobile versions of CRM had already been developed by CWR Mobility, an organization that partners with Microsoft.  CWR already had a mobile version of CRM for all of the above devices, and Microsoft is simply making this mobile version more readily available to businesses using CRM 2011 than before.  This is very good news because it means that this is not a “version 1.0” release of the mobile software – Microsoft is leveraging software that has been available for many years.  There is an additional fee for this capability (about $30.00 per user per month – each user can have up to 3 devices).  Feel free to &lt;a rel="nofollow" title="Get CRM 2011 Mobile" target="_blank" href="http://www.c5insight.com/contact.aspx"&gt;contact us&lt;/a&gt; if you’d like to have Mobile CRM setup to work for your organization.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;More Social Capabilities:&lt;/strong&gt; In this upcoming release, Microsoft is taking the social capabilities within CRM 2011 to the next level.  Activity Feeds will be expanded to include filters based on: entity (for example, you can filter all updates to show only Contacts, Accounts, Opportunities, etc), based on posts about you (it is, after all, all about you) or about your direct reports (who have gotten the idea into their head that it’s all about them).  If you haven’t already started to use Activity Feeds, then you should consider getting started right away.  Learn more: &lt;a rel="nofollow" title="Social Micro Blogs for Dynamics CRM 2011" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/244/CRM-2011-Activity-Feeds-Gaining-User-Adoption.aspx"&gt;click here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Faster CRM 2011 Online:&lt;/strong&gt; Dynamics CRM 2011 presents very rich forms to the user.  But those rich forms come at a price – all of the logic and design elements for those forms have to be downloaded from over the web.  In some cases this can result in making the application slower than what users would prefer.  Microsoft has been addressing this by tuning CRM 2011 Online to improve performance.  With the Q2 2012 update they will also be introducing Rapid View Forms.  These are read-only version of forms that can be rendered much more quickly than standard editable forms.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But Wait … There’s More:&lt;/strong&gt; Want more details about all the goodies in the Q2 2012 Service Update?  It’s available in the attached PDF (click the Adobe Acrobat logo to start the download).&lt;/p&gt;
&lt;p&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" title="CRM_2011_Q2_2012_Service_Update_Mobile_Mobility_Details_Acrobat" border="0" alt="CRM_2011_Q2_2012_Service_Update_Mobile_Mobility_Details_Acrobat" align="left" width="20" height="20" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Convergence-Report-2-The-Future-of-Dynam_6AFA/CRM_2011_Q2_2012_Service_Update_Mobile_Mobility_Details_Acrobat_thumb.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" title="CRM 2011 Mobile and Multi-Browser Support" target="_blank" href="http://blogs.c5insight.com/LinkClick.aspx?fileticket=5Dp5gxR85HE%3d&amp;tabid=40"&gt;CRM_2011_Q2_Service_Update_Details.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h2&gt;CRM 2011 Q4 SERVICE UPDATE&lt;/h2&gt;
&lt;p&gt;Even more exciting was the news about the following update, which will come a bit later this year.  Although there is nothing as formal about this release as there is for the Q2 release, I sat in on a number of sessions where the vision for this update was discussed (and sometimes demonstrated).  Please take what is provided below with a large grain of salt – some of these items are me “reading between the lines” and others may slip to future releases.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Convergence-Report-2-The-Future-of-Dynam_6AFA/image_2.png"&gt;&lt;strong&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 0px 0px 10px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top:0px;border-right:0px;padding-top:0px;" title="Dynamics CRM 2011 Running on a Windows 8 Slate Tablet" border="0" alt="Windows 8 and Dynamics CRM" align="right" width="244" height="167" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Convergence-Report-2-The-Future-of-Dynam_6AFA/image_thumb.png"/&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;Windows 8 + Dynamics CRM:&lt;/strong&gt; I was very surprised to see how much work it looks like Microsoft is putting in to rewriting the CRM user interface to work with Windows 8.  I’ve included one of about 20 pictures I was able to snap in a session titled, “CRM Goes Metro”.  Metro is the new user interface design that Microsoft is rolling out across Windows Phone, Xbox and Windows 8.  It looks much better than I expected.  For those of you who use the Windows Phone, you’re already familiar with the buttons that function as “smart tiles” – giving you information (such as the weather) without even having to open the application.  CRM may have smart tiles that tell you the number of leads you have, past due opportunities, or high priority cases. What was most impressive to me was the way that CRM is being laid out to be much less data-entry intensive for users, while walking them through processes (in the same way, for example, that LinkedIN walks you through making sure that your profile is complete).  If Microsoft can deliver something as nice as what I saw in these sessions, then it will change the game.&lt;/p&gt;
&lt;p&gt;A quick note to developers who may want to keep up with Windows 8 and CRM, Microsoft suggests the following tools and knowledge sources:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Visit &lt;a rel="nofollow" title="How to develop for Windows 8 Metro and CRM 2011" target="_blank" href="http://www.buildwindows.com"&gt;www.buildwindows.com&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Windows Runtime&lt;/li&gt;
    &lt;li&gt;HTML/CSS for Metro&lt;/li&gt;
    &lt;li&gt;Windows Library for JavaScript&lt;/li&gt;
    &lt;li&gt;Microsoft .NET for Metro Style Apps&lt;/li&gt;
    &lt;li&gt;Win32 and COM for Metro Style Apps&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Social Integration:&lt;/strong&gt; Microsoft plans to continue to expand what they’re doing with social integration.  I saw impressive demos of updating contact information directly from LinkedIN (some of this functionality is expected to be available in the Marketplace within just a few weeks, but the most impressive demo was done with Windows 8 and won’t be available until late this year).  Although I did not see this demoed, it also sounds as if Microsoft plans to develop integration directly to social networks so, for example, if someone tweets something negative about your organization, you can convert that into a case and work to resolve the issues with the customer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tablet and Mobile Behave Like Outlook:&lt;/strong&gt; This is something that was only talked about briefly, but in at least one session I heard a mention of integrating directly with mobile Outlook and mobile phones so that emails and phone calls can be tracked directly from mobile devices without having to have the Outlook client installed.  This would be a huge leap forward for highly mobile users, or users who are accessing CRM from a Mac or another non-Microsoft platform.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;CRM as the System of Engagement:&lt;/strong&gt; There were a number of demonstrations showing how the mobile capabilities (both with Windows 8 tablets as well as with other form factors such as phones and iPads) could be used in a very efficient manner while interacting directly with customers.  One example that I thought was particularly exciting was for a retailer.  When the customer walked into the store, they could optionally check in with their mobile device; when they did so, the employees at the store were immediately alerted and the customer profile was made available with both recent and recommended purchases displayed on screen.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;There are a number of very exciting developments right on the horizon.  What’s coming by July looks evolutionary, but what’s coming after that looks revolutionary.  Let’s hope that Microsoft can pull it off and take CRM to a whole new level that quickly!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/260/Convergence-Report-2-The-Future-of-Dynamics-CRM-from-CONV12.aspx</guid>
         <pubDate>Mon, 26 Mar 2012 11:03:00 +0000</pubDate>
      </item>
      <item>
         <title>Convergence Report 1: The Future is Collaborative at #CONV12</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/257/Convergence-Report-1-The-Future-is-Collaborative-at-CONV12.aspx</link>
         <description>&lt;h1&gt; &lt;/h1&gt;
&lt;p&gt;&lt;a rel="nofollow" title="Dynamics CRM Convergence 2012" target="_blank" href="http://www.microsoft.com/dynamics/convergence/houston12/"&gt;&lt;img title="Dynamics CRM Convergence 2012" border="0" alt="Convergence 2012 Dynamics CRM" align="left" width="244" height="65" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-Collaboration-and-Convergence_626B/image_6.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;After concluding the first day at the Microsoft Convergence 2012 event here in Houston, TX, I can summarize my feelings in one sentence, “It is a great time to be alive and working on collaboration!” Why do I say that? Here are a few brief insights:&lt;/p&gt;
&lt;h2&gt;Collaboration Has Changed Us&lt;/h2&gt;
&lt;p&gt;The initial general session opened with a song that was composed by artists working from different locations around the globe.  It was impressive to hear music that these individuals put together without having met each other.  During the session, I was taking notes on my slate using OneNote – these notes were syncing with our SharePoint server back at the office.  I was also having chat discussions with colleagues both at the event and back at the office via Lync and email.  Later, I was on a Skype call with a new prospect in Australia.  And it began to sink in how much things have changed over the past 10 years.  The idea of collaborating in real time, or even iteratively, with people around the globe, has moved from an idea to the norm.&lt;/p&gt;
&lt;h2&gt;The Future is so Bright…&lt;/h2&gt;
&lt;p&gt;But as much as things have changed, the future is even brighter.  I’ll do a separate blog on some of the changes to expect with the rollout of new versions of Dynamics CRM, SharePoint and Windows in the next 12 months, but here are facts you may not know about Microsoft:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;95,000 employees in over 190 countries and over 600,000 partners – that is a tremendous amount of human thinking contributing to innovation&lt;/li&gt;
    &lt;li&gt;1.5 million people use Microsoft products – and they’re using competing products too, forcing Microsoft to continue to innovate&lt;/li&gt;
    &lt;li&gt;The spend $9 billion in R&amp;D annually – if I heard it correctly, they’re in the top few companies in the world in R&amp;D spend – this will translate into exciting developments over the next 5-10 years that we’re not even envisioning today&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt; &lt;/h2&gt;
&lt;h2&gt;Collaboration Done Right&lt;/h2&gt;
&lt;p&gt;After many years of working as a Microsoft partner, one of the things I have grown to appreciate is their approach to the market.  Make no mistake, I don’t drink all of the Microsoft kool-aid and I know that many have a very negative view of Microsoft just because they are the “big kid on the block.”  But they are doing a lot of things right and they get very little credit for it.  Specifically:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Open Ecosystem:&lt;/strong&gt; Although many would argue that Microsoft software is not “open” (which is true and, in my view, is a good thing), their ecosystem is open.  What does that mean?  Simply that they do not prohibit others from publishing improvements or add-ons to their products.  Anyone can publish a Windows program or CRM add-on (for example) without being forced to go through a “closed” marketplace that may mark it up or may eliminate competitive products all together.  The downside of this is that some low quality products can find their way to the market – the upside is that individual companies and developers have much more freedom to innovate (even if that means competing with Microsoft). &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Choice:&lt;/strong&gt; Microsoft gives both customers and partners the ability to choose.  I had a number of conversations on the first day of the event with customers that said they began working with another company that made it very easy to get started, but they quickly felt trapped.  In some cases I heard complaints about working with a vendor that did not do knowledge transfer – so they could never learn enough to function on their own if they wanted to.  In other cases, I heard that businesses were frustrated because they were trapped in someone else’s cloud that was expensive and limited what they could do.  Microsoft has always worked to provide options (such as the ability to host in their cloud, a partner cloud or a private cloud), and to provide transparent access to knowledge. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Partners:&lt;/strong&gt; Microsoft has always been dedicated to supporting a partner channel. Although they are not always perfect in their execution of their partner programs, they have created millions of jobs around the globe in partner businesses.  They also understand that partners will often need to work with firms that compete with Microsoft; they may wish it were otherwise, but they understand how partner businesses work.  There is a downside – there are some partner firms out there that do less than high-quality work or that may have low-integrity sales practices; but there are also many thousands of partner firms to choose from that provide local, regional, national and global options to businesses located anywhere on earth. &lt;br /&gt;
     &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I realize that this sounds a little bit like an advertisement for Microsoft.  From what I’ve seen, however, Microsoft attracts an undue amount of criticism. I have, admittedly, sometimes been in the chorus of voices offering (hopefully constructive) criticism.  But this is an organization that is having a tremendously positive impact for their customers, for their partners and for their employees.  With the values they have in place, I hope they thrive for a long time to come. &lt;/p&gt;
&lt;p&gt;Having been around collaboration (from the process, technical and human sides) for over 20 years, I’m more excited than I’ve ever been before about the prospects for the future.  Not just because of what Microsoft is doing, but because of how the entire world is changing.   Here’s to working together to use collaboration to make positive changes, provide tools that enable us to express a genuine care for colleagues and customers, and free people and businesses to innovate!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/257/Convergence-Report-1-The-Future-is-Collaborative-at-CONV12.aspx</guid>
         <pubDate>Tue, 20 Mar 2012 19:45:00 +0000</pubDate>
      </item>
      <item>
         <title>Application Data Integration – Part One, Overview</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/254/Application-Data-Integration-Part-One-Overview.aspx</link>
         <description>&lt;hr /&gt;
&lt;p class="MsoNormal" style="text-align:justify;line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;img hspace="10" alt="" align="left" width="115" height="115" src="http://blogs.c5insight.comhttp://blogs.c5insight.com/Portals/0/BlogImages/Other/Integration Cycle.png"/&gt;I&lt;/strong&gt;&lt;/font&gt;n some cases, if not all too some extent, integration between &lt;a rel="nofollow" target="_blank" href="http://crm.dynamics.com/en-us/home"&gt;&lt;span style="color:#0000ff;"&gt;Dynamics&lt;span style=""&gt;™&lt;/span&gt; CRM&lt;/span&gt;&lt;/a&gt;, &lt;a rel="nofollow" target="_blank" href="https://www.salesforce.com/"&gt;&lt;span style="color:#0000ff;"&gt;Salesforce&lt;span style="line-height:115%;font-family:'sans-serif';font-size:11pt;"&gt;®&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; or/and &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com/"&gt;&lt;span style="color:#0000ff;"&gt;SharePoint&lt;span style="line-height:115%;font-family:'sans-serif';font-size:11pt;"&gt;®&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; with your back-office system is the key to user adoption.&lt;span style=""&gt;  &lt;/span&gt;Real-time, two-way data integration allows all segments of the business to access the very latest transactional data, and the information that the data contains.&lt;span style=""&gt;  &lt;/span&gt;One example might be the keying of a ‘large’ order by a sales representative into CRM or Salesforce.&lt;span style=""&gt;  &lt;/span&gt;Having real-time, two-way data integration in place, that order would go directly from the crm system  to your ERP/MRP system for processing.&lt;span style=""&gt;  &lt;/span&gt;That in turn will reduce inventory and alert the operations team, signaling the purchasing department that orders need to be placed to backfill inventory and, signaling the operation manager that they will need to increase production to fulfill the ‘large’ order.&lt;span style=""&gt;  &lt;/span&gt;In some cases the integration of data can trigger an alert that will notify outside vendors directly that inventory needs to be replenished.&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;font size="4"&gt;&lt;strong&gt;W&lt;/strong&gt;&lt;/font&gt;ith access to current inventory levels within a sales rep’s CRM or Salesforce system, sales reps can make better informed customer promises with regard to when items will ship and/or if ordered items will be backordered.&lt;span style=""&gt;  &lt;/span&gt;This greatly improves customer satisfaction and adoption of the new CRM or Salesforce system.  Other advantages (among a plethora) is integration into SharePoint as well, where lists can be compiled to help make better business decision as well as having vital documents at your fingertips, which ever application you are currently using.&lt;/p&gt;
&lt;hr /&gt;
&lt;p class="MsoNormal" style="text-align:justify;line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;font size="4"&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/font&gt;his is just one small example of how application data integration can improve adoption, and also improve the client’s business prospects.&lt;span style=""&gt;   &lt;/span&gt;My purpose in this blog is not to discuss the business benefits of data integration, but explore some of the architectural hurdles in designing the real-time, two-way data integration processes.&lt;span style=""&gt;  &lt;/span&gt;In a short series of blog entries, we’ll examine:&lt;img hspace="10" alt="" align="right" width="227" height="182" src="http://blogs.c5insight.comhttp://blogs.c5insight.com/Portals/0/BlogImages/Other/Integration Curve.png"/&gt;&lt;/p&gt;
&lt;p&gt; &lt;span style=""&gt;&lt;span style=""&gt; &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_10.jpg"&gt;&lt;img title="clip_image001" border="0" alt="clip_image001" width="12" height="12" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_thumb.jpg"/&gt;&lt;/a&gt;     &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;How&lt;/strong&gt; data is discovered for translation                                     &lt;/p&gt;
&lt;p class="MsoNormal" align="left" style="line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;span style=""&gt;&lt;span style=""&gt; &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_12.jpg"&gt;&lt;img title="clip_image001" border="0" alt="clip_image001" width="12" height="12" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_thumb_1.jpg"/&gt;&lt;/a&gt;     &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;When&lt;/strong&gt; to discover data for translation                                        &lt;/p&gt;
&lt;p class="MsoNormal" align="left" style="line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;span style=""&gt;&lt;span style=""&gt; &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_14.jpg"&gt;&lt;img title="clip_image001" border="0" alt="clip_image001" width="12" height="12" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_thumb_2.jpg"/&gt;&lt;/a&gt;     &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;What&lt;/strong&gt; data to discover for translation                                         &lt;/p&gt;
&lt;p class="MsoNormal" align="left" style="line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;span style=""&gt;&lt;span style=""&gt; &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_16.jpg"&gt;&lt;img title="clip_image001" border="0" alt="clip_image001" width="12" height="12" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_thumb_3.jpg"/&gt;&lt;/a&gt;     &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;How&lt;/strong&gt; to handle concurrent data modification                          &lt;/p&gt;
&lt;p class="MsoNormal" align="left" style="line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_18.jpg"&gt;&lt;img title="clip_image001" border="0" alt="clip_image001" width="12" height="12" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5d0d455b74b2_C048/clip_image001_thumb_4.jpg"/&gt;&lt;/a&gt;     &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;How&lt;/strong&gt; to incorporate the client’s and the application’s                    &lt;br /&gt;
         business rules into the integration processes&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;font size="4"&gt;&lt;strong&gt;W&lt;/strong&gt;&lt;/font&gt;e will, by no means, cover all the detail that goes into data integration, but will cover, at a high level, some of the hurdles and how to overcome them.&lt;span style=""&gt;  &lt;/span&gt;In some cases, there will be a choice of methods to accomplish a task, so, we’ll also talk about the best method to use in particular situations.&lt;span style=""&gt;  &lt;/span&gt;Some methods are tool agnostic, some will highlight how a tool like &lt;a rel="nofollow" target="_blank" href="http://www.scribesoft.com"&gt;&lt;span style="color:#0000ff;"&gt;Scribe Insight &lt;/span&gt;&lt;/a&gt;provides easy access to data and the business rules around the data.&lt;span style=""&gt;  &lt;/span&gt;We’ll also see that many of the methods are application agnostic, meaning they can be applied to any system to system integration.&lt;/p&gt;
&lt;hr /&gt;
&lt;p class="MsoNormal" style="line-height:13pt;margin:0in 0in 10pt;"&gt;&lt;font size="4"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/font&gt;ata integration can be tricky stuff if it’s your first time tackling the subject.&lt;span style=""&gt;  &lt;/span&gt;Whether you are implementing a solution, or just need to talk comfortably about integration, there are several things to be careful of, but having said that, like anything else, it’s just a matter of experience before your comfort level is one that keeps your knees from shaking and your palms from sweating.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/254/Application-Data-Integration-Part-One-Overview.aspx</guid>
         <pubDate>Tue, 20 Mar 2012 19:17:00 +0000</pubDate>
      </item>
      <item>
         <title>Get a CRM Bible at Convergence 2012!</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/250/Get-a-CRM-Bible-at-Convergence-2012.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/See-You-at-Convergence_E696/bible_shadow_2.jpg"&gt;&lt;img title="Microsoft Convergence 2012 - Free CRM 2011 Bible" border="0" alt="Free CRM 2011 Bible at Convergence 2012" align="right" width="132" height="156" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/See-You-at-Convergence_E696/bible_shadow_thumb.jpg"/&gt;&lt;/a&gt;This weekend I’ll be packing my bags and heading off to Houston, TX to attend Microsoft Convergence 2012 to experience all of the Microsoft Dynamics CRM goodness I can get.  I’ll plan to publish at least a couple of blogs while I’m there on whatever news or tips I can pick up.  Feel free to leave a comment here if you’d like to request any specific topics&lt;/p&gt;
&lt;p&gt;Are you planning to attend?   Great!  &lt;a rel="nofollow" target="_blank" href="http://www.c5insight.com/contact.aspx"&gt;Ping me&lt;/a&gt; and let’s plan to chat.  It would be great to network with individuals who are looking for career opportunities or who would like to chat about the challenges that you are experiencing with your CRM project.  I’ll hook you up with a free copy of our CRM 2011 Bible if you don’t already have one (or if you want a second copy for your nightstand).&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/250/Get-a-CRM-Bible-at-Convergence-2012.aspx</guid>
         <pubDate>Fri, 16 Mar 2012 20:29:00 +0000</pubDate>
      </item>
      <item>
         <title>How to Avoid Orphan Contacts in Dynamics CRM 2011</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/249/How-to-Avoid-Orphan-Contacts-in-Dynamics-CRM-2011.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Orphan-Contacts_D916/SNAGHTML103f02_1.png"&gt;&lt;img title="How to avoid orphan contacts in Dynamics CRM 2011" border="0" alt="Orphan Contacts in Dynamics CRM 2011" align="left" width="240" height="121" style="background-image:none;border-right-width:0px;margin:0px 10px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Orphan-Contacts_D916/SNAGHTML103f02_thumb_1.png"/&gt;&lt;/a&gt;Have you finally gotten users to start creating contacts in CRM only to find out that they are often forgetting to associate them with an account? For B2B organizations, this can become a significant data quality issue. Most B2B organizations are business centered rather than contact centered. What this means is that users tend to use the account entity in CRM to search for information. So if a contact is not associated with an account, then users are not nearly as likely to find it. This problem is exacerbated by Outlook integration features, such as the ability create a new contact directly from an email address. In this blog, I’ll offer a couple of practical solutions to aid you with creating higher quality data by ensuring that the Parent Customer field is always populated on contact forms. &lt;/p&gt;
&lt;h1&gt;Make Parent Customer Required&lt;/h1&gt;
&lt;p&gt;The first tip seems fairly self-evident, but it is worth pointing out in case you missed it.  If you are a B2B firm, then you should consider making the Parent Customer field required on the contact form.  This enforces requiring that the user populate this form before they can save the record.  This is the first, easiest, and most important step you can take towards ensuring that you always have a value in the field.  Unfortunately, however, this step alone is not enough to guarantee that the field is always populated.  If a contact is created by clicking the “Create as contact” option from an Outlook email, it is possible for the user to exit the record without saving it (thus avoiding the requirement of filling in the Parent Customer field).  Data imports and other functions can also result in creating orphan contacts.  So what is a CRM administrator to do? &lt;/p&gt;
&lt;h1&gt;Use a Workflow to Remind Users to Set Parent Customer&lt;/h1&gt;
&lt;p&gt;CRM to the rescue!  It’s pretty easy to create a workflow to remind users that a contact needs to have a parent customer assigned.  If you’d like a copy of a CRM solution with the workflow, please just ping me on the &lt;a rel="nofollow" target="_blank" href="http://www.c5insight.com/contact.aspx"&gt;contact us&lt;/a&gt; page of our website and I’ll email this to you.   For those of you who are do-it-yourselfers, here are the steps to take:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Create a process on the contact entity.&lt;/li&gt;
    &lt;li&gt;Have the process execute “On Create” of a contact record.&lt;/li&gt;
    &lt;li&gt;Insert a short pause (maybe 5 minutes) at the start of the workflow (this allows time for the user to populate the Parent Customer field before the next step of the workflow is triggered – avoiding annoying email alerts that are not necessary).&lt;/li&gt;
    &lt;li&gt;Check to see if the Parent Customer field on the contact record contains data.&lt;/li&gt;
    &lt;li&gt;If it doesn’t contain data, then send an email to the individual that created the record reminding them to please add the Parent Customer to the contact.  Remember to make it easy for the user to find the record by inserting a link to the record directly into the email body and/or by setting the Set Regarding field so that a link appears in the CRM Pane in Outlook.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Orphan-Contacts_D916/SNAGHTML1fd068.png"&gt;&lt;img title="CRM Workflow - Remember to set Parent Account on CRM 2011 Contact" border="0" alt="Workflow to remind users to set the parent account on a contact form in CRM" width="546" height="123" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Orphan-Contacts_D916/SNAGHTML1fd068_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;That’s really all there is to it.  Just remember to have a little bit of fun with the text of the email alert.  Tell your users that “CRM is very happy that you created a contact” or other funny comments that will help them remember to enter data correctly the first time (these funny comments have the added benefit of really annoying those users who require constant reminders!)&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/249/How-to-Avoid-Orphan-Contacts-in-Dynamics-CRM-2011.aspx</guid>
         <pubDate>Fri, 16 Mar 2012 00:55:00 +0000</pubDate>
      </item>
      <item>
         <title>Game-Changing Dashboards Combining SharePoint and CRM</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/246/Game-Changing-Dashboards-Combining-SharePoint-2010-and-CRM-2011.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/The-Ultimate-CRM-2011-Dashboards_CC7B/WP_000088_2.jpg"&gt;&lt;img style="background-image:none;border-right-width:0px;margin:0px 0px 0px 12px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="Using a HDTV to Present Dynamics CRM 2011 and Microsoft SharePoint 2010 Dashboards" border="0" alt="SharePoint 2010 and CRM 2011 Dashboards on a Large Monitor" align="right" width="244" height="184" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/The-Ultimate-CRM-2011-Dashboards_CC7B/WP_000088_thumb.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;SharePoint has had excellent dashboard presentation capabilities for a long time now.  Dynamics CRM formally rolled out dashboard reporting with CRM 2011 (although using SharePoint and/or SSRS enabled dashboard reporting with previous versions of CRM).  Now that this functionality is getting embraced and adopted by many organizations, how can it best be leveraged to change the game by truly accelerating performance?  Simple.  Combine the best of Microsoft SharePoint, Dynamics CRM 2011 and TV or large monitors placed in public areas within your business.  Here’s how we’ve done it at C5 Insight.&lt;/p&gt;
&lt;p&gt;First off, we created great dashboards using native CRM 2011 functionality (such as views, charts and, of course, dashboards).  We used these for a while in production to ensure that they were producing the kind of information we could use to drive behavior and/or make better business decisions.  This includes setting goals and using the goal management features of CRM to help individuals understand exactly where they stand relative to expectations.&lt;/p&gt;
&lt;p&gt;Next, we did the same with SharePoint.  We looked at the kinds of information that is not in CRM that we would want to report on.  This includes things like financials, summarized project information (although this information is tracked by us in CRM, the native charts do not have sufficient functionality to present the dashboards we needed, so we used Excel services in SharePoint to render this kind of information) and the company calendar.  Some custom SharePoint information can be added, such as a Wiki where you enter daily announcements or a “welcome” message when you know a client will be visiting the office that day.&lt;/p&gt;
&lt;p&gt;Third step?  The CRM dashboards can be merged with SharePoint by using Iframes or Web Resources within the CRM 2011 dashboards.  These components can “hold” the content that we want to present on our dashboards from SharePoint.  We can then trim away the CRM “flash” (such as the ribbon and menu) just by calling the correct URL so the dashboards are presented as a “kiosk”.&lt;/p&gt;
&lt;p&gt;The last step: put large screen monitors, that can connect to the web, in key locations in your business.  In the nearby image, we’ve placed a monitor near our main entrance where people gather regularly; and we have another one in another office area down the hall.  These monitors are configured to show the desktop of a nearby computer (in our case, we’re running the Android OS on these monitors and they remote desktop to the machine, but many other options exist to enable this).  We also downloaded remote control apps that can run on iPhone, Windows Mobile or Android so that we can interact with our dashboards with our mobile devices (including our Kindle Fires – very cool!)  Multiple dashboards can be setup so that they dashboard rotates periodically, and so that information is refreshed periodically.&lt;/p&gt;
&lt;p&gt;That’s how we did it – but it can work a bit differently depending on your situation.  One area that many larger businesses may need for their dashboards is a true BI (business intelligence) dashboard that combines data from multiple sources into a data warehouse and then renders that on a dashboard.  This, too, can be presented on an interactive monitor.  Adding a touch screen to this will be the ultimate, “Minority Report” experience … can’t wait to add that!&lt;/p&gt;
&lt;p&gt;Interested in how to change the game in your organization with great dashboards?  &lt;a rel="nofollow" title="Contact C5 Insight for Game Changing CRM and SharePoint Dashboards" target="_blank" href="http://www.c5insight.com/contact.aspx"&gt;Click here to contact us&lt;/a&gt; and let’s talk about it!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/246/Game-Changing-Dashboards-Combining-SharePoint-2010-and-CRM-2011.aspx</guid>
         <pubDate>Mon, 27 Feb 2012 19:54:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM 2011 Activity Feeds: Gaining User Adoption</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/244/CRM-2011-Activity-Feeds-Gaining-User-Adoption.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-Activity-Feeds-Gaining-User-Ado_92AC/image_2.png"&gt;&lt;img title="Screen Capture of CRM 2011 Dashboard with What's New Wall" border="0" alt="CRM 2011 Dashboard with Activity Feeds" align="left" width="354" height="175" style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 12px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-Activity-Feeds-Gaining-User-Ado_92AC/image_thumb.png"/&gt;&lt;/a&gt;Activity feeds, also known as a “wall” or “what’s new,” are a great feature in Dynamics CRM 2011 introduced with the November 2011 update rollup.  Activity feeds create a social “wall”, similar to Facebook or other social networks.  Users can follow records (such as an account, contact, opportunity or any other record type that the administer sets to work with activity feeds).  When certain actions occur on those records (such as an opportunity being won) a post is automatically made to the “wall” of that record (visible as the first tab on the record form).  Users can also comment on a record wall (for example, a user could comment, “My neighbor is the CEO of the firm for this opportunity – touch base with me for some ideas on how to win this one”).  Any posts made to the wall of a record you are following are also visible on your main “what’s new” wall – very similar to how status updates of your friends in Facebook show up on your individual Facebook wall.&lt;/p&gt;
&lt;p&gt;It is hard to overstate how important this functionality can be to a business.  If you’ve been working with social applications for a while, it is fairly natural to learn how to use CRM activity feeds.  If social networking is new to you, then you should take the time to learn more about activity feeds.  &lt;a rel="nofollow" title="Video Introduction to Dynamics CRM 2011 Activity Feeds" target="_blank" href="http://rc.crm.dynamics.com/rc/2011/en-us/on-prem/5.0/vid_activity_feeds_intro.aspx"&gt;Click here&lt;/a&gt; for an overview.&lt;/p&gt;
&lt;p&gt;But there is a problem.  Just as with any new approach to doing business, it can be difficult to get users to adopt this powerful new feature.  When working with some clients, I’ve heard comments like, “I already check email, voice mail and use instant messaging to exchange information – this is just another place that I have to remember to go.”  And I tend to agree with that.  Even though the “What’s New” wall is just a click away in the CRM menu, it requires remembering to discipline yourself to go to yet another part of CRM to make sure that nothing is slipping through the cracks.  So here are 3 ideas to help you get broader adoption of activity feeds across your organization.&lt;/p&gt;
&lt;h1&gt;1. Start with an Activity Feed Pilot Group&lt;/h1&gt;
&lt;p&gt;Don’t install the activity feed solution, provide an hour of training, and expect to see usage take off.  Rather, start using activity feeds with a small pilot group of users that are excited to integrate it into their daily work. Form a task force to discuss them and provide a bit of training, and meet every few weeks to review usage, discuss issues, and fine-tune how you have them configured.  Ask your task force to not only use activity feeds, but to think about why you would use this rather than another mode of communication (such as email).  You’ll find that this group develops best practices specific to your organization that you can use in training other users.&lt;/p&gt;
&lt;h1&gt; &lt;/h1&gt;
&lt;h1&gt;2. Integrate Activity Feeds into Dashboards&lt;/h1&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-Activity-Feeds-Gaining-User-Ado_92AC/SNAGHTML7c7080.png"&gt;&lt;img title="Dashboard Settings for CRM 2011 Activity Feed" border="0" alt="CRM 2011 Activity Feed Web Resource Settings" align="right" width="164" height="244" style="background-image:none;border-right-width:0px;margin:12px 0px 12px 12px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-Activity-Feeds-Gaining-User-Ado_92AC/SNAGHTML7c7080_thumb.png"/&gt;&lt;/a&gt;Another way we have found to aid with improving the adoption of activity feeds is to integrate them directly into your dashboards.  As you probably know, dashboards are more than just charts – they are an interactive tool that users can access to organize and manage their entire day – without having to navigate to all the various areas of CRM.  With that in mind, dashboards are a centerpiece of most of our implementations, so integrating the wall into the dashboard that they already use everyday means less clicking around to get them using activity feeds.  The image near the beginning of this blog entry is a demonstration of adding the activity feed to a dashboard that we use within our business.  Since the What’s New section is a web resource, it is fairly simple to add this to an existing dashboard.  Follow the instructions below to create a personal dashboard with activity feeds (if you want to roll this out across the business, then you’ll need to create a system dashboard):&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Go to the dashboard you want to integrate activity feeds into.&lt;/li&gt;
    &lt;li&gt;Click “Save As” in the ribbon menu and name the new dashboard (you could also modify an existing personal dashboard, but this runs the risk of making changes that you cannot easily undo – I prefer to start by creating a new dashboard and then, once I’m sure I no longer need the old one, I delete it).&lt;/li&gt;
    &lt;li&gt;On the ribbon menu, click the “Web Resource” button on the Insert section.&lt;/li&gt;
    &lt;li&gt;Choose the resource named, “msdyn_/PersonalWall.htm” – see the nearby image for other properties to set on this form.&lt;/li&gt;
    &lt;li&gt;Position the web resource such that the user can see it clearly on their dashboard.  Depending on screen resolution, it should take from 1/3 to 2/3 of the width of the dashboard, and it should not be taller than can fit onto a single screen (lest the user has to use 2 scroll bars to navigate the wall).  This will take a bit of experimentation to get the settings right to fit in with your selected dashboard and screen resolution.&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;3. Create Groups&lt;/h1&gt;
&lt;p&gt;One last tip: create a “Groups” custom entity that individuals can follow.  That way, people can choose a specific interest that they want to follow.  For example, in our business, we have people who focus on Dynamics CRM, SharePoint, Salesforce.com and Business Intelligence.  We also have things that we want to publish for everyone to see.  So we’ve created a group for each of those things, we ask everyone to follow the “Everyone” group, and to also follow the other groups of their choice.  This gives everyone a way to communicate with each other around their specific areas of interest and expertise without having to read through irrelevant information that is not important to their job.  You’ll also need to create appropriate security groups to manage this new entity.  To help you along with this, I’ve created a custom solution that you can load into your instance of CRM.  To request it, &lt;a rel="nofollow" title="Download Activity Feed Group Solution" target="_blank" href="http://www.c5insight.com/contact.aspx"&gt;contact us&lt;/a&gt;, and in the comment box request the “C5 Social Groups” solution – we’ll email it to you within a day.  Always remember to test out any new solution (including this one) in a test instance of CRM prior to rolling it out to your organization.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;With those tips in mind, you can quickly get your organization down the path of adopting activity feeds in CRM 2011.  Happy virtual socializing!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/244/CRM-2011-Activity-Feeds-Gaining-User-Adoption.aspx</guid>
         <pubDate>Mon, 20 Feb 2012 18:00:00 +0000</pubDate>
      </item>
      <item>
         <title>Role Based Business Logic Strategy for CRM 2011</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/243/Role-Based-Business-Logic-Strategy-for-CRM-2011.aspx</link>
         <description>&lt;p&gt;Security roles are inherited by child business units in Microsoft Dynamics. As I mentioned in a previous blog &lt;a rel="nofollow" title="Sneaky Cylon Copies of Your CRM Security Roles" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/238/Sneaky-Cylon-Copies-of-Your-CRM-Security-Roles.aspx"&gt;Sneaky Cylon Copies of Your CRM Security Roles&lt;/a&gt;, security roles have linked copies that have the same name but are separate entries with their own unique guids for each business unit. This creates an interesting situation when you want to base business logic on a user’s security role memberships. Since the only thing that is effectively guaranteed to be the same between parent and inherited security roles is the name you need to enact some design patterns to use them in a consistent manor in your code. &lt;br /&gt;
  &lt;br /&gt;
I’ve mentioned this before but I’ll reiterate that according to Microsoft it is best practice to define your roles at the root business unit. Also mentioned as best practice is if you decide to create security roles below the root business unit that they have unique names across business units. An example of this is if you were to create a security role called Customer Service Manager in business unit A. The premise of this security role may be valid in other business units but you should not create security roles in the other business units with the same exact name. (FYI – You can’t use a security role defined in one business unit for another business unit unless they both inherit that role from a parent business unit). The reason for this rule will become apparent as we continue the discussion. &lt;br /&gt;
  &lt;br /&gt;
It stands to reason that when creating business rules based on security roles that you implement those rules using the name of the security role or roles. The security role names are the only thing guaranteed to be the same down the business unit hierarchy. This is one of the reasons why you want to make sure that if you decide to create security roles below the parent business unit that the names are different else you will not only have to check for the security role name, but also the business unit it applies to. Yeah sure you could probably get away with it but I’m all about making life easier. &lt;br /&gt;
  &lt;br /&gt;
Unfortunately I have seen places where security role business logic is baked into code with hard coded names of security roles. This just feels like a crime because if anything about those security roles change (like the name) then the logic in who knows how many places has to be updated to match. When the time comes and changes need to be made to a system I don’t want to have to worry about stepping on land mines if I change anything about the system. I have a real pet peeve about hard coded attribute names and such because it causes some poor person later on more work in order to update and maintain the code. The following is what I believe is a better way to go. &lt;br /&gt;
&lt;br /&gt;
If we assume that the name is what we have to key off of for security roles then we should obfuscate the name out of our code so that if it was to change then we don’t have to worry about all the places it is referenced. I’m thinking more in terms of JavaScript because that is where I’ve felt the most pain. In order to do this you could create the reference to the security role in a global variable in a JavaScript file that is global to the organization. I mentioned a methodology of doing this in a previous blog named &lt;a rel="nofollow" title="CRM 2011 JavaScript Library Methodology" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/232/CRM-2011-JavaScript-Library-Methodology.aspx"&gt;CRM 2011 JavaScript Library Methodology&lt;/a&gt;. This would give you a way to update the security role name if it ever changed and take care of its reference in other places in the code. A second way way to do this would be to obfuscate the role names would be to use a configuration entity to store the security role references (reference my previous blog on the configuration entity titled &lt;a rel="nofollow" title="Two Custom Entities that Are Useful in Every CRM Solution" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/208/Two-Custom-Entities-that-Are-Useful-in-Every-CRM-Solution.aspx"&gt;Two Custom Entities that Are Useful in Every CRM Solution&lt;/a&gt;. The cons to using the configuration entity as you might imagine is that it requires a service call to get the values. The thing that you have to evaluate when decided how to implement this is performance versus maintainability. If you store information in the configuration entity you at least have access to it from both JavaScript, plugins and workflow assemblies. This is really nice but when you have a system with a large number of users it just may not be practical. &lt;br /&gt;
&lt;br /&gt;
Just FYI, I have not yet had an opportunity to implement this in a project yet. I came up with this the other week when dealing with security role business logic. I don’t see why this design pattern wouldn’t work but I’ll certainly let you know when I get to try it out. The tactic seems sound at face value. Easy to implement and makes code easier to maintain. The day I get to see a project with code that has a proper level of obfuscation I will jump for joy, but I have a feeling I may be waiting a little while before that happens.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/243/Role-Based-Business-Logic-Strategy-for-CRM-2011.aspx</guid>
         <pubDate>Thu, 09 Feb 2012 20:00:00 +0000</pubDate>
      </item>
      <item>
         <title>Dynamics CRM Security Role Harvey Balls</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/242/Dynamics-CRM-Security-Role-Harvey-Balls.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Dynamics-CRMs-Harvey-Balls_116E6/Harvey%20Balls_2.png"&gt;&lt;img align="left" width="112" height="112" border="0" title="Harvey Balls" alt="Harvey Balls" style="background-image:none;border-right-width:0px;margin:0px 5px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Dynamics-CRMs-Harvey-Balls_116E6/Harvey%20Balls_thumb.png"/&gt;&lt;/a&gt;I was on a conference call the other week when Jack Bender, a Senior Consultant from Microsoft, mentioned Harvey Balls in reference to security role privileges. Later on I asked him what the heck he was talking about with this Harvey Ball stuff. If you already know the whole  Harvey Ball story then feel free to roll your eyes and give me the gas face. I just thought it was a somewhat odd description of the little balls used to adjust security permissions. For those of you who don't know what Harvey Balls are here is a brief summary so that when the time comes and you hear about Harvey Balls or you just want to impress someone by talking about them you'll be in the know. &lt;br /&gt;
&lt;br /&gt;
Harvey Balls, also known as Booz Balls as it pertains to CRM are the little round circles when you pull up a security role for adjusting user privileges. Harvey Balls are used for visual communication of qualitative information. In plain English they depict a relative state that makes sense for the context of what they are applied to. For example, I could apply Harvey Balls to depict my relative anger when a user calls to complain about something. The more filled the ball is the more frustrated I am the that this user just doesn’t understand that I am always right and he just doesn’t know what he is talking about. I’m kidding of course…&lt;/p&gt;
&lt;p&gt;When it comes to CRM, as it is shown at the bottom of the security roles window an empty ball means the security role has no rights to the entity or privilege. As you click on an individual ball it changes to increase the level of access for that particular access until finally the role has organization access to that privilege.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Dynamics-CRMs-Harvey-Balls_116E6/clip_image001_2.jpg"&gt;&lt;img width="244" height="192" border="0" title="clip_image001" alt="clip_image001" style="background-image:none;border-right-width:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Dynamics-CRMs-Harvey-Balls_116E6/clip_image001_thumb.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Just for a bit of history, Harvey Poppel is credited with inventing Harvey Balls back in 1970 while working as a consultant for Booz Allen Hamilton. The fact that he was currently working for Booz Allen Hamilton is why they are sometimes referred to as Booz Balls. Mr. Poppel was known as the go-to guy when it came to increasing office productivity, and these balls struck him as a time saver. They were such a hit that quickly all Booz consultants were using them, and the rest is history. Harvey Balls are used in quite a number of application for obvious reasons. Personally I had seen them before I just never knew what they were actually called or the history behind them. Now I know, and so do you.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/242/Dynamics-CRM-Security-Role-Harvey-Balls.aspx</guid>
         <pubDate>Wed, 08 Feb 2012 20:00:00 +0000</pubDate>
      </item>
      <item>
         <title>The Hush Hush Way to Implement a Custom CRM 2011 Web Application</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/240/The-Hush-Hush-Way-to-Impliment-a-Custom-CRM-2011-Web-Application.aspx</link>
         <description>&lt;p&gt;There is something to be said for simplicity. When writing custom web application for CRM you can get fancy with Infragistics or Telerik controls and do all kinds of interesting and fun things. There are situations where using third party controls is certainly warranted. In the past I've always leaned towards using third party controls because they can make my life easier. I like being able to just throw a grid on a web form and update a few properties and have most of the work for display of data taken care of for me. As of late I have seen the value of bare bones custom web applications for CRM. As always it just depends on what you are doing and what you need to accomplish as to the need for the overhead of third party controls. But if possible it can be better to try and use vanilla HTML, JavaScript and CSS to accomplish your goal.&lt;/p&gt;
&lt;div&gt;The benefits of using vanilla web development technologies is fairly obvious.&lt;/div&gt;
&lt;ul&gt;
    &lt;li&gt;If you can accomplish everything in standard web tech you can include everything as web resources in your solution.&lt;/li&gt;
    &lt;li&gt;If you don't need third party controls you don't have to worry about the dependency of having those controls installed on the CRM servers. If you are implementing a server farm then you have to install the same controls X times based on the number of servers in your farm.&lt;/li&gt;
    &lt;li&gt;If you aren't using third party controls it makes it easier implement a custom web application as I will explain shortly.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;&lt;b&gt;The Hush Hush Way to Implement a Custom CRM Web Application&lt;/b&gt;    &lt;br /&gt;
 &lt;/div&gt;
&lt;div&gt;The official documentation states that when implementing a custom web application that it should be a separate web site and that the ISV folder has been deprecated. I understand where Microsoft is going with this because obviously they don't want your unknown code to be running within the same application pool and potentially cause issues with the CRM web service. The documentation also mentioned that this method of custom web application also takes into consideration that cross site scripting will not be an issue.   &lt;br /&gt;
 &lt;/div&gt;
&lt;div&gt;The interesting thing is that even thought the official documentation says create your apps externally depending on who you talk to at Microsoft the back door way of doing it is using an IIS virtual directory. There can be situations where certain things need to done using cross chatter between custom web apps and the CRM form. Microsoft consulting is actually using virtual directories themselves but it's more of a hush hush thing. They don't want to go and tell everyone to do this but it can be done.   &lt;br /&gt;
 &lt;/div&gt;
&lt;div&gt;The way to do it properly is when you create your virtual directory underneath the CRM web service you set it as an application and create a seperate application pool for it. This way you still avoid causing problems for the CRM web service while still being able to run your applications in the same "domain". The biggest things that this buys you is that you don't have to worry about cross site scripting so you get the ability to talk directly to the parent form in your web application. One thing to remember is that even if you include the ClientGlobalContext.js.aspx in your web page that it will not have the context of the form being that your app is running in an iFrame. You get the context of the organization but you can do things like ask the Xrm object what the Id of the form you are on. You need to go ask the parent window thing of that nature. Being in the same context as the parent window you can run any JavaScript method in the parent form too.   &lt;br /&gt;
 &lt;/div&gt;
&lt;div&gt;This method of creating custom web applications had worked out well. Even though it's sort of the undocumented way of doing it, I don't see off hand any real danger doing this. Yes things will change when updates come out but this seems to be a valid back door way of making web applications work with CRM.&lt;/div&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/240/The-Hush-Hush-Way-to-Impliment-a-Custom-CRM-2011-Web-Application.aspx</guid>
         <pubDate>Tue, 07 Feb 2012 20:00:00 +0000</pubDate>
      </item>
      <item>
         <title>Quick Tip: Track Meetings and Calls in CRM Without Typing</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/235/Quick-Tip-Track-Meetings-and-Calls-in-CRM-Without-Typing.aspx</link>
         <description>&lt;p&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 12px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" title="A Happy Salesperson Using Salesforce.com" border="0" alt="A Happy Salesperson Using Dynamics CRM" align="left" width="194" height="194" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Quick-Tips-Track-Phone-Calls-in-CRM-With_1089A/image_3.png"/&gt;Do you see the person in the picture to the left?  She is a salesperson.  Why is she so happy?  Because she is using her CRM system right now, while she’s talking on the phone.  And it’s taking her less time than ever before.  And her manager is getting the reports that he wants at the same time!  And she gets her work done in CRM when she would otherwise have “down time”?  How is all this possible you ask?  Read on …&lt;/p&gt;
&lt;p&gt;We frequently hear complaints from sales users that they don’t like having to take the time to track meetings and phone calls in their CRM system.  Many sales people feel that this just takes away from the time that they can spend in conversations with prospective customers.  While it is critically important that sales people are disciplined about tracking relevant activities in CRM, there are some helpful shortcuts available to save some time – or to make use of “down time” while driving or waiting for a meeting.&lt;/p&gt;
&lt;p&gt;One very helpful tool for tracking these activities comes from an unexpected source: Google!  Google has a free service called Google Voice.  The service is meant to be a helpful tool for routing calls (you can setup your Google Voice number to ring multiple phone numbers so prospects can reach you at your mobile, home or office number – you can even easily set it up to ring a land-line while you’re on vacation if you don’t have mobile service).  Google Voice also enables you to capture, and transcribe, voice mails.  Google Voice can send your voice mail messages to your email address automatically.  This voice mail transcription service is what you can use to save some time capturing meeting and call notes.&lt;/p&gt;
&lt;p&gt;To take advantage of this, you can call your Google Voice number between meetings.  This can be while waiting for a meeting, from your car (of course you wouldn’t dream of doing this while driving … right?) or anywhere else that you have some “down time” and a mobile phone signal.  Call your Google Voice number, record your notes, and hang up.  Be sure to annunciate clearly – Google Voice transcription isn’t perfect and can sometimes lead to entertaining, or embarrassing, mistakes.  Google Voice transcribes the message and sends you an email.  When you’re back on Outlook, simply track the email (which includes the transcribed call notes) and regard it to the appropriate record in your CRM system.  You’re done!  That takes a lot less time than opening CRM, finding the customer record, creating an activity, and manually typing all of the notes.&lt;/p&gt;
&lt;p&gt;If you have a talented CRM partner, they can setup a workflow for you that can automatically convert your tracked email into a phone call or appointment activity for you – so your notes will not only be tracked, but they will also appear as the correct activity type in CRM.&lt;/p&gt;
&lt;p&gt;What will you do with all of the time you save? &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/235/Quick-Tip-Track-Meetings-and-Calls-in-CRM-Without-Typing.aspx</guid>
         <pubDate>Fri, 03 Feb 2012 05:49:00 +0000</pubDate>
      </item>
      <item>
         <title>Bad OData Calls Potentially Causes CRM Service Problems</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/239/Bad-OData-Calls-Potentially-Causes-CRM-Service-Problems.aspx</link>
         <description>&lt;p&gt;&lt;img hspace="5" alt="" align="left" style="width:71px;height:69px;" src="http://blogs.c5insight.com/Portals/0/BlogImages/Stephan/220px-Palpatine_ROTJ.jpg"/&gt;In the movie Star Wars Chancellor Palpatine outwardly appears to be a well-intentioned and loyal public servant and supporter of democracy, yet underneath his affable public persona lurks his true identity. His Sith name was Darth Sidious and accurately describes his true hidden nature. In a CRM project of any size you may end up with a decent amount of JavaScript to implement client side form customizations. Most likely there will be a need to make web service calls to get certain pieces of information about things such as the user, his/her roles, etc. You have to make sure your web service calls are being made correctly or else you could run into some "insidious" problems on your server.&lt;/p&gt;
&lt;p&gt;The nature of how we have to write JavaScript today leaves the door open to inadvertently make small mistakes that may not be obviously apparent. I ran across one such issue that appeared to be a minor issue with a JavaScript call to get a user's business units using the OData service. For a project I'm working on we have been dealing with issues when deploying to our UAT server environment. We share the box with another team and they have complained that our solution is bringing down the server somehow. The problem was not obvious but I had talked with someone on that team the other day and they mentioned they suspected it had something to do with web service calls. I shrugged my shoulders not really knowing how that would cause the CRM service to go down and went about my business. The problem was something other people were working on so I was focused on the tasks I had on my plate when I made an interesting discovery.&lt;br /&gt;
&lt;br /&gt;
Last night I was working on a custom web application and had left Fiddler open to watch what kind of calls Internet Explorer was making to the server. I was working on the opportunity form when I happened to look over and see red log entries passing by on the Fiddler display window. As it turns out, every time I opened the opportunity form it was making bad OData calls to get the business unit of the logged in user. What was happening is the method that was making the call to get the user's business was passing a null parameter to the method which was attempting to pass an invalid guid in the OData call.&lt;br /&gt;
&lt;br /&gt;
As it turns out this bad OData call apparently has been crashing our UAT server environment. We haven't confirmed this as yet but right now we believe that while yes we were making a bad OData call, the server should just return an error like it does in our development environment. What seems to be happening in our UAT environment is the bad OData call crashes the CRM service so there is potentially something on the Microsoft side going on too. This issue is under investigation but the evidence seems pretty compelling at the moment. The Microsoft guys are working to figure out how this is happening but in the meantime we are going to fix our bad OData calls and see if that corrects the issue.&lt;br /&gt;
&lt;br /&gt;
The bottom line is that it appears that if you end up making bad OData calls it could potentially cause server problems on the back end. If you find yourself in the situation use your Jedi powers and make sure to check your web service calls with a tool like Fiddler to make sure everything is as it should be...&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Latest Update:&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
It appears that the problem may stem from the service account user being used not being properly setup with the correct permissions. When an error occurs in the system CRM may be attepting to write trace files and such that it can't access which cause the service to hang. This investigation is ongoing but this is the path being followed at the moment.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/239/Bad-OData-Calls-Potentially-Causes-CRM-Service-Problems.aspx</guid>
         <pubDate>Thu, 02 Feb 2012 20:00:00 +0000</pubDate>
      </item>
      <item>
         <title>Sneaky Cylon Copies of Your CRM Security Roles</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/238/Sneaky-Cylon-Copies-of-Your-CRM-Security-Roles.aspx</link>
         <description>&lt;div&gt; &lt;/div&gt;
&lt;div style="line-height:normal;margin-bottom:0pt;"&gt; &lt;/div&gt;
&lt;div&gt;&lt;img width="88" hspace="5" height="126" align="left" alt="" src="http://blogs.c5insight.com/Portals/0/BlogImages/Stephan/Cylon.jpg"/&gt;The best practice stated by Microsoft when dealing with security roles is not to create security roles underneath the root business unit of your organization. Each security role defined at the root is inherited by its child business units. In the case of a new organization the roles you get will be the out of the box security roles. The interesting thing about this is as a developer is that the UI deceives you into thinking that when you are looking at security roles that there is only one when in fact much like the Cylons in Battlestar Galatica there are multiple copies. What is happening behind the scenes is that for each child business unit the security role is being duplicated down the business unit hierarchy. If you are asking yourself why you should care then you have to consider instances when you want to know information about certain security roles in the system. If you are ever in a situation where you are looking for a security role by its guid like in a configuration setting you'll have to keep in mind that you can't just copy the guid you find in the interface and expect that it applies to all business units because they are all unique records with their own guids in the database.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;As of right now I would say the best way to grab security roles is somewhat unfortunately by name. At least the name is guaranteed to be the same in all the child business units. The problem with this approach is of course if you ever change the name of the role you are screwed with any code that relies on that name to be something specific. Just to prove the point I conducted a little experiment with a user to see what happens when I moved them from one business unit to another and reassigned them the same exact security roles.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;In the following example I have user Kara Thrace who is a member of a business unit that is changed to a second unit. You would expect that her security role guids would remain the same, but as you will see even though she was assigned to what appears to be the same exact security roles in the CRM interface they are actually Cylon copies that only appear to be the same thing.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;
&lt;div&gt;&lt;b&gt;Security role guids as member of business unit Galactica&lt;/b&gt;&lt;br /&gt;
Viper Pilot: &lt;span style="color:rgb(0,0,255);"&gt;086F539E-46B4-DF11-B769-005056A97446&lt;/span&gt;&lt;br /&gt;
Lieutenant: &lt;span style="color:rgb(0,0,255);"&gt;A62D06E2-43B4-DF11-B769-005056A97446&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;b&gt;Security role guids &lt;/b&gt;&lt;b&gt;as member of business unit Pegasus &lt;/b&gt;&lt;span&gt; (Hey these aren't the same security roles!)&lt;/span&gt;&lt;br /&gt;
&lt;span&gt;Viper Pilot&lt;/span&gt;: &lt;span style="color:rgb(255,0,0);"&gt;325585EC-E71F-4FF2-B419-3AAF9C3690AF&lt;/span&gt;&lt;br /&gt;
Lieutenant: &lt;span style="color:rgb(255,0,0);"&gt;bF6E95E97-7BC8-41D3-B1ED-F172D51752D6&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The bottom line is keep in mind how security roles are implimented in the database so that you don't get caught trusting a Cylon security role and wonder why your code isn't working correctly.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/238/Sneaky-Cylon-Copies-of-Your-CRM-Security-Roles.aspx</guid>
         <pubDate>Wed, 01 Feb 2012 20:00:00 +0000</pubDate>
      </item>
      <item>
         <title>Quick Tip: Use CRM Email Templates Without Tracking in CRM</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/236/Quick-Tip-Use-CRM-Email-Templates-Without-Tracking-in-CRM.aspx</link>
         <description>&lt;p&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 12px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" title="Using CRM Email Templates Without Tracking" border="0" alt="CRM Email Template non-CRM Email" align="left" width="244" height="90" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/How-To-Use-Email-Templates-Without-Track_103FF/image_3.png"/&gt;E-mail templates are a great feature available in Dynamics CRM.  When Microsoft introduced the ability to access them directly from within Outlook in CRM 2011, it became even more efficient to quickly grab a template for any outgoing email.  In order to use an email template, you first have to track the email in CRM.  So the process works something like this: create an Outlook email | click the Track in CRM or Set Regarding button | select a template | send the email.&lt;/p&gt;
&lt;p&gt;There are situations, however, in which you might want to use a template, but you do not want to track the email to CRM.  For example you may want to send a confidential email to a job candidate.  Sure, CRM can be configured to work with the HR group specifically for recruiting – with all the required security.  But many businesses have not fully configured CRM for this purpose – but they still have a recruiting process that could be made more efficient by using email templates.  How can individuals with this requirement still leverage email templates in CRM?  The good news is that it is fairly simple.&lt;/p&gt;
&lt;p&gt;Follow the steps below to use an email template without having to track the email in CRM:&lt;/p&gt;
&lt;p&gt;1. Create the template in CRM as you normally would.&lt;/p&gt;
&lt;p&gt;2. Create a new email in Outlook.&lt;/p&gt;
&lt;p&gt;3. Click the Track in CRM or Set Regarding button (if you want to use fields in your email template from the underlying CRM record, then make sure to regard the email to the appropriate record).&lt;/p&gt;
&lt;p&gt;4. Click the Template button and choose the template that you want to use.&lt;/p&gt;
&lt;p&gt;5. And here’s the trick … now just click the “Untrack” button (the same button that is usually labeled “Track in CRM”) &lt;u&gt;before&lt;/u&gt; hitting Send.&lt;/p&gt;
&lt;p&gt;Voila!  When you send the email, it is not tracked in CRM, but you still got the benefit of using a CRM template to create the email! &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/236/Quick-Tip-Use-CRM-Email-Templates-Without-Tracking-in-CRM.aspx</guid>
         <pubDate>Wed, 01 Feb 2012 00:15:00 +0000</pubDate>
      </item>
      <item>
         <title>Adding a Twitter Feed to CRM Leads</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/231/Adding-a-Twitter-Feed-to-CRM-Leads.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Adding-a-Twitter-Feed-to-CRM-Leads_BDB7/image_2.png"&gt;&lt;img style="background-image:none;border-right-width:0px;margin:0px 12px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="Twitter Feed on CRM Form" border="0" alt="Twitter Feed on CRM Form" align="left" width="244" height="178" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Adding-a-Twitter-Feed-to-CRM-Leads_BDB7/image_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;When reviewing a lead, account or contact prior to a sales call, it is always helpful to have as much context about a company prior to making the call.  Putting a Twitter feed on the CRM record for a lead can put this information in a place where it is easy for a sales person to quickly see it.  By passing in the name of the company dynamically, the feed can show relevant information about the specific company.&lt;/p&gt;
&lt;p&gt;Twitter makes it pretty easy to generate the “base” code for integrating with CRM (or any website) as a widget.  You can find their tools for generating widgets &lt;a rel="nofollow" title="Twitter CRM 2011 Widgets" target="_blank" href="https://twitter.com/about/resources/widgets"&gt;here&lt;/a&gt;.  Even if you use my code, below, as a starting point, you’ll likely find this link helpful as you start to fine-tune your code a bit.&lt;/p&gt;
&lt;p&gt;On the technical side, this post uses an HTML web resources to setup the Twitter integration on the Dynamics CRM 2011 lead form.  In general, this appears to be fairly straight forward, but there are a few ‘gotchas’ to work around.  Notably, ensuring that the script in inserted into the correct portion of the HTML code and structuring how you reference fields on your parent CRM form can be a bit tricky.&lt;/p&gt;
&lt;p&gt;Here is a step-by-step guide to setting up the Twitter feed.  This assumes some basic knowledge of creating Web Resources in CRM.&lt;/p&gt;
&lt;p&gt;1. Create a new Web Resource in the customizations area of CRM.  Use the following settings on it:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Name: Twitter&lt;/li&gt;
    &lt;li&gt;Display Name: Twitter Mash-Up by C5 Insight&lt;/li&gt;
    &lt;li&gt;Description: Displays a Twitter feed for the company on the Lead entity.&lt;/li&gt;
    &lt;li&gt;Type: Web Page (HTML)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;2. Click Text Editor.&lt;/p&gt;
&lt;p&gt;3. Click the source tab and enter or copy/paste the code from below.  IMPORTANT NOTE: Do &lt;u&gt;not&lt;/u&gt; paste this code into the rich text editor – be sure  you are on the source tab.&lt;/p&gt;
&lt;div class="csharpcode"&gt;
&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;HTML&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;HEAD&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;SCRIPT&lt;/span&gt; &lt;span class="attr"&gt;charset&lt;/span&gt;=&lt;span class="attr"&gt;utf-8&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;="http://widgets.twimg.com/j/2/widget.js"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;SCRIPT&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt; &lt;/pre&gt;
&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&lt;/head&gt;&lt;/pre&gt; 
&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt; true&amp;gt;&lt;/pre&gt;
&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/231/Adding-a-Twitter-Feed-to-CRM-Leads.aspx</guid>
         <pubDate>Mon, 30 Jan 2012 22:10:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM 2011 Date Oriented Solution Versioning</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/234/CRM-2011-Date-Oriented-Solution-Versioning.aspx</link>
         <description>&lt;p&gt;When working with solutions in a project often times I come across a few exports that I made previously. The probably I have is most people never update the version numbers on a solution. You end up with two or more solutions not really knowing what is in one versus another. Granted not knowing exactly what is in one solution versus another is still a problem, but the issue can at least be minimized.&lt;/p&gt;
&lt;p&gt;What I have started doing is setting the solution version numbers based on date timestamps. So for example after working on a WIP (work in progress) solution on my VM I'll set the solution version as a reversed date with the army time such as 2012.01.01.1500. Part of the reason I use this format instead of sequential solutoin versioning is that as far as I can tell there isn't an easy when to know when a solution as last updated. The date next to a solution in an organization shows the first import of the solution. If you make another import that date doesn't change.&lt;/p&gt;
&lt;p&gt;Using reverse date versioning not only do you know when the last time the solution was imported, but when you export the solution the file name will automatically be in a format that sorts in windows explorer. I've seen that there are a couple solutions out on codeplex for automatical versioning of solutions. I haven't tried those out for myself yet. I do know that it is kind of a pain to always have to manually update the solution version manually though.&lt;/p&gt;
&lt;p&gt;In a perfect world there would be a much tighter integration between CRM solutions and TFS so that the seperate components could be tracked and only those things a developer changes are locked/updated in the master tenant solution. This process could also handle the updating of component versions and also solutions as well. I'm sure we'll see some very interesting solutions to these problems as time goes by.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/234/CRM-2011-Date-Oriented-Solution-Versioning.aspx</guid>
         <pubDate>Mon, 30 Jan 2012 03:19:00 +0000</pubDate>
      </item>
      <item>
         <title>The CRM 2011 Multi-Developer Dilemma</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/233/The-CRM-2011-Multi-Developer-Dilemma.aspx</link>
         <description>&lt;p&gt;&lt;b&gt;&lt;font size="5"&gt;&lt;font size="4"&gt;&lt;font color="#4f81bd"&gt;Introduction&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt;&lt;span style="color:black;"&gt;Working on a project with multiple developers can be challenging. It requires collaborate and organization in order to take advantage of tasks that can be done in parallel and keep everyone on the same page. If you’ve ever tried to do this on CRM project you’ll find that as you add more developers to the project you quickly reach a tipping point where it becomes very difficult for them to not step on each other’s toes. &lt;/span&gt;&lt;/div&gt;
&lt;div style="margin:10pt 0in 0pt;"&gt;&lt;b&gt;&lt;font size="5"&gt;&lt;font size="4"&gt;&lt;font color="#4f81bd"&gt;Dancing on someone else’s toes&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt;&lt;span style="color:black;"&gt;&lt;br /&gt;
If you’ve ever heard anything like “Hey I made that form customization yesterday and now it’s gone!” then you know what it’s like trying to work with multiple developers on the same CRM solution. The additive nature of CRM solutions makes it very easy to overlay changes from one WIP (work in progress) solution on top of another developers work. &lt;/span&gt;&lt;/div&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt; &lt;/div&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt;&lt;span style="color:black;"&gt;The typical environment setup is to have a master tenant solution organization and then each developer receive a working copy of that solution on their on VM. As each developer completes a task that work is imported into the master tenant. In some situations work is best done directly on the master tenant out of the risk of work being lost during a WIP solution import.&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin:0in 0in 10pt;"&gt;&lt;b&gt;Task Based Division of Work&lt;br /&gt;
&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;br /&gt;
It makes sense that when working with multiple developers on a project that they ultimately end up taking on certain duties in the project in order to allow them to become more proficient and familiar with that area.&lt;/span&gt; &lt;span style="color:black;"&gt;For example there may be a developer that is assigned with making all the ribbon changes, another dev in charge of upgrading JavaScript from a previous version to the current version, perhaps another developer working on custom web apps. By doing this you also provide for a mechanism to diminish the conflicts that can arise when something that one developer does overwrites something that another developer is working on.&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;
Entity Based Division of Work&lt;/b&gt;&lt;/div&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt;&lt;span style="color:black;"&gt;When multiple developers are working on the same entity there are a couple of ways to help prevent developers from overwriting each other’s changes. If the option is available with multiple lines of business then if multiple user forms are an option then each developer can focus their work on a particular form versus having a single form while showing and hiding tabs/sections based on the user’s role/business unit. The downside of this method is that most likely there will be common elements between each form which will have to be duplicated between the various forms available.&lt;/span&gt;&lt;/div&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt; &lt;/div&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt;&lt;span style="color:black;"&gt;&lt;strong&gt;Technology Based Division of Work&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="line-height:normal;margin:0in 0in 0pt;"&gt;&lt;span style="color:black;"&gt;&lt;span&gt;&lt;br /&gt;
Another way to segment the work on a CRM project is for specialized functionality to be encapsulated into Silverlight or ASP.NET components. These components can be worked on by developers independently while minimizing form customizations. This also can be useful if you have developer on your team that are not highly profecient at CRM. This allows them to focus on their core knowledge base which may be ASP.NET or Silverlight while being assisted by CRM knowledgable developers.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin:10pt 0in 0pt;"&gt;&lt;b&gt;&lt;font size="5"&gt;&lt;font size="4"&gt;&lt;font color="#4f81bd"&gt;Summary&lt;br /&gt;
&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="margin:0in 0in 10pt;"&gt;In my mind if there was a better way to specifically target a solution component and have that work be more closely tied to TFS then it would be easier for developers to work without fear of overwriting . someone else’s changes. The problem is of course that you can export an entity for example, but you can’t just say I want one of its forms , views, reports, etc. If this were possible then the work could be more granularly assigned. Maybe that day will come sometime in the future. For now we have to just be careful and developers need to make sure to stay out of each other’s way.&lt;/div&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/233/The-CRM-2011-Multi-Developer-Dilemma.aspx</guid>
         <pubDate>Mon, 30 Jan 2012 03:09:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM 2011 JavaScript Library Methodology</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/232/CRM-2011-JavaScript-Library-Methodology.aspx</link>
         <description>&lt;p&gt;&lt;b&gt;&lt;font size="5"&gt;&lt;font size="4"&gt;&lt;font color="#4f81bd"&gt;Introduction&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
If you've ever worked on a large CRM project or had to deal with a CRM 4 upgrade of any size you may quickly find yourself in a sea of JavaScript that can begin to look a little overwhelming. Personally I loathe most JavaScript that comes my way because you tend to get these 5 page long methods that do everything, all the field names are hard coded strings and option sets/form event mode constants are all numeric values so you can't just read the code and quickly understand what it is doing. To make matters worse JavaScript is not like coding in C# so there are so many more opportunities for things to go wrong. Since JavaScript is very loose and the tools available at the moment aren't very strong in design time error and dependency checking are not up to par with managed code it will pay big dividends to try and be a little stricter up front when it comes to writing your client side code and keeping those libraries organized.  &lt;/p&gt;
&lt;div&gt;The following is my conceptual working model that I'm working on as I've had to deal with development issues during my travels. Mind you I have not yet had an opportunity to implement this in an actual project yet so let's just call this an philosophical discussion for now.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;b&gt;&lt;font size="5"&gt;&lt;font size="4"&gt;&lt;font color="#4f81bd"&gt;JavaScript Web Resource Functional Breakdown Structure&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;It is helpful to look at your JavaScript library from a top down hierarchical perspective. There is more investment up front in taking the time to organize this way because it requires more strategic thinking about the actual implementation but it pays dividend when the time comes to upgrade or maintain the solution code.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;1 -&amp;gt;Organization -&amp;gt; 2) Entity -&amp;gt; 3) Form -&amp;gt; 4) Function Area&lt;br /&gt;
&lt;br /&gt;
 &lt;/div&gt;
&lt;div&gt;&lt;img alt="" width="396" height="248" src="http://blogs.c5insight.com/Portals/0/BlogImages/Stephan/JavaScript Structure.PNG"/&gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;/div&gt;
&lt;div&gt;Splitting the JavaScript files down in this way has several advantages:&lt;/div&gt;
&lt;ol type="1"&gt;
    &lt;li&gt;Keeps the code organized by functional concern and helps to reduce code duplication.&lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Splitting the code into files in this way allows for easier concurrent development in a multi-developer environment. When everything is in a few files then developers have to wait until the file is checked back in by someone else.&lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Reduces conceptual complexity by breaking down the functionality by area of concern. How easy is to read a 2 mile long JavaScript file?&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;As you can imagine the premise with this structure is that any code that is applicable to all entities should be put into the organization level file. Any code that is specific to a particular entity is put into the entity specific file and so on. The break down structure is really more of an tactical ideal than "the way" to do it. I'm not saying break all files down to the absolute bottom. It just depends on the side the problem you are trying to solve. I know in certain situations for example on the opportunity entity that there can be so much code that it made sense to break down the code into the bottom most layer of functional area.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;b&gt;&lt;font size="5"&gt;&lt;font size="4"&gt;&lt;font color="#4f81bd"&gt;JavaScript Library Organization and Standards&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;span style="font-size:small;"&gt;&lt;b&gt;C# coding standards versus JavaScript coding standards&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;It has been very tempting to just use C# coding standards when it comes to method and variable naming. For example in JavaScript you’re your method names are supposed to start in lower case letters whereas in C# method names begin with Upper case letters. Since we are dealing with JavaScript I would say it’s best to stick with JavaScript coding practice. It doesn’t help though that when you go to add an event to a form field that the event names are camel case such as OnChange versus onchange.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;span style="font-size:small;"&gt;&lt;b&gt;Use of JavaScript name spaces to encapsulate solution code&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;If you look at the CRM JavaScript object model you’ll notice that the root object Xrm is actually just a JavaScript namespace. Underneath Xrm you get down to the methods that Microsoft has created to obfuscate you away from the actually code implementation. I think that it would be helpful to do the same when writing code for a solution. Instead of just having a file with a bunch of methods in it why not organize it similar to how you would in C#. This also has the added advantage of giving you the ability to use Visual Studio’s intellisense.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;span style="font-size:small;"&gt;&lt;b&gt;Don’t hard code everything&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;JavaScript is a pain as it is since it doesn’t have the same compile time error checking as C#. So if you’ve ever come across a large library with field names hardcoded everywhere you know what I’m talking about. I believe in keeping the same standard for your JavaScript as your C# code. Hard coded field names, option set values and form event enumerations are not very friendly to the developer that has to come in behind you to make code changes. As it is called in Agile terminology this is what is referred to as “technical debt”. There is a mess on the floor in the kitchen. Everyone can see the mess but no one want to clean it up out of fear they may break something that “already works”. Just don’t make the mess in the first place and no one has to worry about it later.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;b&gt;&lt;font size="5"&gt;&lt;font size="4"&gt;&lt;font color="#4f81bd"&gt;Summary&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;JavaScript libraries in CRM can quickly become a beast to manage. While the amount of JavaScript necessary in solution for CRM 2011 is much less than it was in CRM 4 it can still be a force to be reckoned with and shouldn’t be taken lightly. As I continue down this path of JavaScript philosophy I’ll probably post a more detailed account of actually implementing this in practice.&lt;/div&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/232/CRM-2011-JavaScript-Library-Methodology.aspx</guid>
         <pubDate>Mon, 30 Jan 2012 02:25:00 +0000</pubDate>
      </item>
      <item>
         <title>Considerations for a Dynamics CRM 2011 AutoGroupManagementOff Installation</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/230/Considerations-for-a-Dynamics-CRM-2011-AutoGroupManagementOff-Installation.aspx</link>
         <description>&lt;p&gt; &lt;/p&gt;
&lt;p&gt;The installation of Dynamics CRM 2011 in tightly controlled multi-domain Active Directory environments can be a real challenge. Dynamics CRM’s tight integration with Active Directory (AD) is a double-edge sword: having built-in Kerberos single-sign on (SSO) for end-users is a big win for organizations using the Microsoft AD for desktop authentication, but the extraordinary permissions required by the CRM Installation Wizard to setup the directory groups and create SQL databases can be difficult to collect in an enterprise-class environment. The easiest way to install CRM is for the installer to have &lt;i&gt;Domain Admin&lt;/i&gt; in the AD and &lt;i&gt;SysAdmin&lt;/i&gt; in the SQL Server, unfortunately in a large organization, it can be impossible to find a single person (or account) invested with such omnipotence. Fortunately you can specify groups that already exist using the &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/hh699703.aspx"&gt;command-line installation option&lt;/a&gt; and a configuration file.&lt;/p&gt;
&lt;p&gt;The &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/hh699706.aspx"&gt;Dynamics CRM Installation Guide&lt;/a&gt; has a description of the services, components and the four AD groups:&lt;/p&gt;
&lt;table border="0" cellspacing="0" cellpadding="0"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="225"&gt;
            &lt;p&gt;&lt;strong&gt;Group&lt;/strong&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="top" width="802"&gt;
            &lt;p&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="225"&gt;
            &lt;p&gt;PrivReportingGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="top" width="802"&gt;
            &lt;p&gt;Privileged Microsoft Dynamics CRM user group for reporting functions. This group is created during Microsoft Dynamics CRM Server Setup and configured during Microsoft Dynamics CRM Reporting Extensions Setup.&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="225"&gt;
            &lt;p&gt;PrivUserGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="top" width="802"&gt;
            &lt;p&gt;Privileged Microsoft Dynamics CRM user group for special administrative functions; including CRMAppPool identity (domain user or NetworkService). The users who configure Microsoft Dynamics CRM Server 2011 must be added to this group.&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="225"&gt;
            &lt;p&gt;SQLAccessGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="top" width="802"&gt;
            &lt;p&gt;All server processes/service accounts that require access to SQL Server; including CRMAppPool identity (domain user or NetworkService). Members of this group have db_owner permission on the Microsoft Dynamics CRM databases.&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="225"&gt;
            &lt;p&gt;ReportingGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="top" width="802"&gt;
            &lt;p&gt;All Microsoft Dynamics CRM users are included in this group. This group is updated automatically as users are added and removed from Microsoft Dynamics CRM. By default, all Microsoft Dynamics CRM Reporting Services reports grant Browse permission to this group.&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;A strong case can be made for pre-creating the four Active Directory groups that CRM uses:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;The installer does not need to have AD Create permissions as most AD administrators are reluctant to giving them out.&lt;/li&gt;
    &lt;li&gt;The default CRM groups names include a 32 character GUID, which makes it difficult to distinguish and manage in the typical DEV/TEST/PROD installation scenario.&lt;/li&gt;
    &lt;li&gt;Some organizations have naming standards that work with automated audit and security tools, so the AD team will require a particular prefix or convention.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Even with pre-created groups though, regulations like SOX and PCI may dictate that an organization maintain centralized access control. By default, Dynamics CRM will automatically add and remove CRM users in the AD &lt;i&gt;ReportingGroup&lt;/i&gt; group. In situations where adding users to groups is centrally administered, Dynamics CRM cannot automatically add new users to the AD group. This configuration requires the AutoGroupManagementOff parameter to be specified in the installation configuration files (&lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/hh699830.aspx"&gt;CRM Server&lt;/a&gt; and &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/hh699826.aspx"&gt;Reporting Extensions&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;There are a number of considerations and additional steps required for an AutoGroupManagementOff installation when using domain accounts to run the CRM services (the recommended approach). CRM has four service accounts, SQL Server can use another 2-6 service accounts and the CRM Email Router should have its own service account. That means &lt;i&gt;each&lt;/i&gt; environment can require over 10 Active Directory user accounts and four groups and you are also responsible for making sure the correct users are added to the correct groups. The permutations quickly start adding up.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Note: you also have to consider multi-domain issues if the DEV environment is in a different domain than PROD. This may require you to create additional user accounts for your installer and developer users. You will want to determine if cross-domain access issues will prevent you from connecting to the CRM server.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;The final piece of the puzzle is ensuring the correct service accounts are members of the right groups. I have found that there is conflicting and incorrect documentation regarding the group membership requirements. The table below lists the user accounts needed in each group:
&lt;table border="1" cellspacing="0" cellpadding="0"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td valign="bottom" width="308"&gt;
            &lt;p&gt;&lt;b&gt;AD Group&lt;/b&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="bottom" width="692"&gt;
            &lt;p&gt;&lt;b&gt;&lt;i&gt;Computer&lt;/i&gt;&lt;/b&gt;&lt;b&gt; and User Accounts&lt;/b&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="bottom" width="308"&gt;
            &lt;p&gt;PrivUserGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="bottom" width="692"&gt;
            &lt;p&gt;&lt;i&gt;CRM Server&lt;/i&gt;, AsyncService, CrmService, DOMAIN&amp;#92;&lt;/p&gt; 
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="bottom" width="308"&gt;
            &lt;p&gt;SQLAccessGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="bottom" width="692"&gt;
            &lt;p&gt;&lt;i&gt;CRM Server&lt;/i&gt;, AsyncService, CrmService&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="bottom" width="308"&gt;
            &lt;p&gt;ReportingGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="bottom" width="692"&gt;
            &lt;p&gt;All production CRM users&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="bottom" width="308"&gt;
            &lt;p&gt;PrivReportingGroup&lt;/p&gt;
            &lt;/td&gt;
            &lt;td valign="bottom" width="692"&gt;
            &lt;p&gt;SSRS Service Account&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;A key piece that seems to have been overlooked is the requirement that the AsyncService be a member of the &lt;i&gt;PrivUserGroup&lt;/i&gt; and &lt;i&gt;SQLAccessGroup&lt;/i&gt; groups. If this is omitted the service account cannot login to the SQL Server and the Async services will not start. There are also several errors in the event log, one of which refers to the missing CrmKey:&lt;/p&gt;
&lt;p&gt;Exception type: CrmConfigObjectNotFoundException   &lt;br /&gt;
Exception message: CrmKey With Id = 00000000-0000-0000-0000-000000000000 Does Not Exist&lt;/p&gt;
&lt;p&gt;One special service account not listed above is the DeploymentService. According to the documentation, this service is required for using the Deployment Web Service or Windows PowerShell. Accordingly, this service requires very elevated privileges:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Local Admin on the CRM Server&lt;/li&gt;
    &lt;li&gt;Local Admin on the SQL Server&lt;/li&gt;
    &lt;li&gt;SysAdmin server role in the database&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Considering how many accounts, groups and administration steps are involved with the AutoGroupManagementOff installation, it may be helpful to create a spreadsheet to help track the details. A sample spreadsheet is shown below:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/708e74aa6285_60E9/CRM_Users_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="CRM_Users" border="0" alt="CRM_Users" width="244" height="213" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/708e74aa6285_60E9/CRM_Users_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I hope this information helps your planning and installation go smoothly.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/230/Considerations-for-a-Dynamics-CRM-2011-AutoGroupManagementOff-Installation.aspx</guid>
         <pubDate>Fri, 27 Jan 2012 18:06:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM 2011 and Outlook: 5 Functions Everybody Should Use</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/227/CRM-2011-and-Outlook-5-Functions-Everybody-Should-Use.aspx</link>
         <description>&lt;p&gt;Outlook integration is an important part of CRM functionality - and the key reason why many organizations choose Microsoft Dynamics CRM over competitive CRM products.  In the first two parts of this series, we walked through how to decide which version of Dynamics CRM to use (Outlook or Web).  In this part, we look at 5 pieces of Outlook integration that you should use regardless of which version of CRM you choose.&lt;/p&gt;
&lt;h1&gt;(1) Install CRM for Outlook&lt;/h1&gt;
&lt;p&gt;To use any of the functionality described in this article, you first need to install CRM 2011 for Outlook on your PC.  Some important items to note:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;When you install CRM 2011 for Outlook, items that users create in CRM will automatically sync with Outlook.  This includes contacts, appointments and tasks.  If you are using a mobile device that syncs with Outlook then these items, in turn, will sync with your mobile device.  This alone can be a very important point of integration – many business people rely on Outlook and their mobile device to quickly find contacts, to keep up with scheduled appointments, and to manage their task list.&lt;/li&gt;
    &lt;li&gt;Installing CRM 2011 for Outlook installs the functionality described in the earlier article titled 6 Reasons to Use Dynamics CRM 2011 for Outlook (a link the article is below).  You do not, however, need to use this functionality.  Before installing CRM 2011 for Outlook, you should familiarize yourself with the two articles earlier in this series and determine which version of CRM you will use.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;(2) Set Regarding and Track&lt;/h1&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-and-OutlookPart-3-of-3-Integrat_DD19/image_4.png"&gt;&lt;img style="background-image:none;border-right-width:0px;margin:0px 6px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="CRM 2011 for Outlook Ribbon Menu" border="0" alt="CRM 2011 for Outlook" align="left" width="244" height="99" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-and-OutlookPart-3-of-3-Integrat_DD19/image_thumb_1.png"/&gt;&lt;/a&gt;Using the “Track” and “Set Regarding” buttons is one of the simplest, but most powerful, points of integration between CRM and Outlook.  These buttons enable you to “push” an email, task, appointment or contact from Outlook into CRM.  Once a record has been pushed from Outlook into CRM, it will automatically be kept in sync.  Most of us track a tremendous amount of our interactions with customers and other stakeholders in Outlook – in the form of email, appointments and, sometimes, tasks – using these buttons to push information into CRM means that these important interactions can be saved, tracked and shared across the organization while requiring very little additional effort on your part.&lt;/p&gt;
&lt;p&gt;When you click the “Track” button, CRM automatically looks at all of the email addresses in the Outlook record you are tracking (in the from/to/cc/bcc fields for emails, and in the required/optional attendee fields on appointments) and links the Outlook record to all of those related records in CRM.  So, for example, if you have an appointment with 3 required attendees, you will be able to find the appointment under all of those contacts, leads or users inside of CRM (for a visual example of this, see the CRM Pane in item #3, below).&lt;/p&gt;
&lt;p&gt;As a best practice, we always recommend using the “Set Regarding” button rather than the “Track” button.  The Set Regarding button does everything that the Track button does, plus a little bit more.  By clicking Set Regarding, you can create an additional link to the record you are tracking.  Think of this in the same way as you think of the “Subject” or “Regarding” field in a business memo.  For example, you may send an email to 3 people with an update on an Opportunity; you can click the “Set Regarding” button and link the record to the Opportunity.  Now, when you look at the Opportunity or any of the Contacts, Leads or Users who were included in the email, you will see the email in the list of activities.&lt;/p&gt;
&lt;p&gt;Note that when viewing Contacts in Outlook, you have a “Set Parent” button rather than a “Set Regarding” button.  This is because a contact can’t be “regarding” anything other than an account.  As above, the best practice is generally to always use the “Set Parent” button and not the “Track” button, so that all of your contacts will be related to a parent company (one exception is for business-to-consumer organizations that do not necessarily track the company that a contact works for).&lt;/p&gt;
&lt;h1&gt;(3) The CRM Pane and the Outlook People Pane&lt;/h1&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-and-OutlookPart-3-of-3-Integrat_DD19/SNAGHTML1a65365.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 0px 0px 10px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" title="CRM 2011: The CRM Pane in Microsoft Outlook" border="0" alt="CRM Pane in Outlook" align="left" width="240" height="167" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-and-OutlookPart-3-of-3-Integrat_DD19/SNAGHTML1a65365_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;CRM 2011 for Outlook adds a “CRM Pane” to each Outlook record that is tracked in CRM.  This pane includes links to every record in CRM that is associated with the Outlook record.  This can be a big time saver when, for example, you need to quickly find a contact’s phone number in CRM in order to quickly follow-up on an email, or in order to find an address when preparing to drive to a meeting.  In the nearby image, you see the CRM Pane that appears below a tracked email. In this pane, you can click on the “Regarding” item (in this case, a campaign record), or on the contacts and users that the record is linked to in order to be taken directly to those records in CRM.&lt;/p&gt;
&lt;p&gt;Below the CRM Pane, you can see the Outlook People Pane.  This functionality is available in Outlook without CRM – but it significantly enhances CRM functionality.  Using the People Pane, you can see all the recent social interactions with the individuals that an email or appointment is regarding (assuming that you are friends with them on LinkedIN, Facebook or other popular social networking sites).  You can also see all the recent activities associated with this person in Outlook (such as appointments and emails).  It’s a great way to quickly catch up on the latest information about a person while you are on a call.&lt;/p&gt;
&lt;h1&gt;(4) Email Templates, Sales Literature and KB Articles&lt;/h1&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-and-OutlookPart-3-of-3-Integrat_DD19/image_6.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 10px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" align="left" width="180" height="85" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-and-OutlookPart-3-of-3-Integrat_DD19/image_thumb_2.png"/&gt;&lt;/a&gt;When sending an email from Outlook, if you track it, you will be able to insert any of the email templates, sales literature or KB articles that are in CRM.  If you frequently have to send the same information to customers, this can be a tremendous time saver. &lt;/p&gt;
&lt;p&gt;In most other CRM systems (including earlier versions of Microsoft CRM) you had to open a CRM record and send the information using a web form to send the email.  This was time consuming and required users to understand another interface for sending email.  By having access to these buttons directly within an Outlook email form, you can have access to powerful CRM functionality without ever leaving Outlook.&lt;/p&gt;
&lt;h1&gt;(5) Convert To and Add Connection&lt;/h1&gt;
&lt;p&gt;These last two functions are not used as often but, depending upon your area of responsibility and some of your usage requirements, they can be quite handy.&lt;/p&gt;
&lt;p&gt;The Convert To button is available on records in Outlook that have been tracked in CRM.  It allows you to convert a record into a Lead, Opportunity or a Case.  Many of the activities that a business tracks about their customers and prospects are designed to engage the prospect in a new opportunity, or to provide service to an existing customer.  The Convert To button saves a lot of time when an activity results in a new record of this type – just click “Convert To,” pick the record type, and the new record is created for you.&lt;/p&gt;
&lt;p&gt;Connections are new in CRM 2011; they allow you to connect almost any two records in CRM to one another.  For example, one account can be connected to another with the role of “distributor” so that you can see which customers are buying from which distributors.  The “Add Connection” button in CRM 2011 for Outlook can be used in a number of ways, here are two examples:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;In large businesses, multiple different users may want to “own” the same contact so that it will sync with their Outlook.  Using the Add Connection button in combination with Outlook filters, you can connect yourself to a CRM contact that is owned by someone else, and have it automatically sync with your list of contacts in Outlook.&lt;/li&gt;
    &lt;li&gt;Some businesses need to track emails with specific content into CRM, and be able to quickly find them.  This, for example, may include the final version of a proposal.  In this case you could: (1) add a connection to an email, (2) connect it to an opportunity, and (3) set the connection role to be “Proposal”.  Now the proposal is easy to fund under the opportunity even if you’ve regarded hundreds of emails to the opportunity.&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;Wrap Up&lt;/h1&gt;
&lt;p&gt;Are you using CRM exclusively through the web – without any of the Outlook integration at all?  Then you’re missing out on the improved productivity, stronger collaboration (resulting in better customer experiences and improved sales win rates) and clearer management reporting (resulting in more proactive decision making and coaching) that can be achieved at no additional cost and with a nominal learning curve for end users.&lt;/p&gt;
&lt;p&gt;In the previous articles in this series, we discussed which version of CRM makes the most sense for each organization, and we provided a recommended approach to training to ease users into the Outlook functionality.  For the previous two articles in this series see:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a rel="nofollow" title="Microsoft Dynamics CRM 2011 Web Client" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/222/4-Reasons-to-Use-the-Microsoft-CRM-2011-Web-Client.aspx"&gt;Part 1: 4 Reasons to Use the Microsoft CRM 2011 Web Client&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a rel="nofollow" title="Microsoft Dynamics CRM 2011 for Outlook" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/218/CRM-and-Outlook-6-Reasons-to-Use-CRM-for-Outlook.aspx"&gt;Part 2: 6 Reasons to Use Dynamics CRM 2011 for Outlook&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt; &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/227/CRM-2011-and-Outlook-5-Functions-Everybody-Should-Use.aspx</guid>
         <pubDate>Mon, 02 Jan 2012 19:27:00 +0000</pubDate>
      </item>
      <item>
         <title>A Slice of CRM Coding Philosophy</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/226/A-Slice-of-CRM-Coding-Philosophy.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/My-CRM-Coding-Philosophy_1299C/images_2.jpg"&gt;&lt;img title="images" border="0" alt="images" align="left" width="152" height="120" style="background-image:none;border-right-width:0px;margin:0px 5px 1px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/My-CRM-Coding-Philosophy_1299C/images_thumb.jpg"/&gt;&lt;/a&gt;Every developer has their own style of writing code. I'm sure I'm not the only person that has inherited code from someone else only to make grimacing faces when you open it up in Visual Studio. I will admit that sometimes I want to slap people for what they have handed over to me but I'm sure someone has wanted to slap me a time or two as well. If you are like most developers you will have the immediate urge to "fix" this code to bring it up to your "standards". I'm no different. Not that I claim to be the swami of coding standards. I'm always learning and getting better but I think I am not bad compared to stuff I've seen. Here are a few of my philosophies. I have to say that a book that I read called Clean Code by &lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/Robert-C.-Martin/e/B000APG87E/ref=sr_ntt_srch_lnk_1?qid=1325382072&amp;sr=8-1"&gt;Robert C. Martin&lt;/a&gt; has really made an impact on my thought process. I think in general we get so caught up in the work of writing code that we step back and think about how we are writing code. When it comes to coding with CRM 2011 I have some basic thoughts on what things should look like.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Let the code tell the story&lt;/b&gt;&lt;b&gt; &lt;br /&gt;
&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Unfortunately when I inherit someone else's code I see one huge method that requires me to hit the page down button a few times to see it all. This is one of my big gripes and plan on running for president of stop doing that crap to other people... organization. Even if you have comments in your code which is rare, if you are doing 50 different things all in one method then its harder to read when the poor smuck that gets stuck with your work after you are gone. Don't do that to them (or me)! Here is my main guideline for code:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Every method has a job and only one job. If you have to hit page down to see the whole method you either need a bigger monitor or you are doing too much.&lt;/li&gt;
    &lt;li&gt;Use verbose names that actually mean something and tell the story. Variable x doesn't mean jack to me or anyone else. Name your methods with the thing it's actually doing even if it tends to get long. I should be able to go into a main method and "read" what the application is doing. Let the variables and the method names become part of your documentation. If you do this then comments become less of a necessity, but I still don't mind if you leave me some.&lt;/li&gt;
    &lt;li&gt;Don't do all your work in your plugin Execute method or JavaScript event methods. I don't like to do my work in the event methods because that is where I want to start telling my code story. Event methods should call other methods to do the work. If you do it this way then when the next person that comes along needs to do something else they just have to add a new method call above or below yours. Does that make sense?&lt;/li&gt;
    &lt;li&gt;Don't hard code attribute names in your plugins or custom applications. If you are going to use late binding then at least declare your attributes names as constants. I absolutely can't stand looking at a custom app or plugin with 50 million hard coded attribute names all over the place.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;b&gt;Keep It Simple Stupid (KISS)&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Every problem has more than one solution. If you don't think so then you either don't understand the problem well enough or you don't have a full grasp of the possible solutions. Perhaps the problem isn't even defined correctly in the first place. The point is don't make things more complicated than it needs to be. I inherited an application where the previous developer had written a custom ASP.NET application that was hosted in an iFrame of a form. In the host web page the developer retrieved an XML web resource from the server that contain a list of servers and then this was used to compile a URL to redirect the current page to the custom web application. Not only that but the developer invoked an ActiveX control to parse the XML file to get the settings. This seemed a little overly complex for just pointing the user at the right URL for the custom application besides the fact that the custom web app shouldn't be dependent on what CRM server we are on.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Question Your Conclusions (at least once)&lt;/b&gt;&lt;b&gt; &lt;br /&gt;
&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Like I said there are multiple solutions to a problem. You may come up with some good ones, but there are always more. Maybe the best way to go is with an ASP.NET application. It's probably better to go with a Silverlight solution but sure I'll take go with it. The more complex your solution the less likely it is the most appropriate solution. Ask yourself and someone else who you know won't sugar coat their opinions. If you're in a team situation then this problem won't be too much of a problem.&lt;/p&gt;
&lt;p&gt;This is just some of the things that go through my mind on projects. I'm in the process of coming with a more formalized development philosophy and strategy when it comes to multiple developer CRM projects so stay tuned and I'll float something out there shortly. Hope that this little byte of thought was at the least something to get you through your morning cup of coffee/hot pocket.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/226/A-Slice-of-CRM-Coding-Philosophy.aspx</guid>
         <pubDate>Sun, 01 Jan 2012 08:09:00 +0000</pubDate>
      </item>
      <item>
         <title>Dynamics CRM 2011 Custom Applications - Silverlight vs. ASP.NET</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/225/Dynamics-CRM-2011-Custom-Applications-Silverlight-vs-ASP-NET.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Microsoft-Dynamics-CRM-2011-Custom-A.NET_120FF/images_2.jpg"&gt;&lt;img title="images" border="0" alt="images" align="left" width="92" height="69" style="background-image:none;border-right-width:0px;margin:0px 5px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Microsoft-Dynamics-CRM-2011-Custom-A.NET_120FF/images_thumb.jpg"/&gt;&lt;/a&gt;If you've done any kind of customization work on Dynamics you've probably run into a situation at some point where the needs arises to create a custom application to suit the need. The debate that I always here is should it be done in ASP.NET or Silverlight. When I first started getting involved in CRM projects I didn't really have a strong opinion either way. I wasn't really up to speed on Silverlight either so I had a knowledge gap influencing my “shoulder shrug” treatment of the issue. Now that I know a thing or two more my opinion has shifted.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;ASP.NET&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;The thing that bugs me the most about custom ASP.NET application is the fact that it really needs to run in a separate website. You can play around with running your ASP.NET directly inside the CRM website (perhaps using the ISV folder or a virtual directory), but this usage has been deprecated by Microsoft. To make matters worse if you want to try and use third party controls in your ASP.NET application like Infragistics or Telerik inside the CRM application pool you can pretty much kiss that idea goodbye. The CRM application pool runs in Classic managed pipeline mode so unless you know something I don't (which is certainly possible) the third party controls had problems when I attempted this myself. Granted maybe there was a way to get them working but it wasn't a battle I needed to fight at the time.&lt;/p&gt;
&lt;p&gt;So when you do these external apps Microsoft wants you to create a whole new website and run it in a different application pool. This process in itself just doesn't feel clean to me. I understand the premise but the fact that I have to go out of my way is irritating. The other thing that is problematic is that by running your app on a separate port you introduce cross site scripting issues.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Silverlight&lt;/b&gt;&lt;b&gt; &lt;br /&gt;
&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Admittedly I avoided Silverlight in the beginning because I felt like it was more fluff and it wasn't something I wanted to bother having to learn. I kept hearing about XAML and I thought that was just one more thing to have to learn as well. But then I came across a situation where I had no choice but to dive in with both feet and get it under my belt. My learning curve was surprisingly low. I had done some Windows Forms development in the past and found Silverlight was very similar. Also the project I was working on used Infragistics and I was already familiar with the object model of their controls for Windows Forms so picking up the Silverlight version wasn't too bad. This is all fine, but that's not what got me on Silverlight.&lt;/p&gt;
&lt;p&gt;I have written ASP.NET for Dynamics and now that I have written Silverlight for Dynamics I don't think that in most situations that I would go with ASP.NET. So what are the benefits of using Silverlight over ASP.NET? Here are a few of the pros I can think of off the top of my head.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Silverlight application it can be added to the solution as a web resource which is huge.&lt;/li&gt;
    &lt;li&gt;Your Silverlight application runs when the user is running offline from the CRM system.&lt;/li&gt;
    &lt;li&gt;Silverlight applications run within the CRM web service so you get access to the form context.&lt;/li&gt;
    &lt;li&gt;The complexity of an automated build process is reduced by not having to worry about setting up external web sites.&lt;/li&gt;
    &lt;li&gt;Silverlight running in the context of the web service makes your cross site scripting issues go away.&lt;/li&gt;
    &lt;li&gt;You don't have to install any third party tools on your servers.&lt;/li&gt;
    &lt;li&gt;Silverlight can run in browser or out of browser and with some policy adjustments gain access to client side resources.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;The Argument against Silverlight&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;So even though Silverlight is great and cool there are still people who hesitate to deploy it in their solution for different reasons. One reason I've heard is "We don't have anyone on staff that knows Silverlight.". Okay that's fine. But it's not so hard to learn to make it impossible to use it. The more interesting reason I've heard comes from the question of Silverlight's future. What is going to happen? Is Microsoft going to abandon the Silverlight baby and we'll all be stuck with a dead technology?!!!! No I don't see that happening. Besides Microsoft just came out and said they are supporting Silverlight for the next 10 years.&lt;/p&gt;
&lt;p&gt;No I don't think Silverlight is going to die. Yes I know about HTML5. While it certainly will be a nice enhancement to us all it still isn't a real technology yet. I still don't see how HTML5 is going to replace our RIA technologies completely especially for line of business type applications. It is very nice to be able to write managed code with a powerful editor such as Visual Studio. Believe me I've toyed around with the idea of writing custom web apps with just HTML, CSS and JavaScript, but I like my run time error checking.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Summing it up&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Silverlight is awesome. ASP.NET is fine, but in the case of custom application I will have to lean towards Silverlight unless there is some institutional or compelling reason not to. I think there are too many benefits that outweigh the cons. In my humble opinion you should go for Silverlight apps in your solutions and go for ASP.NET apps only if it becomes necessary.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/225/Dynamics-CRM-2011-Custom-Applications-Silverlight-vs-ASP-NET.aspx</guid>
         <pubDate>Sun, 01 Jan 2012 07:35:00 +0000</pubDate>
      </item>
      <item>
         <title>Activity Feeds, CRM 2011 Online and Windows Phone</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/224/Activity-Feeds-CRM-2011-Online-and-Windows-Phone.aspx</link>
         <description>&lt;h1&gt;What are Activity Feeds?&lt;/h1&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Activity-Feeds-and-Windows-Phone_104FB/SNAGHTMLdc54abd.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" title="CRM 2011 Activity Feeds for Windows Phone - Password Changed Error" border="0" alt="Password Changed Error on CRM 2011 Activity Feeds for Windows Phone" align="left" width="240" height="139" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Activity-Feeds-and-Windows-Phone_104FB/SNAGHTMLdc54abd_thumb.png"/&gt;&lt;/a&gt;Activity feeds are the newest social networking addition that Microsoft has made to Dynamics CRM 2011.  They work in a similar manner to Facebook, LinkedIN or other social networks.  Each record type (i.e. Leads, Accounts, Contacts, Opportunities, Users – and other record types that your administrator specifies) gets a “wall” as the first tab on the record form.  From the wall, users can “Follow” a record.  Whenever a significant action happens on that record (i.e. an opportunity is added, a phone call is completed, a field is updated), the record wall is automatically updated with information about the action that was taken.  Users can also post messages directly on record walls (i.e. “I know the CFO at this company, check with me before sending them a proposal.”).  The “what’s new” area consolidates all the wall postings for all of the records that a user is following.  Again, this is very similar to Facebook (I can follow another person, they can post on my wall or their wall, and I can see the postings on my main page for Facebook). &lt;/p&gt;
&lt;p&gt;This is a fantastic way for individuals to keep up with what’s going on in CRM without having to get dozens of “email alerts” and without having to scour all of the records in CRM that someone is trying to keep up with.  Sales Managers use this to quickly see what their team is up to and to offer quick advice and tips to keep momentum in the pipeline.  In our organization, we have a Project entity with a wall – all participants on each project are setup to follow their projects so that they can get quick updates about their project.  Some of the benefits of activity feeds are not self-evident when you initially start to play around with them – spend some time with them (and, if you’re an administrator, take the time to figure out how to enable them for other entities and to setup workflows with custom automated activity feeds).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Bottom line: if you’re not using Activity Feeds yet, you’re missing an important productivity accelerator!&lt;/strong&gt;&lt;/p&gt;
&lt;h1&gt;Using Activity Feeds on your Windows Phone&lt;/h1&gt;
&lt;p&gt;When Microsoft added activity feeds to CRM, they also added a Windows Phone application that gives you mobile access to your activity feeds.  This is a great way to quickly see the important happenings with your customers, prospects and other stakeholders even when you can’t be at your PC regularly.  It also includes the ability to find and subscribe to any records that have been enabled for activity feeds (which means you have read only access to some information about your Leads, Contacts, Accounts – and any other records that your organization uses with activity feeds).&lt;/p&gt;
&lt;p&gt;To get the application, you’ll need a Windows Phone (Microsoft will likely roll it out on other devices in the future – but I recently upgraded from an iPhone to a Windows Phone and am very happy with it).  Next, you’ll need to visit the Marketplace on your phone and download “Dynamics CRM” (with the publisher being Microsoft Corporation); it’s a free app.  Start the app and run through the configuration (see below if you’re using CRM Online, or see your administrator if you’re hosted internally).  Each time you open the app in the future, it will download the latest updates for your wall.  Sweet!&lt;/p&gt;
&lt;h1&gt;The Workaround for the CRM 2011 Online Bug with Activity Feeds&lt;/h1&gt;
&lt;p&gt;If you’re using CRM 2011 Online, you’ll likely get a frustrating error (something like “password changed”) when you try to configure it the first time.  I expect Microsoft will fix this error in the near future, so try setting it up as you typically would first and, if you get the error, follow the instructions below for the fix.&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Enter your CRM user name and password.&lt;/li&gt;
    &lt;li&gt;Set “CRM Server” to “Custom” (not to “Microsoft Dynamics CRM Online”).&lt;/li&gt;
    &lt;li&gt;For the Server URL, enter the URL that you were given by Microsoft for your instance of Microsoft CRM (it is typically something like: &lt;a rel="nofollow" target="_blank" href="https://yourcomanyname.crm.dynamics.com"&gt;https://yourcomanyname.crm.dynamics.com&lt;/a&gt;).&lt;/li&gt;
    &lt;li&gt;Leave the Home Realm URL blank and click the next (or arrow) button.&lt;/li&gt;
&lt;/ol&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/224/Activity-Feeds-CRM-2011-Online-and-Windows-Phone.aspx</guid>
         <pubDate>Sat, 31 Dec 2011 00:29:00 +0000</pubDate>
      </item>
      <item>
         <title>A Slightly Tricky CRM 2011 SDK Silverlight Deployment Anomaly</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/223/A-Slightly-Tricky-CRM-2011-SDK-Silverlight-Deployment-Anomaly.aspx</link>
         <description>&lt;p&gt;&lt;img align="left" width="138" height="190" style="margin:0px 5px 0px 0px;display:inline;float:left;" alt="" src="http://jammcoaching.com/wp-content/uploads/2011/06/mr-bill-ohh-nooo1.jpg"/&gt;So imagine you’ve created this awesome Silverlight application. The app works great and everyone’s happy. In this particular case the client was using an automated build tool called Anthill which is how they deploy their CRM solutions. The later versions of the CRM SDK have a deploy function where you can have your code in TFS and deploy your plugins and web resources straight from your project after pointing the Visual Studio CRM Explorer add-in to a specified server and organization. This all sounds great until I get a call saying that my wonderful Silverlight application isn’t working.&lt;/p&gt;
&lt;p&gt;Distraught and aggravated I start contemplating would could have possible gone wrong. What could I have possibly done wrong? As it turns out when I go to the deployment server the Silverlight control decided to not show up in a matter of speaking. Just to give some background this is a Silverlight control hosted in an HTML web resource displayed in the form content iFrame from a navigation link. The page shows up just fine, but my control isn’t loading. Weird…&lt;/p&gt;
&lt;p&gt;CRM stores web resources in its SQL Server database. When you create an HTML web resource it changes the Silverlight object tag and encodes the parameter information so it isn’t the same as what you may have uploaded. After a conversation with a Microsoft engineer I became concerned thinking that either the XAP file could be corrupted in the database or the encoding was somehow was messed up in my object tag. At first I couldn’t see anything wrong. Everything appeared to be in order.&lt;/p&gt;
&lt;p&gt;The following is the process I underwent to discover the problem:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Checked to see if the Silverlight control was functioning correctly:
    &lt;ol&gt;
        &lt;li&gt;Placed the Silverlight control directly on the form.&lt;/li&gt;
        &lt;li&gt;Opened the Silverlight control directly from the web resource dialog.&lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;Check to see if the host web page was displaying correctly:
    &lt;ol&gt;
        &lt;li&gt;Updated the HTML to view changes were updating in iFrame.&lt;/li&gt;
        &lt;li&gt;Debugged the Silverlight object tag to ensure that the parameters were still set correctly and they appeared to be good.&lt;/li&gt;
        &lt;li&gt;Overwrote the HTML with a known working copy to check if something was corrupted.&lt;/li&gt;
        &lt;li&gt;Used Fiddler to see if anything stood out watching IE’s server calls.&lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;Check to see if I could reproduce the problem on another system:
    &lt;ol&gt;
        &lt;li&gt;Imported the solution to my test VM and everything worked fine.&lt;/li&gt;
        &lt;li&gt;Created new test org on my VM and used the Visual Studio deploy operation and BOOM! Nadda.&lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As it turns out when I used the deploy function my control would never display on the host page. This was particularly perplexing because it was a difficult to determine the problem. I recalled one of my coworkers stating a problem he had using the deploy mechanism to reload an existing org. He mentioned that another developer had manually unregistered and reregistered a plugin assembly and that he couldn’t use the deploy process anymore because it was complaining that the guid’s were not the same. In TFS we keep a copy of the org customizations that we import separately before we use the deploy function. When I looked in this solution I couldn’t find my host web page or my Silverlight control although the deploy process was creating them on it’s own. I added my host web page and Silverlight control to that solution and everything started working.&lt;/p&gt;
&lt;p&gt;Don’t take this to the bank but, here is my observation and conclusion. The host HTML page and Silverlight control were not in the solution that was being imported into the target organization. The deployment process would take what it saw needed to be on the server and deploy them as new web resources. I believe the problem has something to do with the Silverlight XAP file being stored in the database with a specified id. The encoded HTML page was pointing at that particular Id, but the Id changed because the XAP file was not part of the solution. After adding the necessary files the Id’s remained the same thereby keeping the pointers correct when the solution was deployed using the SDK tool.&lt;/p&gt;
&lt;p&gt;I know this is probably a unique problem and is less likely to happen, but this is what I discovered to correct the problem I was having with my Silverlight app. Now I have regained my former glory as master of Silverlight.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/223/A-Slightly-Tricky-CRM-2011-SDK-Silverlight-Deployment-Anomaly.aspx</guid>
         <pubDate>Wed, 21 Dec 2011 09:16:00 +0000</pubDate>
      </item>
      <item>
         <title>4 Reasons to Use the Microsoft CRM 2011 Web Client</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/222/4-Reasons-to-Use-the-Microsoft-CRM-2011-Web-Client.aspx</link>
         <description>&lt;p&gt;When rolling out CRM for the first time (or upgrading to CRM 2011 from an earlier version), it will be important for you to decide which version of CRM you will initially train your users on.  It is fine to give your users the option to use either the Web Client or CRM for Outlook – but because of the differences between the two, it will be impractical (and overwhelming) to try to train your users on both versions at once.  So understanding the pros and cons of each approach is important.  Because of the outstanding integration Microsoft has developed between CRM and Outlook, using CRM for Outlook seems to be the obvious choice.  There are, however, four compelling reasons to go with the Web Client.&lt;/p&gt;
&lt;h1&gt;The 4 Reasons to Use the Microsoft Dynamics CRM 2011 Web Client&lt;/h1&gt;
&lt;p&gt;1. &lt;u&gt;A shorter learning curve&lt;/u&gt;.  Most business leaders assume that, because CRM can work with Outlook, it will be easier to learn.  While this may be true for “Outlook Power Users”, it is not necessarily the case with everyday users.  When you decide to train users on CRM for Outlook, it creates a need to explain how CRM integrates with Outlook in some detail.  Users will need to grasp how CRM integrates with existing Outlook items (i.e. email, contacts, appointments) and how CRM also has it’s own items (i.e. leads, accounts, opportunities) that are also available within the Outlook interface.  What seems to create more confusion is that users now have two places to go, inside of Outlook, for what should appear to be the same information (i.e. CRM has contacts and Outlook has contacts; CRM has appointments and Outlook has appointments).  Because CRM and Outlook have different sets of records to track the same information this can be confusing for new users.  By starting with the Web Client, users can be eased into basic CRM concepts without having to learn the details of how data is synchronized between the applications.&lt;/p&gt;
&lt;p&gt;With that said, it can still be a psychological barrier for users to feel like they are having to learn a “new application.”  So, although the learning curve by going with CRM for Outlook may be somewhat steeper, it may still be worthwhile to consider because users may be more open to trying to learn something that feels familiar.&lt;/p&gt;
&lt;p&gt;2. &lt;u&gt;Two different applications&lt;/u&gt;.  Many users keep Outlook open to their inbox and want to actively monitor their email throughout the day – they think of Outlook as mostly an email tool (and to a lesser extent a calendar and contact management tool).  When users are forced to access CRM within Outlook, they must then constantly toggle between the various modules of CRM and their Outlook inbox.  This can be somewhat mitigated by just opening the CRM for Outlook area in a separate window – but few users seem to remember to take this action.  Many users like the idea of have two applications that they can “ALT+TAB” between rather than having to constantly use the mouse to navigate between different parts of Outlook to do their jobs.&lt;/p&gt;
&lt;p&gt;3. &lt;u&gt;CRM for Outlook and the Web Client work differently&lt;/u&gt;.  Depending on how you look at it, this may be a reason to use CRM for Outlook or it may be a reason to use the Web Client.  CRM for Outlook leverages some great Outlook functionality (like categorizing, flagging for follow-up or conditionally formatting your CRM lists).  On the other hand, individuals that use this functionality tend to be Outlook power users.    In addition, these settings do not update any CRM data (so, for example, if a user categorized a contact using Outlook categories, this information will not be stored in CRM, making it useful only to the single user who set the category).  Plus, if you’ll click the image, you’ll notice that CRM for Outlook tends to make a lot of text look blurry (only joking, that’s just text that we were hiding in the image).  The Web Client, on the other hand, has some excellent functionality that is not available in CRM for Outlook.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/X-Reasons-to-Use-the-CRM-Web-Client_10879/SNAGHTMLd8d95df.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="Dynamics CRM 2011 for Web - Grid View" border="0" alt="Microsoft CRM 2011 for Web - Grid View with Shortcut Pullout" width="240" height="225" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/X-Reasons-to-Use-the-CRM-Web-Client_10879/SNAGHTMLd8d95df_thumb.png"/&gt;&lt;/a&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/X-Reasons-to-Use-the-CRM-Web-Client_10879/image_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 0px 100px 50px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="The Native Outlook Functionality in Dynamics CRM 2011 for Outlook" border="0" alt="Microsoft CRM 2011 for Outlook has Native Outlook Functionality" width="244" height="119" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/X-Reasons-to-Use-the-CRM-Web-Client_10879/image_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;4. &lt;u&gt;Outlook issues&lt;/u&gt;.  Unfortunately, CRM for Outlook can sometimes produce unexpected bugs.  Microsoft has put a lot of work into resolving these issues, but there are still occasional bugs.  My experience is that organizations that have more security software and, in particular, security software that integrates with Outlook, often run into some of these bugs.  These can cause slowdowns, Outlook crashes and other issues.  So if you’re rolling out CRM for the first time, you may run into some of these issues.  I wouldn’t let this issue be the decision-maker – but if you’re leaning towards starting with the Web Client already, then this issue may push you over the edge.&lt;/p&gt;
&lt;h1&gt;USING BOTH VERSIONS OF CRM&lt;/h1&gt;
&lt;p&gt;As part of your long-term strategy, I recommend you provide users with the ability to use either version of CRM.  You will find that different users have different preferences, and allowing them to choose their tool will serve to get them more productive.  But when rolling out CRM for the first time (or when upgrading to CRM 2011) it will be important to decide on one version to start with.  My personal recommendation (which has changed over time) is that you start with the Web Client, then you train users on the basic Outlook integration (part 3 in this series) and, lastly, you provide training on how to use CRM for Outlook for those who are so inclined (or who will need to use CRM for Outlook offline while traveling).&lt;/p&gt;
&lt;h1&gt;WHAT’S NEXT&lt;/h1&gt;
&lt;ul&gt;
    &lt;li&gt;Even if you plan to use the Web Client to access CRM, there are many Outlook integration features that you will still want to take advantage of.  In the third and last part of this series, we will take a close look at those important (and often overlooked) features.&lt;/li&gt;
    &lt;li&gt;At this time, you can only use the Web Client with Internet Explorer.  This means that Mac users cannot access CRM unless they install PC emulation on their machines.  In the spring of 2012, Microsoft will release a cross-browser version of CRM.  To pull this off, I expect that they may be making fairly significant changes to the user interface of the Web Client.  Stay tuned to learn more about this upcoming release and how it may further improve the CRM experience for your team.&lt;/li&gt;
&lt;/ul&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/222/4-Reasons-to-Use-the-Microsoft-CRM-2011-Web-Client.aspx</guid>
         <pubDate>Tue, 20 Dec 2011 00:35:00 +0000</pubDate>
      </item>
      <item>
         <title>Quick Tip: Deactivating and Archiving CRM E-Mail Templates</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/221/Quick-Tip-Deactivating-and-Archiving-CRM-E-Mail-Templates.aspx</link>
         <description>&lt;p&gt;Email templates are a great feature in Microsoft Dynamics CRM 2011.  The problem is that, over time, administrators and users may create a lot of these templates.  Then, when a user goes to select a template for an outbound email, they need to put on their boots to wade through dozens of templates to find the one that they’re looking for.  Unfortunately, there is no option to deactivate an email template record to mitigate this problem without deleting the old e-mail templates.&lt;/p&gt;
&lt;p&gt;What do most users do when they are overwhelmed by so many things to choose from?  They give up and don’t use the templates at all!&lt;/p&gt;
&lt;p&gt;What do most system administrators do about this problem?  Nothing.  Because they’re afraid they might need one of those old templates (or that some user out there may still be using it).&lt;/p&gt;
&lt;p&gt;So how can you have the best of both worlds?  How can you have access to all of your email templates, but hide the ones that no one is using anymore without deleting them?  Here is one approach you can use that leverages Solutions in CRM.&lt;/p&gt;
&lt;p&gt;1. First of all, create a new solution called “Email Templates”.  To do this, you will navigate to Settings | Solutions, click the New button and create a new solution.  The values in the fields here don’t matter too much.&lt;/p&gt;
&lt;p&gt;2. Next, you’ll put all of the old e-mail templates into the solution.  Open the solution (if it isn’t already), navigate to E-mail Templates in the side navigation bar, click the Add Existing button, and select all of the e-mails that you want in the solution.  Save and Close the solution when you’re done.  Check out the picture, below, for more information.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/64462822eff6_1043C/SNAGHTMLf672ccb.png"&gt;&lt;img title="Microsoft Dynamics CRM 2011 E-Mail Template Solution" border="0" alt="E-Mail Templates Solution in CRM 2011" width="240" height="228" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/64462822eff6_1043C/SNAGHTMLf672ccb_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;3. Then you will export the solution.  When you export the solution, it will create an external copy of all your templates that you can save elsewhere.  That way you can get them back when you need them.  In the Settings | Solutions area, select the solution that you just created and click the Export button.  Save the file somewhere that it is safe.&lt;/p&gt;
&lt;p&gt;4. Lastly, you can delete the old templates from CRM knowing that you can get them back later if needed.&lt;/p&gt;
&lt;p&gt;Unfortunately, if you decide you need one of these templates back in the future, CRM 2011 will not allow you to import just one template – you will have to import the entire solution.  We deal with this by keeping the templates in a development environment so that we can easily create a new solution with just the template(s) that are needed, export it from the development instance of CRM 2011 and import it into our production instance.  If you do not have a second CRM environment for this purpose, you can quickly create a new CRM Online instance (Microsoft gives you 30 day trials for free), import your solution there, create a new solution with just the templates that you need, export it, and re-import it into CRM.  If you need to create a trial account, &lt;a rel="nofollow" title="CRM Online for E-Mail Template Solutions" target="_blank" href="http://crm.dynamics.com/en-us/trial-overview"&gt;click here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Now go clean up all those old templates so that it will be easier for users to find the templates that they need!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/221/Quick-Tip-Deactivating-and-Archiving-CRM-E-Mail-Templates.aspx</guid>
         <pubDate>Thu, 08 Dec 2011 06:28:00 +0000</pubDate>
      </item>
      <item>
         <title>Managing Web Resources and Plug-ins with the CRM Developer Toolkit</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/220/Managing-Web-Resources-and-Plug-ins-with-the-CRM-Developer-Toolkit.aspx</link>
         <description>&lt;p&gt;I’ve been watching the &lt;a rel="nofollow" target="_blank" href="http://msdn.microsoft.com/en-us/library/hh372957.aspx"&gt;CRM Developer Toolkit&lt;/a&gt; since it was in CodePlex for CRM 4.0 and, while it had some nice features, it came at the price of requiring too many changes to my team’s methodology. With the most recent release in SDK 5.0.7 however, the toolkit has become a productivity enhancing add-on that I can’t live without. The CRM Solution template does a fantastic job of managing and deploying the Web Resources, Plug-ins, Workflows and Silverlight in my solutions. As great as it is, there are still a few pitfalls to watch out for so here is a list of do’s and don’ts when it comes to using the toolkit.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h5&gt;&lt;b&gt;1. &lt;/b&gt;&lt;b&gt;Only create Web Resources in CRM&lt;/b&gt;&lt;/h5&gt;
&lt;p&gt;The developer toolkit makes it very easy to add new Jscript files to your solution, so you may be tempted to do so, but there’s a problem here. Visual Studio doesn’t know about your solution’s provider prefix, so that gets added to the Web Resource when you deploy. This makes your solution appear out-of-sync with CRM since the file name in Visual Studio remains the same un-prefixed name you created it with. The safest and most consistent approach is to create new Web Resources in CRM and then use the &lt;b&gt;Add to packaging project&lt;/b&gt; feature of the CRM explorer. This also works well if you want to start using the toolkit on an existing CRM solution.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image001%5B4%5D.png"&gt;&lt;img title="clip_image001[4]" border="0" alt="clip_image001[4]" width="244" height="73" style="background-image:none;border-bottom:0px;border-left:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image001%5B4%5D_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Note: Microsoft has a &lt;/i&gt;&lt;a rel="nofollow" target="_blank" href="http://msdn.microsoft.com/en-us/library/8c947e83-6765-41d9-b4b7-c078a68257eb#BKMK_ReferencingWebResources"&gt;&lt;i&gt;recommended naming convention&lt;/i&gt;&lt;/a&gt;&lt;i&gt; that includes slashes (/) in the resource names for Web Resources. This will cause an error ins Visual Studio when you attempt to import them, so you may want to consider that before using that approach.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h5&gt;&lt;b&gt;2. &lt;/b&gt;&lt;b&gt;Solution Deploy Updates Jscript – almost&lt;/b&gt;&lt;/h5&gt;
&lt;p&gt;If you make a change to a Jscript file in your solution and then deploy it, the changes will be sent to the CRM server as though you edited the Web Resource file directly, however you still must Publish the change before it will take effect. The same goes for other Web Resources like web pages, images and stylesheets. This is most efficiently accomplished by opening the Entity form in Visual Studio from the Entity Browser of the CRM Explorer. &lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image002%5B4%5D.png"&gt;&lt;img title="clip_image002[4]" border="0" alt="clip_image002[4]" width="244" height="80" style="background-image:none;border-bottom:0px;border-left:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image002%5B4%5D_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h5&gt;&lt;b&gt;3. &lt;/b&gt;&lt;b&gt;Plug-in Creation and Debugging&lt;/b&gt;&lt;/h5&gt;
&lt;p&gt;The Create Plug-in wizard is reason enough to use the Developer Toolkit. All of the Messages for each Entity can be selected and depending on the Message and Pipeline Stage selected, the Pre/Post Image options become editable. The Select Attributes screen can even function as a rudimentary CRM browser! &lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image003%5B4%5D.png"&gt;&lt;img title="clip_image003[4]" border="0" alt="clip_image003[4]" width="228" height="244" style="background-image:none;border-bottom:0px;border-left:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image003%5B4%5D_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you do create an Image Alias, the plug-in class created by Visual Studio has code inserted to make your image available to you automatically:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image005%5B4%5D.jpg"&gt;&lt;img title="clip_image005[4]" border="0" alt="clip_image005[4]" width="244" height="67" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Managing-Web-Resources-and-Plug-ins-with_761E/clip_image005%5B4%5D_thumb.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;When the wizard finishes, the plug-in class is created for you and is added to the RegisterFile.crmregister (make sure it is checked out &lt;u&gt;before&lt;/u&gt; you start the wizard). If you need to make any changes to your plug-in’s registration attributes, you will have to edit the RegisterFile manually.&lt;/p&gt;
&lt;p&gt;Another feature in the Developer Toolkit is the plug-in superclass.  All plug-ins created extend a new class that provides “helpful” context, tracing and event registration in the constructor. Take a look at the Plugin.cs file included in the Plug-in project for more details.&lt;/p&gt;
&lt;p&gt;Debugging works well once you follow &lt;a rel="nofollow" target="_blank" href="http://erikpool.blogspot.com/2011/02/crm-2011-plug-in-tips-and-tricks-part-1.html"&gt;the setup instructions&lt;/a&gt;, though copying the PDB file remains a manual step. Also note, the sandbox process (Microsoft.Crm.Sandbox.WorkerProcess) is not started until after a plug-in is run, so you will have to invoke it (or another one) at least once before you will be able to debug.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/220/Managing-Web-Resources-and-Plug-ins-with-the-CRM-Developer-Toolkit.aspx</guid>
         <pubDate>Tue, 29 Nov 2011 19:34:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM and Outlook: 6 Reasons to Use CRM for Outlook</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/218/CRM-and-Outlook-6-Reasons-to-Use-CRM-for-Outlook.aspx</link>
         <description>&lt;p&gt;There have always been two versions of Microsoft Dynamics CRM available to users: CRM for Outlook (also referred to as the "Outlook Client") and CRM for the Web (also called the "Web Client").  As you may expect, Microsoft CRM has always had better Outlook integration than any other CRM system on the market, but there were always those users that preferre to use the web version.  With all of the new features and Outlook integration that Microsoft has introduced in CRM 2011 for Outlook, the reasons for using CRM for Outlook are stronger than ever.  Let’s take a look at the top 6 reasons for using CRM for Outlook:&lt;/p&gt;
&lt;h3&gt;(1) More Approachable&lt;/h3&gt;
&lt;p&gt;One of the biggest barriers to success for any CRM project is getting end-users to adopt it – to embrace it enthusiastically and to begin to use it in their every day business practices.  Training users on a new system is one of the chief obstacles to adoption.  So, naturally , the most compelling reason to use CRM for Outlook is that it promises to reduce the learning curve for end-users. The thinking is that users are already comfortable using Outlook, so using something “inside” of Outlook that looks and feels like Outlook will be easier than using a new application.  Interestingly enough, however, my experience is that CRM for Outlook is not necessarily easier to learn (some say it’s actually a bit more difficult to learn, but let’s at least call it a “break even” from a speed to learn standpoint).  What is true, however, is that users are less intimidated by having to learn an Outlook add-on than they are about using an entirely new application.  So it is valid to say that using CRM for Outlook may improve adoption.&lt;/p&gt;
&lt;p&gt;To be accurate, and as the heading for this item suggests, I would categorize this benefit as “more approachable” rather than a “shorter learning curve.”&lt;/p&gt;
&lt;h3&gt;(2) Better Outlook Record Creation&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/571fb7a39e70_ED7E/SNAGHTML1fd0354.png"&gt;&lt;img style="background-image:none;border-right-width:0px;margin:0px 0px 0px 12px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="CRM for Outlook Settings" border="0" alt="CRM for Outlook - click to enlarge" align="right" width="244" height="132" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/571fb7a39e70_ED7E/SNAGHTML1fd0354_thumb.png"/&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;CRM for Outlook can be set to automatically use default Outlook forms when creating certain kinds of records.  For example, when a user creates an appointment, the default Outlook appointment form can be used and it can automatically be set to regard the CRM record that the user was on when the appointment was created.  This can save time and reduce the learning curve.  This is particularly helpful with emails (creating emails in the Web version of CRM is clunky, to say the least) and appointments; but it is also available for tasks and contacts.  What’s more, when creating appointments from CRM (using the normal appointment form) you cannot sent out a meeting invitation (CRM relies on Outlook to do this).  But by using the standard appointment form in Outlook, you can send the reminder and, using CRM for Outlook, you can ensure that this is automatically synced with CRM too.&lt;/p&gt;
&lt;h3&gt;(3) Full Outlook Capabilities&lt;/h3&gt;
&lt;p&gt;Are some individuals on your team Outlook power users?  Are they using follow-up flags, categories, custom views and filters?  If so, the Outlook version of CRM will be a boon to them.  CRM for Outlook taps into all of these features, so if your users know how to use this functionality they will immediately know how to make use of these parts of CRM for Outlook.  Using these features, users can better prioritize their work, highlight records that are experiencing issues (i.e. past due payments) and schedule follow-ups. If your users, on the other hand, have not already developed excellent Outlook skills, then these features will likely be lost on them.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;img title="CRM for Outlook Interactive Overview" border="0" alt="Click to open an interactive overview of CRM for Outlook" align="left" width="244" height="124" style="background-image:none;border-bottom-width:0px;border-bottom-color:initial;border-left-width:0px;border-left-color:initial;margin-top:0px;margin-right:10px;margin-bottom:0px;margin-left:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-top-color:initial;border-right-width:0px;border-right-color:initial;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/571fb7a39e70_ED7E/image_3.png"/&gt;&lt;/p&gt;
&lt;p&gt;Click the image to the left for an interactive overview of the CRM for Outlook features outlined in #3, #4 and #5. Hover over the various portions of the form for pop-up information.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;hr /&gt;
&lt;h3&gt;(4) Views, Filters and the Preview Pane&lt;/h3&gt;
&lt;p&gt;Views in CRM for Outlook work a bit differently than they do in the web version.  When you pin a view in CRM for Outlook, it will refresh in nearly “real time” as changes are made to the underlying data by other users.  Pinned views will also display a much larger number of records per page (up to 5,000) – so you can scroll through records a bit more quickly than you can on the web version. On the other hand, very large lists can slow down performance (so be careful how you configure views to work with Outlook if you have very large lists).&lt;/p&gt;
&lt;p&gt;CRM 2011 provides powerful filtering capabilities and they are available in both Outlook and the Web versions.  However, the Outlook version can be a bit more intuitive to users (most notably to those users who are already familiar with filtering other Outlook lists, such as tasks or contacts).&lt;/p&gt;
&lt;p&gt;The Preview Pane is another feature of CRM for Outlook that is not available in the web version.  When the preview pane is active, you can see a read-only preview of whatever record you are on in a list without having to open the form.  Each user can configure the preview pane for their unique needs including moving sections or removing them from the pane completely.&lt;/p&gt;
&lt;h3&gt;(5) Social Integration&lt;/h3&gt;
&lt;p&gt;Social collaboration is an increasingly important part of managing relationships with individuals inside and outside of your organization. Microsoft promises to continue to add social capabilities to Dynamics CRM and part of their plan is to leverage the social capabilities already built into tools like Microsoft Outlook. What’s already available in Outlook 2003, 2007 and 2010 (through a free download from Microsoft) is the People Pane and, within that, the Social Connector. The People Pane shows the Outlook activities associated with your contacts, and the Social Connector shows social interactions (such as status updates) made by your contacts on social platforms such as LinkedIN. You can learn more about the the Social Connector &lt;a rel="nofollow" title="CRM for Outlook - Social Connector" target="_blank" href="http://office.microsoft.com/en-us/outlook-help/introduction-to-the-outlook-social-connector-HA010361857.aspx"&gt;here&lt;/a&gt;. When using CRM for Outlook, you can view the People Pane and Social Connector while viewing your contacts or leads in CRM – this is a convenient and powerful way to see the latest interactions with an individual before you contact them.&lt;/p&gt;
&lt;h3&gt;(6) Using CRM Offline&lt;/h3&gt;
&lt;p&gt;This last benefit may be the most important of them all.  Microsoft has included the ability to take CRM for Outlook “offline” so that you can access and update your data even when you are not connected to the Internet - much as you can view and respond to emails in Outlook while offline.  To use CRM offline, users will need to use it through CRM for Outlook.  So, if your users are going to need to use CRM offline, they’re going to need to learn to use CRM for Outlook one way or another.  If you train them on CRM for Outlook, they will automatically know how to use CRM offline as well.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;So with all of those great reasons to use CRM for Outlook, why should anyone choose to use CRM for the Web?  Well there are actually some very compelling reasons to use CRM on the Web.  Stay tuned for an upcoming blog post outlining some of those reasons.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/218/CRM-and-Outlook-6-Reasons-to-Use-CRM-for-Outlook.aspx</guid>
         <pubDate>Mon, 28 Nov 2011 22:30:00 +0000</pubDate>
      </item>
      <item>
         <title>An Analysis of Handling a Year Data Type in CRM 2011 - Date versus Text</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/216/An-Analysis-of-Handling-a-Year-Data-Type-in-CRM-2011-Date-versus-Text.aspx</link>
         <description>&lt;p&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;When dealing with the account entity you may decide to display the year founded as part of the company information. This information can come from various public sources of information. It feels natural to think of year as a date since it is part of a date. But of course it is really in fact a “date part”. It is part of what makes up a date but in and of itself is actually just a number. Handled alone it is best stored as a numeric value which makes it easier and faster for filtering and searching purposes. The problem is that if you try to store a date as a numeric value in CRM 2011 that value will be displayed with a comma on the form. If you can live with that fine, but if that bugs the heck out of you then you have to look at the pros and cons of other options.&lt;/p&gt;
&lt;p&gt;Let me just preface this discussion with my option that when deciding between making it a date or a text field in order to fix formatting, text is the way to go. Maybe I’m preaching to the choir but I had this discussion on this topic recently. I’ll briefly go over some points on text versus the date data type.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Validation&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;It is true that as a text field that users could (if you let them) enter invalid data, but you could say the same thing about pretty much every other field on a form. For example, users can enter anything they want into say a Stock Exchange and Ticker Symbol fields if you let them. This is fixed with a couple lines of JavaScript to only allow numbers to be entered if it is that big of a deal. While a date field will provide data type validation for you it is doing it in an invalid way for its purpose.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Searching&lt;/b&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;It is also true that searching in advanced find would be a little more interesting since you would have to use “begins with” and “ends with” operators if you want to search a date range. But then again look what happens when you try to search by date data type. The user is going to have to select an actual date (not a year) which means if you want to be sure that you find everything you have to start with 1/1/year and end with 12/31/year anyway. In either case any user that wants to search the field is going to have to be educated on the proper method of retrieving accurate results.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/3a8da1186c11_A27D/clip_image001_2.jpg"&gt;&lt;img title="clip_image001" border="0" alt="clip_image001" width="561" height="375" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/3a8da1186c11_A27D/clip_image001_thumb.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Data Entry&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Here is what year founded looks like on a form as a number and a date.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/3a8da1186c11_A27D/clip_image002_2.jpg"&gt;&lt;img title="clip_image002" border="0" alt="clip_image002" width="682" height="109" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/3a8da1186c11_A27D/clip_image002_thumb.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If the premise to change the year field away from a number is to get rid of the comma number formatting then it is actually worse as a date field since the month and day are invalid pieces of information. The user is forced to come up with an arbitrary month and day before they can enter a year.  This means you will eventually get dates all over the place which in itself is deceptive because someone may think the date itself is correct.&lt;/p&gt;
&lt;p&gt;Here is what the user will see if they try to enter a year:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/3a8da1186c11_A27D/clip_image003_2.jpg"&gt;&lt;img title="clip_image003" border="0" alt="clip_image003" width="633" height="135" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/3a8da1186c11_A27D/clip_image003_thumb.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Not only that but if the user tries to even use the calendar pop up they have to know to click on the month title to get the year display and then most likely have to click many times to get to the target year.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Data Import&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;If you are performing integration with other systems you may need to import a year field. Usually it will be stored as a numeric value or text data type. Making it a date in CRM creates the need to convert this information into an arbitrary date. Knowing how this typically goes whoever is doing the import will just slap January 1 on every record. Again this is somewhat deceptive with month a day being meaningless information. To me is seems like extra work for a field that isn’t a date anyway.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Number is the best data type choice when dealing with a year field. It is unfortunate that Microsoft didn’t implement any built in field formatting functionality for numeric values in CRM 2011. Yes I know you can do JavaScript but it would have been nice to have it out of the box.  I would imagine it being a requested feature that may find its way into the next major release, but for now text is the lessor of the two evils if you can’t deal with seeing a comma in your year fields.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/216/An-Analysis-of-Handling-a-Year-Data-Type-in-CRM-2011-Date-versus-Text.aspx</guid>
         <pubDate>Sat, 19 Nov 2011 05:14:00 +0000</pubDate>
      </item>
      <item>
         <title>Lessons on the CRM 2011 Customer Address Entity</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/213/Lessons-on-the-CRM-2011-Customer-Address-Entity.aspx</link>
         <description>&lt;p&gt;The Customer Address entity is one of those special entities in CRM. As you probably know it stores address and shipping information for accounts and contacts. I had worked on a project where we had hoped that we could attach a custom entity to the address entity like any other entity. We found out that customer address is special. It’s one of those entities where Microsoft slaps your hands and says only we can use it so keep out, but that’s another story.   &lt;br /&gt;    &lt;br /&gt;The interesting thing about the address entity is that as you look at an account or contact form fields you’ll notice that there are fields for address1 and address2 addresses. You can add as many additional addresses as you want, but the first two are special. On the same project I mentioned previously we were synchronizing information between Microsoft CRM and ERP systems. We had an issue in that the ERP systems were not giving me a unique way of identifying an address. Every time I would get an update I did the easiest thing which was to remove all addresses and then add them back according to what the ERP said they should be. I found this to be problematic as for some records (specifically contacts) I was unable to save the record anymore in the interface getting an error of Generic SQL error which I love so much.     &lt;br /&gt;    &lt;br /&gt;After some theories and tests I discovered the issue. Despite the fact that you see both address1 and address2 fields on the contact form the addresses are not actually stored on that entity. All the addresses are stored in the customer address entity. The fields you see on account and contact are really pointers to these records. The problem saving I had was partially my fault and partially Microsoft’s. I don’t believe Microsoft ever intended for anyone to actually remove the first two addresses even though it was perfectly “legal” to do in code. I noticed that when I did this and try to add new addresses that my new addresses were pushed back to start with address 3 instead of 1. I found that behind the scenes Microsoft was automatically recreating the addresses that I deleted at least for address 1. Address 2 was never recreated (pre-rollup releases) and there was a pointer to this address 2 record that was supposed to be there for the entity. After I stopped removing address1 and 2 and instead chose to update these two addresses instead my problems went away.    &lt;br /&gt;    &lt;br /&gt;So the premise of this blog is that if you are going to do anything special with addresses do not ever remove address 1 or 2. These are built in and should only be updated else you may find yourself looking at a generic SQL error message that tells you nothing about what is actually happening.     &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/213/Lessons-on-the-CRM-2011-Customer-Address-Entity.aspx</guid>
         <pubDate>Wed, 16 Nov 2011 09:39:05 +0000</pubDate>
      </item>
      <item>
         <title>Plight of the CRM Trainer</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/210/Plight-of-CRM-Trainer.aspx</link>
         <description>&lt;h4&gt;Introduction&lt;/h4&gt;  &lt;p&gt;Near the ending of any project where a new system is being implemented there comes a time when everyone looks around the meeting table and groans because at some point users have to be trained to use this great new system that has been developed for them. Hopefully in your project the various user classes that have a stake in the project believe their needs were heard and they feel that the new system will empower them to perform their job better. This is of course the best case scenario. &lt;/p&gt;  &lt;p&gt;I like to think of users on the typical bell curve as far as adaptability. There are the early adopters who are enthusiastic about what the new system will do for them, the average user who isn’t particularly excited about the new system but is at least cooperative in learning how to use it and then the laggards or slow adopters. The laggards are the ones that typically require the most attention. This user class usually one of the following issues about training: &lt;/p&gt;  &lt;p&gt;A. Believes the old system was good enough and we shouldn’t have to learn a new one&lt;/p&gt;  &lt;p&gt;B. Are very resistant to learning anything new or feel self-conscious about technology in general&lt;/p&gt;  &lt;p&gt;C. Feel that they don’t have time or should be bothered to attend a training class&lt;/p&gt;  &lt;p&gt;In my experience, sales people by far as the worst class of user to train on a new system. These are the guys that are the hot shots of the company. They are the ones that want to be out in front of customers or making phone calls beating on the bushes to find business. They guys feel like they should be out selling instead of sitting around trying to figure out how to use some system. The irony is that sales people are typically one of the most important user classes to understand how to use a CRM system. &lt;/p&gt;  &lt;h4&gt; &lt;/h4&gt;  &lt;h4&gt;The Problem with Thinking in the Learning Box&lt;/h4&gt;  &lt;p&gt;Traditional education is thought of in terms of the school model. Everyone that attended school knows the drill. You go to class, the teacher teaches, and students are expected to learn. You take a test and then your grade determines if you pass the class. Unfortunately this paradigm is artificial and at best only touches the tip of the iceberg. In real life you aren’t graded on answering questions about material, but how you actually use the knowledge.&lt;/p&gt;  &lt;p&gt;If the goal is to make your users adept in how to use a system you have to look at the material from their perspective. If you simply have a class full of people it is quite easy to go off topic from what any single user class cares about as to the functionality of the system. These people are going to zone out as soon as you stop talking about anything that pertains to them and you’ll quickly noticed ESPN and MSNBC showing up on their computer screens.&lt;/p&gt;  &lt;p&gt;The information has be targeted, relevant, and hopefully available on a contextual basis within the system itself because it would be a silly to believe that any user will retain much more than 20% of the knowledge gained in a class environment.&lt;/p&gt;  &lt;h4&gt; &lt;/h4&gt;  &lt;h4&gt;Things to consider when it comes to training material&lt;/h4&gt;  &lt;p&gt;&lt;b&gt;Concept #1 – No one really wants to learn a new system&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Look at me. You know it’s true. No one wants to be in your training session unless it’s for the free food and coffee. Who wants to have to learn a new system? Users already feel like they have enough to do already. Now they have to learn this new system that most often was designed without their input and doesn’t solve their issues when it comes to performing daily work. Consider this fact when creating training material. What can be done to make the material more palatable to the user?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Concept #2 – Users hate to read manuals!&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;The first thought when it comes to training is typically, “Let’s create training manuals that users can reference for learning the system or when they have problems”. For men this is a double bogie since we don’t even like to read the manual on putting things together that we wanted to buy never mind a system that we probably aren’t particularly interested in using. This type of training material makes for great desk clutter because we all know NO ONE reads these things unless they are looking for a way to fall asleep at night. &lt;/p&gt;  &lt;p&gt;I worked with a trainer at a previous job that took the time to create some very wonderful looking manuals with very in depth chapters and beautiful pictures. I admit I was impressed with the detail that he put into these documents. It was obvious that he cared about what he was producing. After the materials were passed out he quickly found that people were calling into the IT call center with questions that were obviously addressed in his training documents. We came to find out that no one had even bothered to read past the first couple pages. Needless to say he was very upset that no one was appreciating all the effort he put into creating the training material.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Concept #3 – Irrelevant information to specific user classes causes head bobbing syndrome&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Head bobbing syndrome is when a user is trying to stay awake but keeps zoning out to the point where their head bobs up and down. If you’ve ever been in a meeting you know how it is when there are groups of people that want to talk about things that have nothing to do with you. What happens? You zone out. You read your email on your phone or you doodle little cartoons on your notepad as if you are taking notes.&lt;/p&gt;  &lt;p&gt;As I’ve said before, if the information being delivered isn’t targeted at specific user classes they will not care about what you have to say.&lt;/p&gt;  &lt;h4&gt; &lt;/h4&gt;  &lt;h4&gt;Reaching Users by Class&lt;/h4&gt;  &lt;p&gt;My concept of user training is somewhat of a hybrid approach. I know it may sound like I’m saying don’t create training manuals and don’t think that you will get your users to learn anything. I’m not saying that at all. I’m just making a case for a different approach to the problem.&lt;/p&gt;  &lt;p&gt;My approach on this is that training should be targeted towards the each user class. I realize that creating training material for 5 groups of users versus just creating one training document is more work, but it doesn’t matter how much work you put in if no one bothers to learn your material.&lt;/p&gt;  &lt;p&gt;If you are going to give users training classes, identify the necessary groups. If you have salesmen creating salesman training with input from members of the salesmen group. If you are going to train customer service representatives do the same for them. Do the same thing for documented materials that are created. Everything must be specific and targeted.&lt;/p&gt;  &lt;p&gt;In additional to targeted material, the most useful kind of documentation is referential documentation. When a user is in the system and have a problem performing a specific task or have a question wouldn’t it be nice if they could click a context sensitive help button with relevant information on that task? Even better is if there was a video tutorial on the specific topic showing the various options and someone actually performing the task. I consider the referential documentation to be one of the most important forms of system documentation because it will ultimately be the most used by users.&lt;/p&gt;  &lt;h4&gt; &lt;/h4&gt;  &lt;h4&gt;Summary&lt;/h4&gt;  &lt;p&gt;I know the kind of training regimen I’m proposing is probably going to greater lengths then what most organizations are willing to do. Thinking about an actual training plan and taking into considering the kind of users you are training (more/less technical, education level, job function) and the knowledge transfer strategy requires a little more effort than just throwing together a generic training course. I do believe though that with even a little more effort put into training methodology that documentation can become a greater asset and practical knowledge passed on more effectively to the users. It is probably rare for everyone to be happy having to switch to a new system, but at least they should still know how to use it.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/210/Plight-of-CRM-Trainer.aspx</guid>
         <pubDate>Tue, 01 Nov 2011 08:34:37 +0000</pubDate>
      </item>
      <item>
         <title>Microsoft Dynamics CRM 2011 Solution Management Strategy Review</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/209/Microsoft-Dynamics-CRM-2011-Solution-Management-Strategy-Review.aspx</link>
         <description>&lt;p&gt;I recently read the &lt;a rel="nofollow" target="_blank" href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=27824"&gt;Microsoft Whitepaper&lt;/a&gt; that was released a few days ago titled “Deploying Microsoft Dynamics CRM 2011 and CRM Online Solutions from Development through Test and Production Environments”. From what I saw the authors are recommending the same thought process I had about solution management in the software development life cycle. &lt;/p&gt;  &lt;p&gt;For development purposes you slice up the project into component layers. The layers are composed by functionality and also to allow for less contention by members of a development team. In a discussion with some Microsoft consultants they split up a project into 6 solutions as follows:&lt;/p&gt;  &lt;p&gt;1. Security Roles&lt;/p&gt;  &lt;p&gt;2. Web Resources&lt;/p&gt;  &lt;p&gt;3. Customizations&lt;/p&gt;  &lt;p&gt;4. Plugin Assemblies&lt;/p&gt;  &lt;p&gt;5. Plugin Steps&lt;/p&gt;  &lt;p&gt;6. Workflows&lt;/p&gt;  &lt;p&gt;Security roles came first on the stack because you may have forms that are dependent on role based security. If the roles aren’t included in that solution they must exist already for the solution to import correctly. The rest of the layers are pretty self-describing. The only other question I asked was why have separate solutions for plugins and then for the plugin steps. They just said that it was more of a logical separation so that one could be updated without affecting the other. Once the development phase is completed the solutions are merged into a unified managed solution that is then deployed to a test environment and then ultimately into a production environment.&lt;/p&gt;  &lt;p&gt;In my opinion, one of the pros of having a single managed release solution is that you don’t have to worry about dependencies. I’ve heard that there can sometimes be issues with managed solutions with dependencies where you can get into an uninstallable state. For example, say you have managed solution A that has a dependency on managed solution B. Somehow those solutions can get into a deadlocked state that could cause one or more of the solutions to be stuck. Personally I haven’t seen this happen yet, but I don’t doubt that it is possible.&lt;/p&gt;  &lt;p&gt;One con of a single managed solution is that if it is very large you could run into time out errors when importing the solution. My thought on this to try to mitigate this by perform the import directly on the server itself and if necessary decide how to slice the solution into more than one layer from there.&lt;/p&gt;  &lt;p&gt;If you can deploy a single managed solution then some of the pros are as follows: &lt;/p&gt;  &lt;p&gt;· Real version control (Deleting unmanaged solutions doesn’t remove anything)&lt;/p&gt;  &lt;p&gt;· Rollback capability (Deleting unmanaged solutions doesn’t roll anything back)&lt;/p&gt;  &lt;p&gt;· A way to prevent accidental tinkering with the production solution&lt;/p&gt;  &lt;p&gt;Another con you may have with managed solutions in a production environment is the loss of data for custom entities and fields in the solution. I understand the warm and fuzzy feeling of it, but I don’t think that this is a show stopper assuming proper backups are being made of the CRM server and the database. Obviously you would take the data loss into consideration before performing an uninstall. I think the main purposes of having a managed solution is exactly the ability to roll the system back to a previous state. I would think that ideally (if you can call it that) your worst case scenario should be to restore from backups to return the system to a previous state. You don’t have this option if you are running CRM online. Since you don’t have direct access to the database you are pretty much stuck having to do everything manually with unmanaged online solutions.&lt;/p&gt;  &lt;p&gt;In his blog on solutions &amp; release management &lt;a rel="nofollow" target="_blank" href="http://ayazahmad.wordpress.com/"&gt;Ayaz Ahmad&lt;/a&gt; shows a scenario where you deploy managed releases on top of each other in the production environment. &lt;/p&gt;  &lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Microsoft-Dynamics-CRM-2011-Solution-Man_14A9E/image_2.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Microsoft-Dynamics-CRM-2011-Solution-Man_14A9E/image_thumb.png" width="244" height="183"/&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;I particularly like his methodology because I think it reduces unnecessary complexity of having X different solutions to maintain. I am having a hard time seeing what having so many solutions is going to buy you in the end. In this scenario you can then deploy hotfixes on top of the release solutions for any incremental changes that need to be made.&lt;/p&gt;  &lt;p&gt;I think we all get Microsoft’s intent behind managed solutions. Maybe the model isn’t mature quite yet? I don’t know. I think you do have to keep reconsidering it as new rollup updates are being released. Managed solutions are what you are meant to use in a production environment and ultimately is the way to go for both online and on-premise solutions. &lt;/p&gt;  &lt;p&gt;Let me conclude that I say all of this with a grain of salt. Not every company will be able to implement managed solutions. There may be IT policies in place that make using this solution methodology impractical or not possible at all. Having a multiple layered development solution and then a single test and production managed solution also makes for more work when it comes to automated builds as well.&lt;/p&gt;  &lt;p&gt;As far as I can tell the CRM minds are still at work trying to formulate what the best practices are for managing solutions in the development life cycle. I do believe that ultimately the managed solution route is what was intended for production environments and not just for ISV’s. I expect that there will be continued improvement and contributions to the solution management philosophy in the near future.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/209/Microsoft-Dynamics-CRM-2011-Solution-Management-Strategy-Review.aspx</guid>
         <pubDate>Tue, 01 Nov 2011 08:31:40 +0000</pubDate>
      </item>
      <item>
         <title>Two Custom Entities that Are Useful in Every CRM Solution</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/208/Two-Custom-Entities-that-Are-Useful-in-Every-CRM-Solution.aspx</link>
         <description>&lt;p&gt;I know you are probably waiting with anticipation as to what two entities I’m referring to in my title. Well without keeping you in such suspense I’ll go ahead and tell you. The two entities are very common things that we find in our everyday development lives which are the Event Log and Configuration entities. Yes I know this is amazingly obvious but I can’t say that every project I’ve worked on had these two entities. Maybe it’s not so obvious. If you aren’t a believer let me talk about my logic for having these.&lt;/p&gt;  &lt;h4&gt;The Event Log&lt;/h4&gt;  &lt;p&gt;So we all know there is the Windows event log viewer that we can use to go see various system events that have happened. This is always a nice tool to have when something more amorphous is happening behind the scenes and you want to try to find out more information about what is happening in the system.&lt;/p&gt;  &lt;p&gt;Figure 1&lt;/p&gt;  &lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Two-Custom-Entities-that-Are-Useful-in-E_149DE/clip_image002_2.jpg"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="clip_image002" border="0" alt="clip_image002" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Two-Custom-Entities-that-Are-Useful-in-E_149DE/clip_image002_thumb.jpg" width="244" height="104"/&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In your CRM system you have background workflows and plug-ins executing and sometimes things happen or a user complains about an error they keep seeing. Wouldn’t it be nice if you could just go to your Event Log entity to see what is happening? In fact it is very nice because since it is a custom entity you get all the advantages of it being configurable the way you want it to be and it doesn’t require physical access to the CRM server or the database. The one thing to note about the Event Log entity is that users do need to have access permissions to write to it since the plugins firing will run under their context by default. The entity can be put into the setting navigation area where only administrators can access it and this is all done within the CRM interface for maximum convenience. &lt;/p&gt;  &lt;p&gt;I modeled my Event Log after the Windows event log so it has similar fields:&lt;/p&gt;  &lt;p&gt;· Computer Name (String) – The server name where the event originated.&lt;/p&gt;  &lt;p&gt;· Event Id (Integer) – An event Id number&lt;/p&gt;  &lt;p&gt;· Keywords (String) – Keywords relevant to the event&lt;/p&gt;  &lt;p&gt;· Level (Option Set: Error, Warning, Information, Debug) – Option set defining the message levels&lt;/p&gt;  &lt;p&gt;· Message (String) – The body of the event entry.&lt;/p&gt;  &lt;p&gt;· Stack Trace (String) – Stack trace of the event method&lt;/p&gt;  &lt;p&gt;· Task Category (String) – The task category if applicable&lt;/p&gt;  &lt;p&gt;· User Name (String) – The username of the user when the event occurred&lt;/p&gt;  &lt;p&gt;I am not suggesting that this event log entity total replace the use of tracing. If you are working with an on-premise version of CRM then you can use both to track down hard to solve problems. You could use the event log to give you additional information while writing out a trace log to the server’s file system using both in conjunction with each other.&lt;/p&gt;  &lt;p&gt;As far as maintenance I would recommend just having a bulk delete job the runs every so often so that this entity doesn’t continue to grow. How much history you want to keep is up to you, but at least you don’t have to worry about running out of space with an out of control event log.&lt;/p&gt;  &lt;h4&gt;The Configuration Entity&lt;/h4&gt;  &lt;p&gt;The configuration entity is the next useful entity. It contains settings information very similar to what you would store in web.config file in ASP.NET. It is basically an entity that contains key value pairs with the exception that I added an Application Id so that multiple plugins could have their own unique settings.&lt;/p&gt;  &lt;p&gt;This entity simply consists of the following fields:&lt;/p&gt;  &lt;p&gt;· Application Id (String) – The Id given to a specific program component.&lt;/p&gt;  &lt;p&gt;· Description (String) – Option description of the setting.&lt;/p&gt;  &lt;p&gt;· Key (String) – The key value of the setting.&lt;/p&gt;  &lt;p&gt;· Value (String) – The value of the setting.&lt;/p&gt;  &lt;p&gt;A case in point of using the configuration entity is when I want to control what messages are being put into the event log. All you need is a setting that says what level of information you would like to see. In the event of problems you can change the logging level to give more detailed information than under normal levels.&lt;/p&gt;  &lt;p&gt;It is true that you could effectively do something to configure settings like create a custom XML file that you place in your solution web resources. I find it easier to work within the system and just have a custom entity that does the job for me. I typically make the Value field very large just in case I want to store a XML document that could have some size to it.&lt;/p&gt;  &lt;h4&gt;Summary&lt;/h4&gt;  &lt;p&gt;I know I didn’t blow your mind or tell you anything that you probably couldn’t have thought of on your own. At least it’s something to think about on your next project. It’s always easier if you have things like this in place as a project is starting instead of trying to add things after the fact. All I can say is these two entities have already proven themselves value to me. Maybe you can say the same.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/208/Two-Custom-Entities-that-Are-Useful-in-Every-CRM-Solution.aspx</guid>
         <pubDate>Tue, 01 Nov 2011 08:28:00 +0000</pubDate>
      </item>
      <item>
         <title>Disable All Fields in a Section Based on the Value of Another Field (CRM 2011)</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/202/Disable-All-Fields-in-a-Section-Based-on-the-Value-of-Another-Field-CRM-2011.aspx</link>
         <description>&lt;p&gt;There are SDK and web examples of how to disable or hide an entire tab on a form in Microsoft CRM 2011, but I was unable to find an example of how to just disable all the fields in a given section on the form based on the selection of a boolean option ("Two Option" field).&lt;/p&gt;
&lt;p&gt;The scenario is useful if, for example, you want to disable data entry in the fields of a section under certain conditions, but you want to still display the disabled fields (rather than change their visibility and hide them). You could reference each field in the section by name and add the .setDisabled(true) method to the end of the control. But this is messy - what happens if later on the fields in the section are changed by adding new ones or removing others?&lt;/p&gt;
&lt;p&gt;The script I came up with below handles this pretty nicely. All you need to know is the label of the section you're concerned with. In this example, I have a boolean field on another section (that's important - you don't want to disable this field and then the user can't change it back!).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;//THIS FUNCTION DISABLES ALL THE FIELDS IN THE SECTION LABELED "PRODUCT INFO"&lt;br /&gt;
//IF A BOOLEAN OPTION FIELD IN ANOTHER SECTION CALLED new_toggleSectionFlds = TRUE&lt;br /&gt;
&lt;br /&gt;
function DisableSectionAttributes() {&lt;br /&gt;
    function setFldDisabled(ctrl) {&lt;br /&gt;
        ctrl.setDisabled(true);&lt;br /&gt;
    }&lt;br /&gt;
    function setFldEnabled(ctrl) {&lt;br /&gt;
        ctrl.setDisabled(false);&lt;br /&gt;
    }&lt;br /&gt;
    var toggleSectionFlds = Xrm.Page.getAttribute('new_toggleSectionFlds').getValue();&lt;br /&gt;
    var ctrlName = Xrm.Page.ui.controls.get();&lt;br /&gt;
    for (var i in ctrlName) {&lt;br /&gt;
        var ctrl = ctrlName[i];&lt;br /&gt;
        var ctrlSection = ctrl.getParent().getLabel();&lt;br /&gt;
        if (toggleSectionFlds == true) {&lt;br /&gt;
            if (ctrlSection == "Product Info") {&lt;br /&gt;
                setFldDisabled(ctrl);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        else {&lt;br /&gt;
            if (ctrlSection == "Product Info") {&lt;br /&gt;
                setFldEnabled(ctrl);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Put this function in a web resource and then reference it from your form. Call the "DisableSectionAttributes" function in the OnLoad of your form, and in the OnChange of the new_toggleSectionFlds field. Notice that the section name "Product Info" is specified in both the "if" and the "else" part of the function - otherwise you would end up disabling all the other fields on the form!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/202/Disable-All-Fields-in-a-Section-Based-on-the-Value-of-Another-Field-CRM-2011.aspx</guid>
         <pubDate>Wed, 07 Sep 2011 17:48:00 +0000</pubDate>
      </item>
      <item>
         <title>Using SQL Server Full-Text Search Services with Microsoft Dynamics CRM</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/199/Using-SQL-Server-Full-Text-Search-Services-with-Microsoft-Dynamics-CRM.aspx</link>
         <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SQL-Server-Full-Text-SearchThe-undiscove_84E8/imagesCANRN13K_2.jpg"&gt;&lt;img title="imagesCANRN13K" border="0" alt="imagesCANRN13K" align="left" width="186" height="152" style="background-image:none;border-right-width:0px;margin:0px 7px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SQL-Server-Full-Text-SearchThe-undiscove_84E8/imagesCANRN13K_thumb.jpg"/&gt;&lt;/a&gt;You’ve probably seen the option to install Full-Text Search during a SQL Server installation without really understanding what it is and how it can be used. As with other database systems SQL Server has a full spectrum of features that typically reaches far beyond what is needed in any one software development project. I look at Full-Text Search Services as one of those step child type features I never felt was worth spending time on since it seemed so trivial at first glance. I couldn’t ever really recall a time when I had a problem searching text per say. If you are like me you probably thought about why would you need that feature for a second and then went on your merry way. Honestly I didn’t really know what the full-text search feature was in the scheme of things and never really had a situation where I felt like it was something I really needed.&lt;/p&gt;
&lt;p&gt;Recently this feature became a topic of interest to me for a project I was working on for a client who wanted to create an intermediate interface for creating new CRM accounts. They didn’t want CRM to be just another system of independently created and maintained account information which would only add to their existing problem. The solution was to create a system that managed and linked duplicate customer account information together from various systems. The premise behind this system was to allow a user to look for an existing company record before creating a new CRM account. Instead of displaying the standard CRM new account form, the intermediate interface would be shown allowing the user to search for an existing company. If that company already existing in the CRM system they would simply be redirected to that record else the user could elect to create a new record either based on an existing record or from scratch. While it is true that the company information itself would effectively be duplicated in CRM for a new record, it would automatically be linked to existing company records in other systems while also reducing the amount of keying required to add the account information to CRM. In addition to the internal account information being this system they also added public databases of company information from other sources such as the Dun &amp; Bradstreet database. By including public sources of company information the user could search for a company that may not be found in their existing systems but still allowing the user to create a new CRM account without having to rekey all that data in manually.&lt;/p&gt;
&lt;p&gt;In theory this sounds great until I came to see the amount of data that needed to be searched. I ended up having upwards of 17 million rows to start off in my primary table. The user needed to be able to search on not only company name, but any information related to a company such as address, tax Id, duns number, etc. I couldn’t just simply throw an index on the company name field and call it a day. I also didn’t want to try creating a covering indexes across tables. I needed something much more comprehensive. As I found myself having to search through this significant amount of text data than normal I felt like I had to pursue another option. I wanted to research any opportunities to increase search performance of text fields in my database feeling that normal indexes were not going to cut it. With a full-text index I could create a new kind of index that would cover all the fields in my company table that indexed the things I wanted to search on in the first place – the words, not the character data in the fields themselves. Using full-text search I created an interface that allowed the user to perform their company searches over millions of rows for data that could be in one of a number of fields in my table.&lt;/p&gt;
&lt;p&gt;If you think about the world we live in today we are increasingly storing more textual data in databases as we move towards a paperless society. You can expect that the amount of text database systems are going to be required to search through will only increase over time and standard indexes are not going to get the job done. This being the case it makes sense for you to have the ability create a special kind of index that can provide better performance and functionality on the level of words and phrases rather than simply on the characters that make up the words themselves.&lt;/p&gt;
&lt;h2&gt;Full-Text Search Overview&lt;/h2&gt;
&lt;p&gt;If you take a cursory look at what you can find online about full-text search you’ll most likely find at the top of your search some MSDN documentation from Microsoft on how to setup full-text search. At this point I wasn’t so much interested in knowing how to set it up versus why I would want to setup it in the first place.&lt;/p&gt;
&lt;p&gt;So what is this full-text search feature? The name itself seems rather descriptive but it doesn’t give you a glance into how it can actually benefit you. Let’s think of this special type of index in terms of a book. A book will typically have a table of contents containing an index of chapters and possibly an appendix containing supplementary information on words or phrases and where to find them within the book. The table of contents index is typically based on the context of subject matter found in each chapter. This makes sense from a reader’s perspective who may want to skip ahead to read a particular topic. This is not easy to do if the reader only had an appendix which would be used more for a specific lookup of a word or phrase of interest.&lt;/p&gt;
&lt;p&gt;I like to think of a typical index on a text field like the appendix of a book. The appendix is simply based on the content of the book which is valid for certain purposes but not necessarily the context. Full-text search from my perspective provides a higher level of indexing as compared to an appendix. A typical index on a text field indexes character data whereas a full-text index tracks the occurrences of words and word-forms in the blocks of unstructured text which makes a full-text index structure very different from standard indexes.&lt;/p&gt;
&lt;p&gt;When it comes to searching text you can think of full-text search as a super index. Most developers are probably most familiar with searching through text data using the LIKE operator. Depending on the amount of data being searched the LIKE operator will often times give good enough performance, but if you think about it how often are you actually searching text data by the character? Most likely you are probably looking for a word or phrase. The biggest performance gains with a full-text index over a standard index comes when as you find yourself having to search larger datasets. This is because the full-text index is based on words and not simply on the individual characters that make up the words. When the full-text search engine indexes text it breaks the words into tokens which become the basis of the index.&lt;/p&gt;
&lt;p&gt;Here’s what Microsoft has to say about full-text index performance:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;“The performance benefit of using full-text search can be best realized when querying against a large amount of unstructured text data. A LIKE query against millions of rows of text data can take minutes to return; whereas a full-text query can take only seconds or less against the same data, depending on the number of rows that are returned. “&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Besides the performance gains the full-text search engine allows you to not only search on words, but phrases, and inflectional forms of words. You can search for a word such as “drive” and specify that other forms of the word should quality in the search like “drives”, “driving” or “driven”. You also can specify searches on synonymous forms of a specific word as well as a word or phrase that begin with specific text.&lt;/p&gt;
&lt;p&gt;You can think of full-text search as SQL Server’s own little search text search engine. You have the ability to rank results and limit the results returned. As a matter of fact a blog post by Microsoft MVP Michael Coles gives an example of how to create your own Google type search using the full-text search engine at &lt;a rel="nofollow" title="http://www.sqlservercentral.com/articles/Full-Text+Search+(2008)/64248/" target="_blank" href="http://www.sqlservercentral.com/articles/Full-Text+Search+(2008)/64248/"&gt;http://www.sqlservercentral.com/articles/Full-Text+Search+(2008)/64248/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In his blog Michael describes how to construct a query engine that uses similar syntax to Google for searching text inside SQL Server. One of the benefits to this is that most people are already familiar with using search engines so you can parlay this experience to reduce the learning curve of an application.&lt;/p&gt;
&lt;p&gt;Some of the other nice things you can do with a full-text search are:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Search for all the difference tenses of a verb or the singular and plural forms of a noun. In the example from MSDN the forms of “foot” or “feet” are given as a possible search pattern. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;The ability to search for words or phrases in close proximity to another word or phrase. &lt;br /&gt;
    &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Search for words or phrases and specify a weighting value.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Differentiating Characteristics of a Full-Text Index&lt;/h2&gt;
&lt;p&gt;So you may still be asking yourself, but what are the actual characteristics of a full-text search index that make it unique? Here are a few features of full-text search that goes beyond a normal index:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Search Filters&lt;/strong&gt; &lt;br /&gt;
    Search filters are full-text components that interpret binary data based on the structure and format. By creating a special column in your table that will store an identifier for the data in the form of a file extension the Full-Text engine can use it as a context for processing the data. An example would be a type column that stores a value of “doc” which would indicate that the engine is processing a Microsoft Word document and therefore use an MSWord Filter. &lt;br /&gt;
    &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Stop Words&lt;/strong&gt; &lt;br /&gt;
    There are common words in languages that provide no meaningful benefit for the search process. Words in the English language that meet this criteria are "the”, “a”, and “an”. These types of words are called stop words because they bloat the index and can interfere with the query processing. Excluding stop words makes the index more efficient. &lt;br /&gt;
    &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Stop Lists&lt;/strong&gt; &lt;br /&gt;
    A stop lists is a collection of stop words. Previous to SQL Server 2008 you were limited to a predefined English language stop word list. Starting in SQL Server 2008 you have the ability to create your own customized stop lists. This is useful if there are words outside of the normal language stop words that you would like to prevent from being indexed. A use case for creating your own stop list could be that for a particular industry there are common words used that you may consider a stop word that you would like to excluding from indexing. In this case you could create your own customized stop word list and add these words. &lt;br /&gt;
    &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Word Breakers&lt;/strong&gt; &lt;br /&gt;
    Languages contain certain characters or structures that delimit words and are considered word breakers. SQL Server uses word breakers to determine how to identify individual words while indexing. These characters or structures are particular to a language and are automatically loaded for each supposed language in SQL Server (NOTE: Multiple languages for full-text search is not supported previous to SQL Server 2008). &lt;br /&gt;
    &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Word Stemmer&lt;/strong&gt; &lt;br /&gt;
    Most language comes from a base of common words or concepts and through word forms can can be created into new words. A word stem example would be the word “repair” with variants such as “repairing” or “repaired”. Finding the common stems of words is critical for determining context. The set of rules that determine how these word forms are identified are called stemmers. Word stemmers can be especially handy when you would like to do a search including all variants of a particular word you may be looking for in a search. If I wanted to find all text containing the word stem of “repair” I could specify this in my query. &lt;br /&gt;
    &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Population &lt;br /&gt;
    &lt;/strong&gt;The process of loading a full-text index structure is called population. There are three modes of population which are full, incremental and update. Full population repopulates the entire index, incremental populates only the incremental changes based on timestamp values and update populates the index using a change tracking record of modified data since the last index population. Full-text search indexes can be populated in batch using Transact-SQL or on a scheduled job to alleviate real-time performance hits.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Summary&lt;/h2&gt;
&lt;p&gt;SQL Server’s full-text search engine is a great feature that helps you when dealing with large amounts of text data. I admittedly took it for granted thinking that it was just some fluffy feature that I didn’t really see as a necessity in my development efforts. Now that I know what full-text search is and what it can do for me I will always consider if the solution I’m working on can benefit from a full-text search index. Now you can do the same.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Resources:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;MSDN Full-Text Search Documentation: &lt;a rel="nofollow" title="http://msdn.microsoft.com/en-us/library/ms142571(v=SQL.90).aspx" target="_blank" href="http://msdn.microsoft.com/en-us/library/ms142571(v=SQL.90).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms142571(v=SQL.90).aspx&lt;/a&gt;&lt;/p&gt;
&lt;div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:13d6f0a7-ef53-4eee-9c38-57b076bc6f84" class="wlWriterEditableSmartContent" style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px;"&gt;Technorati Tags: &lt;a rel="nofollow" target="_blank" href="http://technorati.com/tags/Microsoft"&gt;Microsoft&lt;/a&gt;,&lt;a rel="nofollow" target="_blank" href="http://technorati.com/tags/SQL+Server"&gt;SQL Server&lt;/a&gt;,&lt;a rel="nofollow" target="_blank" href="http://technorati.com/tags/Full-Text+Search"&gt;Full-Text Search&lt;/a&gt;&lt;/div&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/199/Using-SQL-Server-Full-Text-Search-Services-with-Microsoft-Dynamics-CRM.aspx</guid>
         <pubDate>Thu, 14 Jul 2011 21:55:00 +0000</pubDate>
      </item>
      <item>
         <title>How Management Undermines the Successful Implementation of a CRM Solution (Part 1)</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/197/How-Management-Undermines-the-Successful-Implementation-of-a-CRM-Solution-Part-1.aspx</link>
         <description>&lt;p&gt;We have all heard, and many of us experienced, that many CRM solutions do not provide the value that those investing in them expected. There are multiple reasons for this. Over the coming weeks, I’ll share some of the often overlooked reasons and hopefully provide some insight into how to avoid these traps. I’ve lived through (barely surviving!!) nine different CRM implementations, during my last 15 years in sales and sales management. While my current role is tied to helping others avoid these mistakes, everything in this series is taken directly from my observances from “the inside”, while I worked for the company implementing the CRM solution.&lt;/p&gt;
&lt;p&gt;First I will re-state the most over-used cliché’ in IT. &lt;b&gt;“Technology is never the problem. Poor requirements are always the problem”. &lt;/b&gt;I’ve said that myself many times, but in reflection, &lt;b&gt;it just isn’t true.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Developing extraordinary requirements that are followed precisely during development of a system, in no way guarantees a successful solution. People have to use the system!! Sounds obvious, right? You knew that. Everyone knows that. That’s why we spend endless hours debating “the carrot vs. the stick” approaches to getting the sales reps to use the CRM system. But…. (insert drumroll here) How much time and effort is spent debating how we will get management to use the system? Below is a real world scenario that happens daily in organizations of all sizes. I’ve personally lived through it at three different firms. The consistency of how things played out at all three firms is almost eerie. The steps are in chronological order as the typically occur.&lt;/p&gt;
&lt;p&gt;1. Management of the firm decides a CRM solution is needed, so they can know what is going on in the business at any point in time. (You’ve heard it. I’ve heard it. That’s what they always say!)&lt;/p&gt;
&lt;p&gt;2. The firm goes through the process of selecting, designing and implementing a CRM system. Let’s assume for this discussion that they do an excellent job.&lt;/p&gt;
&lt;p&gt;3. The next several months the management continually requests updates on:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Whether or not the sales people are “using that system we spent so much money on?&lt;/li&gt;
    &lt;li&gt;Who’s not using the system? This question is followed by an emphatic “I want names!”&lt;/li&gt;
    &lt;li&gt;Are all the opportunities and customers entered into the system?&lt;/li&gt;
    &lt;li&gt;Are we going to meet the deadline I set for having all of the information in the system up to date? "I just had someone check and there is one opportunity that I know closed yesterday and it isn’t shown as closed in the system", they say. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;4. Sales feels the pressure and begins doing a pretty good job of using the system.&lt;/p&gt;
&lt;p&gt;5. Many sales reps and sales managers begin seeing the power of the tool and begin using it beyond the minimum requirements management has put forward.&lt;/p&gt;
&lt;p&gt;6. Everything is settling in fine. The system is really looking like a success.&lt;/p&gt;
&lt;p&gt;7. Management sends out an urgent email to all sales employees stating, “I need your forecast by the end of the day. Please fill out the attached spreadsheet and have it back to me by 4:30. This is not optional”. (The subject line of this email is almost universally “FIREDRILL!!!”)&lt;/p&gt;
&lt;p&gt;8. Sales people and sales managers frantically scramble to get their information out of the CRM system and retype it all into the spreadsheet provided in the email.&lt;/p&gt;
&lt;p&gt;9. Approximately 24 hours pass.&lt;/p&gt;
&lt;p&gt;10. Sales managers and sales reps gather in small groups in the hall, or chat on the phone and the comments are pretty consistent:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;“Everything they asked for is in CRM. Why don’t they go look at it”&lt;/li&gt;
    &lt;li&gt;“They beat us over the head with that CRM system and THEY don’t even use it!”&lt;/li&gt;
    &lt;li&gt;“They told us the main reason we should use the new system was so “we would never have to have firedrills like that again. I actually believed them!”&lt;/li&gt;
    &lt;li&gt;“Why should I take the time to enter all my information in the system if no one is going to look at it”&lt;/li&gt;
    &lt;li&gt;“Now you understand why I was the only one who held out on using this CRM stuff. I’ve seen this a hundred times before”&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;11. Over the next month or two, steps 7 through 10 repeat three or four times.&lt;/p&gt;
&lt;p&gt;12. Usage of the system starts to diminish.&lt;/p&gt;
&lt;p&gt;13. Sales managers start going back to “the old spreadsheet” as a way to get the forecast from their team. It saves them time because their boss will want to see it that way. They have to either choose this option or tell their team to keep using CRM and take the brunt of manually putting 10 different reps’ forecasts into a spreadsheet that doesn’t even have the same fields as CRM.&lt;/p&gt;
&lt;p&gt;14. Another 6-12 months pass&lt;/p&gt;
&lt;p&gt;15. A new sales rep joins the firm and asks his manager, “what do we use for CRM here”. The sales manager responds, “I’ll send you the spreadsheet”.&lt;/p&gt;
&lt;p&gt;16. &lt;span style="color:#ff0000;"&gt;CRM dies.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;And it wasn’t because of poor requirements &lt;strong&gt;OR&lt;/strong&gt; bad technology.&lt;/p&gt;
&lt;p&gt;The moral to the story: Sales reps adopting the system and entering all of their information is not synonymous with successful adoption of a  CRM solution. Someone needs to use the information that is there!&lt;/p&gt;
&lt;p&gt;P.S. It is very important to note that I have used the term “management” as the major culprit here and not the term “sales management”. That was intentional.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/197/How-Management-Undermines-the-Successful-Implementation-of-a-CRM-Solution-Part-1.aspx</guid>
         <pubDate>Wed, 06 Jul 2011 19:00:00 +0000</pubDate>
      </item>
      <item>
         <title>A Not-So-Common Web Service Found in SharePoint (2007 and 2010)</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/191/A-Not-So-Common-Web-Service-Found-in-SharePoint-2007-and-2010.aspx</link>
         <description>&lt;p&gt;In our day-to-day client work, we recently stumbled upon a web service that is installed with SharePoint, but honestly had never implemented.  In fact, the web service is not listed on either MSDN page for SharePoint 2007 or 2010.  However, we have now tested this web service (and plan to use it very soon), so I wanted to share our findings with the community.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;[Note: This post will not focus on how to call a web service or work with the results]&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The web service is aptly named the &lt;em&gt;Spelling Service &lt;/em&gt;and actually leverages code from the &lt;a rel="nofollow" target="_blank" href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.publishing.aspx"&gt;Microsoft.SharePoint.Publishing&lt;/a&gt; namespace.  The web service can be found at the following URL: &lt;font face="Courier New"&gt;http://sharepointsite/_vti_bin/spellcheck.asmx&lt;/font&gt;.  In a nutshell, you simply pass the web service 'chunks' of text, and it will identify whether or not any of the words are misspelled.  Additionally, you can also specify the language (LCID) or a Boolean flag to auto-detect the language based on the word(s) submitted. &lt;/p&gt;
&lt;p&gt;When the response is returned, the XML will contain various nodes (as seen in the screenshots below), which include the index of the text 'chunk' where spelling errors appear, the words 'flagged' and the type of spelling error that occurred (&lt;em&gt;RepeatWord &lt;/em&gt;or &lt;em&gt;UnknownWord&lt;/em&gt;).  An additional node that you will notice is the &lt;em&gt;offset&lt;/em&gt; field, which identifies the location in the input where the misspelled word begins.  Lastly, a &lt;em&gt;spellingSuggestions &lt;/em&gt;node is also returned which includes the misspelled word and a list of suggestions in the &lt;em&gt;sug&lt;/em&gt; node.&lt;/p&gt;
&lt;p&gt;Sure, there are other spelling web services out there, but we can see endless possibilities with this, especially if you already own SharePoint (Standard or higher).  I can easily see us leveraging this for Dynamics CRM as well as many other integration projects in the future.&lt;/p&gt;
&lt;p&gt;Enough of the details, here are some screenshots from our own internal tests of this web service.&lt;/p&gt;
&lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="200"&gt;&lt;strong&gt;SOAP Message: &lt;br /&gt;
            &lt;/strong&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_2.png"&gt;&lt;img title="image" border="0" alt="image" width="505" height="219" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_thumb.png"/&gt;&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="200"&gt;&lt;strong&gt;SOAP Response: &lt;br /&gt;
            &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_4.png"&gt;&lt;img title="image" border="0" alt="image" width="505" height="383" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_thumb_1.png"/&gt;&lt;/a&gt; &lt;br /&gt;
            &lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td bgcolor="#aeaeae" height="4" valign="top" colspan="2"&gt; &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="200"&gt;&lt;strong&gt;&lt;br /&gt;
            SOAP Message: &lt;br /&gt;
            &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_6.png"&gt;&lt;img title="image" border="0" alt="image" width="505" height="213" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_thumb_2.png"/&gt;&lt;/a&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td valign="top" width="200"&gt;&lt;strong&gt;&lt;br /&gt;
            SOAP Response: &lt;br /&gt;
            &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_10.png"&gt;&lt;img title="image" border="0" alt="image" width="505" height="511" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/A-Not-So-Common-Web-Service-in-SharePoin_C1D8/image_thumb_4.png"/&gt;&lt;/a&gt;&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/191/A-Not-So-Common-Web-Service-Found-in-SharePoint-2007-and-2010.aspx</guid>
         <pubDate>Fri, 01 Jul 2011 18:18:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM 2011 Outlook Client Tracing 101</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/188/CRM-2011-Outlook-Client-Tracing-101.aspx</link>
         <description>&lt;p&gt;Have you run into a problem with the Outlook client and someone suggested, “Hey, turn on tracing and let me know what you find”?&lt;/p&gt;
&lt;p&gt;Gee, thanks. That’s helpful, right?&lt;/p&gt;
&lt;p&gt;Here’s what you need to know about tracing for the Outlook client:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;What is tracing?
    &lt;ol&gt;
        &lt;li&gt;Tracing is a way to gather a list of the information passed back and forth between a program and a computer. For the CRM Outlook client, tracing will show a chronological, readable play-by-play of what the add-in is trying to do, including error messages that are often more helpful than “An error occurred. Please contact your System Administrator.” (Side note: Microsoft has done an admirable job in CRM 2011 of minimizing these generic error messages, so no digs implied, Microsoft!)       &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;How do I turn tracing on?
    &lt;ol&gt;
        &lt;li&gt;If you encounter weird errors and there’s no apparent cause (like a SwagBucks browser add-on perusing all your web traffic – c’mon, people!), you can enable tracing by going to the Start menu &amp;gt; All Programs &amp;gt; Microsoft Dynamics CRM 2011 &amp;gt; Diagnostics. Click on the Advanced Troubleshooting tab, and place a checkmark next to “Tracing”. Then click Save.       &lt;br /&gt;
        &lt;br /&gt;
        &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-Outlook-Client-Tracing-101_E5AA/diag-adv_trblshooting_4.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="diag-adv_trblshooting" border="0" alt="diag-adv_trblshooting" width="542" height="484" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-Outlook-Client-Tracing-101_E5AA/diag-adv_trblshooting_thumb_1.png"/&gt;&lt;/a&gt;        &lt;br /&gt;
        &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;Where do I find the results?
    &lt;ol&gt;
        &lt;li&gt;Aaah, you actually want to see what happens?! The trace files (simple text files) are saved on your hard drive. By default (in Windows 7) they can be found at:        &lt;br /&gt;
        &lt;font face="Courier New"&gt;         &lt;br /&gt;
        C:&amp;#92;Users&amp;#92;JohnTravolta&amp;#92;AppData&amp;#92;Local&amp;#92;Microsoft&amp;#92;MSCRM&amp;#92;Traces&lt;/font&gt;        &lt;br /&gt;
        &lt;br /&gt;
        (Obviously, unless you’re the star of Get Shorty, you need to change the name in the path above.)        &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;What else should I know?
    &lt;ol&gt;
        &lt;li&gt;Turn tracing off when you’re done playing around. Collecting all that information can slow your Outlook client down. Then send the files to your friendly neighborhood support type person.&lt;/li&gt;
        &lt;li&gt;I’m not going to go into the meaning of the information in the trace files here because this is a post about Tracing 101, and that’s a 200-level topic, and that’s what &lt;strike&gt;Google&lt;/strike&gt; Bing is for (and it’s been a long day!).&lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
&lt;/ol&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/188/CRM-2011-Outlook-Client-Tracing-101.aspx</guid>
         <pubDate>Thu, 09 Jun 2011 01:43:00 +0000</pubDate>
      </item>
      <item>
         <title>Working with Views in Dynamics CRM 2011</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/186/Working-with-Views-in-Dynamics-CRM-2011.aspx</link>
         <description>&lt;p&gt;[NOTE: This blog is the first in a series on working with views in Microsoft Dynamics CRM 2011.]&lt;/p&gt;
&lt;p&gt;Microsoft has continued its focus on improving the user experience in its new release of the software by incorporating a number of new features for users and administrators to make configuring, using and administering views easier and more powerful. Based on some recent demos we’ve done for clients, I’m putting together a few blog posts to examine some of these improvements. The first of these posts will look at the newest features that users will encounter as they become familiar with CRM 2011. Let’s start with the basics of navigating to views.&lt;/p&gt;
&lt;p&gt;The sitemap provides several new ways to quickly access views:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Quick navigation to views: Users can go directly to a selected view from the sitemap links (the main navigational links in the UI). To navigate to a desired view, hover over a sitemap link until the triangular carat appears, and then select the view, as shown below: &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/sitemap-link-to-views_2.png"&gt;&lt;img title="sitemap-link-to-views" border="0" alt="sitemap-link-to-views" width="402" height="484" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/sitemap-link-to-views_thumb.png"/&gt;&lt;/a&gt; &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Cached views: When a user selects a view of a given entity, then navigates to another part of the application, when the user returns to the original entity, CRM 2011 remembers the last view they were working with in that session, regardless of the default view, and displays that. For example, if you browse to Contacts and select the “Inactive Contacts” view, then click on Accounts, the next time you click back to Contacts, the last view you were using is displayed, in this case the “Inactive Contacts” view. A small improvement, but a timesaver nonetheless, saving users a click in many cases.&lt;/li&gt;
    &lt;li&gt;MRU – Most Recently Used: The main navigation of CRM 2011 now incorporates an MRU list that displays not only the last views the user was working with, but also the last individual records. If you are updating a set of records and moving through the application, the MRU list can quickly get you back to where you were moments before. You can also “pin” your favorite views and records to the MRU list so they are readily accessible every time you access CRM: &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/MRU_4.png"&gt;&lt;img title="MRU" border="0" alt="MRU" width="644" height="422" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/MRU_thumb_1.png"/&gt;&lt;/a&gt; &lt;br /&gt;
    &lt;strong&gt;TIP:&lt;/strong&gt; You can access the MRU list even fast by using the keyboard shortcut Ctrl + Shift + 7. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Filtering: You can filter views, much like filtering a table in Excel, in order to narrow down the records returned in a given list view. To filter a view, click the filter icon on the main view ribbon, or on the View tab (as shown below) and then select one or more filter options from the dropdown that appears in the column header. You can filter on more than one column, and you can create custom filters as well. &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/filtering-views_4.png"&gt;&lt;img title="filtering-views" border="0" alt="filtering-views" width="644" height="386" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/filtering-views_thumb_1.png"/&gt;&lt;/a&gt; &lt;br /&gt;
    &lt;br /&gt;
    The “Custom Filter” dialog: &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/custom-filter_2.png"&gt;&lt;img title="custom-filter" border="0" alt="custom-filter" width="244" height="174" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/fd81037fecb6_74A9/custom-filter_thumb.png"/&gt;&lt;/a&gt; &lt;br /&gt;
     &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In the next post, we’ll take a look at how to work with saved views in CRM 2011.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/186/Working-with-Views-in-Dynamics-CRM-2011.aspx</guid>
         <pubDate>Mon, 06 Jun 2011 17:41:00 +0000</pubDate>
      </item>
      <item>
         <title>Collapse and Expand: Working with Tabs in CRM 2011</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/184/Collapse-and-Expand-Working-with-Tabs-in-CRM-2011.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" title="Collapse This Tab - Remember Tab State in CRM 2011" target="_blank" href="http://dynamics.pinpoint.microsoft.com/en-us/applications/remember-my-tabs-4295032309"&gt;&lt;img style="margin:0px 16px 0px 0px;display:inline;float:left;" title="Remember Collapsed or Expanded Tab in CRM 2011" alt="Remember Collapse This Tab in CRM 2011" align="left" src="http://www.c5insight.com/Portals/0/misc%20images%20and%20flash/rmt.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;CRM 2011 forms include “tabs” to help organize information.  If you are a user of previous versions of CRM you know that tabs used to be presented across the top of a form.  In CRM 2011 tabs are now presented vertically.  This has several advantages:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;With your forms organized vertically, users can now scroll through an entire form without having to use the mouse to switch to a different tab. This may seem like a small thing – but when a user spends a significant portion of their day doing data entry, this can be a real time saver.&lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Users can still rapidly navigate to a tab by using the Quick Tab navigation in the navigation menu on the left of a form (see the nearby image).&lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Tabs can be collapsed or expanded – making it easier for users to see just the data that they want to see on a form. This tab “state” (collapsed or expanded) can be changed by the user by clicking the small triangle to the left of a tab name.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The default tab state is set when designing a form.  So, whenever a form is initially displayed, each tab will be collapsed or expanded based upon the settings for that particular form.  This tab state is the same for all users of the form and is always reset when a user opens a form.  For example, if a user opens an account form and collapses a tab called “Contacts” and then clicks the Save &amp; Close button, the state of the tab is not remembered. When a user opens the form again, the tab returns to the same state it was in the last time the form was opened.&lt;/p&gt;
&lt;p&gt;So, by default, tabs are helpful for setting default collapsed/expanded settings for a form; and they’re useful for a user to collapse/expand while looking at a particular form.  They are not, however, unique to each user.&lt;/p&gt;
&lt;h1&gt;Remembering Tab State Settings by User&lt;/h1&gt;
&lt;p&gt;So, is it possible to remember the state of each tab on each form for each individual user?  In a word: yup!&lt;/p&gt;
&lt;p&gt;We have published an app on the Microsoft Dynamics Marketplace that allows you to do just that.  You can &lt;a rel="nofollow" title="Remember My Tabs - Remember Tab State Settings" target="_blank" href="http://dynamics.pinpoint.microsoft.com/en-us/applications/remember-my-tabs-4295032309"&gt;click here&lt;/a&gt; to learn more about the app and purchase a copy.&lt;/p&gt;
&lt;h1&gt;Buy the Book, Get the App&lt;/h1&gt;
&lt;p&gt;Looking for another way to get the app?  Well, if you’re reading this post before June 15, 2011, you’re in luck.  When you buy a copy of the Dynamics CRM Administration Bible, you are entitled to a free organization license to Remember My Tabs.  To learn more about this offer and purchase a copy of the book, visit &lt;a rel="nofollow" target="_blank" href="http://www.dynamicscrmbible.com"&gt;www.dynamicscrmbible.com&lt;/a&gt;.&lt;/p&gt;
&lt;h1&gt;C5 Insight Clients&lt;/h1&gt;
&lt;p&gt;For clients of C5 Insight, the Remember My Tabs is a part of our standard launch toolkit – so if we are consulting with you to implement Dynamics CRM 2011, the application will be installed for you.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/184/Collapse-and-Expand-Working-with-Tabs-in-CRM-2011.aspx</guid>
         <pubDate>Tue, 24 May 2011 20:50:00 +0000</pubDate>
      </item>
      <item>
         <title>Quick Tip: Displaying the Data Grid for Part of a Chart in a CRM 2011 Dashboard</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/180/Quick-Tip-Displaying-the-Data-Grid-for-Part-of-a-Chart-in-a-CRM-2011-Dashboard.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Quick-Tip-Displaying-the-Data-Grid-for-P_C240/image_2.png"&gt;&lt;img title="image" border="0" alt="image" align="left" width="194" height="244" style="background-image:none;border-right-width:0px;margin:0px 44px 0px 0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Quick-Tip-Displaying-the-Data-Grid-for-P_C240/image_thumb.png"/&gt;&lt;/a&gt;Interacting with dashboards in Dynamics CRM 2011 is a powerful way to monitor and manage your business.  Frequently, however, it would be helpful to “drill into” only a portion of a chart (such as a bar in a bar chart or a slice of a pie chart) to see the grid behind it.  Because of the way that dashboards function, however, it is not readily apparent how to do this.  This post demonstrates how you can accomplish this in just two mouse clicks.&lt;/p&gt;
&lt;ol&gt;
    &lt;ol&gt;
        &lt;li&gt;While hovering over the chart that you want to drill into, click the “view the records” icon on the upper right-hand side of the chart.  You will be taken to a grid showing all of the data for the cart (not just the data for the desired section).  The chart will also appear next to the grid. &lt;br /&gt;
         &lt;/li&gt;
        &lt;li&gt;Click the section that you want to see the data for.&lt;/li&gt;
    &lt;/ol&gt;
&lt;/ol&gt;
&lt;p&gt;That’s it!  In two clicks, you’ve been able to drill from a dashboard, to a chart, to the data behind a specific slice of a chart.  See the nearby video for a live example.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;embed height="481" width="641" type="application/x-shockwave-flash"&gt;&lt;/iframe&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/180/Quick-Tip-Displaying-the-Data-Grid-for-Part-of-a-Chart-in-a-CRM-2011-Dashboard.aspx</guid>
         <pubDate>Thu, 05 May 2011 23:25:00 +0000</pubDate>
      </item>
      <item>
         <title>Join us at Decisions Spring 2011 (Virtual Conference)</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/179/Join-us-at-Decisions-Spring-2011-Virtual-Conference.aspx</link>
         <description>&lt;p&gt;I'll be presenting a session for CRM administrators at the upcoming Decisions Spring 2011 virtual conference on June 17, hosted by MSDynamicsWorld.com: &lt;span class="italic"&gt;&lt;a rel="nofollow" title="What CRM Administrators Need to Know About CRM 2011" target="_blank" href="http://decisions.msdynamicsworld.com/session/decisions-event-how-about-if-i-do-session-what-crm-administrators-need-know-about-crm-2011"&gt;What CRM Administrators Need to Know About CRM 2011&lt;/a&gt;. I'll cover the most important technical considerations that administrators need to be familiar with when considering implementing or upgrading to CRM 2011.&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:center;"&gt;&lt;span class="italic"&gt;&lt;a rel="nofollow" target="_blank" href="https://presentations.inxpo.com/Shows/MSDynamics/06_11/Registration/Decisions06_11RegistrationPage.html?AffiliateKey=13512&amp;AffiliateData=BLOG"&gt;&lt;img alt="MSDynamicsWorld.com Decisions Spring 2011" width="533" height="172" src="http://blogs.c5insight.com/Portals/0/BlogImages/Matt/spring_template_header_01.jpg"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="italic"&gt;MSDynamicsWorld.com has been hosting these semiannual events for a couple of years now, and they are tremendous, free resources for learning and networking. The conference kicks off on Tuesday, June 14, with sessions dedicated to Dynamics AX. The 15th is focused on GP, the 16th on NAV, and the 17th on CRM.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="italic"&gt;You'll have the opportunity to ask questions of the presenters via live chat, and interact with other attendees and experts in a virtual networking lounge.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="italic"&gt;To register: &lt;span style="color:black;font-size:10pt;"&gt;&lt;a rel="nofollow" target="_blank" href="https://presentations.inxpo.com/Shows/MSDynamics/06_11/Registration/Decisions06_11RegistrationPage.html?AffiliateKey=13512&amp;AffiliateData=BLOG"&gt;&lt;font color="#0000ff"&gt;https://presentations.inxpo.com/Shows/MSDynamics/06_11/Registration/Decisions06_11RegistrationPage.html?AffiliateKey=13512&amp;AffiliateData=BLOG&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/179/Join-us-at-Decisions-Spring-2011-Virtual-Conference.aspx</guid>
         <pubDate>Tue, 03 May 2011 19:36:00 +0000</pubDate>
      </item>
      <item>
         <title>Trouble connecting to CRM 2011 from Scribe Insight</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/178/Trouble-connecting-to-CRM-2011-from-Scribe-Insight.aspx</link>
         <description>&lt;p&gt;Scribe recently released their adapter for CRM 2011. I was very excited when I saw this release and wanted to test it out ASAP. After downloading and installing the adapter I ran into a few snags on the connection. The issues I ran into were my fault so I thought I would pass my lessons learned out to you. My issues revolved around connections to CRM 4 On-Line and CRM 2011 On-Line and what should be supplied for the “Organization” connection parameter.&lt;/p&gt;
&lt;p&gt;For CRM 4 you need to supply the “Unique Organization Name” to find this in CRM 4 On-Line you will need to browse to: "Settings &amp;gt; Customization &amp;gt; Developer Resources.” Once in the Developer Resources area you will see the Unique Organization Name.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Trouble-connecting-to-CRM-2011-from-Scri_88B1/CRM_4_Unique_Online_Name_2.png"&gt;&lt;img title="CRM_4_Unique_Online_Name" border="0" alt="CRM_4_Unique_Online_Name" width="611" height="146" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Trouble-connecting-to-CRM-2011-from-Scri_88B1/CRM_4_Unique_Online_Name_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;For CRM 2011 you need to supply the “Friendly Organization Name.” To find this name all you have to do is login to your CRM 2011 Org and look in the top menu bar on the right hand side. The name will be listed directly under your user name. Make sure you include any spaces or punctuation.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Trouble-connecting-to-CRM-2011-from-Scri_88B1/CRM_2011_Friendly_Name_2.png"&gt;&lt;img title="CRM_2011_Friendly_Name" border="0" alt="CRM_2011_Friendly_Name" width="220" height="61" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Trouble-connecting-to-CRM-2011-from-Scri_88B1/CRM_2011_Friendly_Name_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I hope this helps you out when making your CRM connections! Good luck with your DTS creations!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/178/Trouble-connecting-to-CRM-2011-from-Scribe-Insight.aspx</guid>
         <pubDate>Mon, 25 Apr 2011 22:40:00 +0000</pubDate>
      </item>
      <item>
         <title>Released: Update Rollup 1 for Microsoft Dynamics CRM 2011</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/174/Released-Update-Rollup-1-for-Microsoft-Dynamics-CRM-2011.aspx</link>
         <description>&lt;p&gt;Microsoft has released the first Update Rollup for CRM 2011. The knowledgebase article is located &lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/kb/2466084"&gt;here&lt;/a&gt;, and the rollup can be download &lt;a rel="nofollow" target="_blank" href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=8cd2384e-e06a-4cf1-800d-303aec37f40b&amp;displaylang=en"&gt;here&lt;/a&gt;. (Note that there are separate downloads for the server, clients, BIDS extension, E-mail Router, and SRS Data Extension.)&lt;/p&gt;
&lt;p&gt;This update rollup includes fixes for a number of items as the KB article details. In particular, there are a few fixes that I've been looking for:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;One that fixes a script error that is thrown frequently when switch rapidly between areas of the CRM web UI&lt;/li&gt;
    &lt;li&gt;Another that enables intranet access to CRM when it is configured for Internet-facing deployment.&lt;/li&gt;
    &lt;li&gt;Another big one that I'm eager to get past is a problem that occurred configuring the Outlook client if the client machine also had the Windows Live Sign-in Assistant installed.:&lt;/li&gt;
    &lt;li&gt;"Assume that you create an email address for a queue that is owned by a team entity. In this situation, you cannot approve the email address." (This one had me stumped until I assigned ownership of the offending queue to a user. Glad to see this is fixed.)&lt;/li&gt;
    &lt;li&gt;There was a minor bug with upgraded orgs that caused sitemap icons to sometimes not display correctly. This has been fixed.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Update Rollup will be available through Windows Updates by the end of the month, but you can download and apply it now manually.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/174/Released-Update-Rollup-1-for-Microsoft-Dynamics-CRM-2011.aspx</guid>
         <pubDate>Fri, 08 Apr 2011 01:53:00 +0000</pubDate>
      </item>
      <item>
         <title>Connections: Dynamics CRM 2011 Gets Social</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/166/Connections-Dynamics-CRM-2011-Gets-Social.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/Standard-relationships-in-CRM-solutions_2.png"&gt;&lt;img title="Standard Relationships in CRM Solutions" border="2" alt="Standard-relationships-in-CRM-solutions" align="left" width="240" height="197" style="margin:0px 15px 0px 0px;display:inline;float:left;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/Standard-relationships-in-CRM-solutions_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Customer relationship management systems typically handle relationships between records in a linear format. For example, in the image to the left, an account (aka a company) may have a relationship with one or more contacts (aka the employees of that company).  Similarly, the account may also have one more more opportunities associated with it.&lt;/p&gt;
&lt;p&gt;In the strictest sense, this is how the business views the relationships.  Everything is nice and tidy and linear.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h1&gt;The Reality of Social Connections&lt;/h1&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/Connected-records-in-Microsoft-Dynamics-CRM-2011-Social-SCRM_2.png"&gt;&lt;img title="Connected Records in Microsoft Dynamics CRM 2011 - Social SCRM Similarities" border="2" alt="Connected-records-in-Microsoft-Dynamics-CRM-2011-Social-SCRM" align="right" width="308" height="181" style="margin:0px 0px 0px 20px;display:inline;float:right;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/Connected-records-in-Microsoft-Dynamics-CRM-2011-Social-SCRM_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;But the reality of social connections is quite a bit different from the way that traditional CRM systems have organized them.  Social connections are complex – even messy (ask either of my teenage daughters).  Legal relationships are formed between businesses.  Referrals are made by an individual in one business to an individual in another.  Partner firms are used as part of the sales process to generate leads, provide service, write contracts and close the deal.  A contact for one organization is on the board of directors for another.  Your own employees bring friendships and other connections with them when they join (and when they leave) your organization.&lt;/p&gt;
&lt;p&gt;The reality of social connections is closer to the image you see to the right.&lt;/p&gt;
&lt;p&gt;In fact, social networking sites have already laid the groundwork for modeling and navigating these complex social connections.  Dynamics CRM 2011 adds the ability to track complex connections and calls it(conveniently enough), Connections.&lt;/p&gt;
&lt;h1&gt;Connections in Microsoft Dynamics CRM 2011&lt;/h1&gt;
&lt;p&gt;Use the embedded video to learn how to work with connections in Dynamics CRM.  Or, if you prefer, follow the step-by-step instructions below the video as a guideline to creating connections.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt; 
&lt;p&gt; &lt;/p&gt;
&lt;h2&gt;Creating Connections to You&lt;/h2&gt;
&lt;p&gt;It is very simple to connect other records to you within Dynamics CRM – but why would you want to do such a thing?  There are actually some very good reasons.  Many organizations use a selling team model and adding yourself as a “connection” to a record (such as an account or opportunity) is one method for identifying yourself as a part of the team that focuses on that record.  You may also want to associate yourself to a record to let other users know that you have a relationship that can be tapped into as a part of the business (for example, if you were a past co-worker of a hot prospect, it may be helpful for others in your organization to know about that so that they can collaborate with you).  CRM 2011 includes a “My Connections” view for records that can use connections – so once you are connected to a record you can easily find it to aid you in prioritizing your work each day.  Here’s the skinny on connecting a record to yourself:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Navigate to the record that you want to connect to yourself.  You can either select it in the grid view, or you can open the form. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;In the ribbon menu, click the Connect button. &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/image_2.png"&gt;&lt;img title="image" border="0" alt="image" width="54" height="72" style="background-image:none;border-right-width:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/image_thumb.png"/&gt;&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;From the drop-down menu, select the “To Me” option. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;You will be presented with a form that allows you to choose your role in relation to this record.  You can choose any role on the list, or create a new role.  You can also enter a description with more details about the relationship (for example, “Wyle E Coyote was my immediate manager in dealing with the supply chain relationship with ACME Corp.”) &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Save and Close the form.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The connection has now been created.  Anyone who views the record that you are connected to will be able to see the link and reach out to you for more information if needed.&lt;/p&gt;
&lt;h2&gt;Creating Connections to Other Records&lt;/h2&gt;
&lt;p&gt;Perhaps more importantly, you can create relationships to other records.  We’ve run into a diverse range of needs for this type of connection.  For example, businesses that sell through distribution channels may want to track their distributors, and also the customers of their distributors.  When they create a new opportunity, the “customer” may be the end-buyer of the product, but they may also want to create a connection to the distributor who is working on the opportunity.  Business brokers are another example – these organizations aid in the buying and selling of businesses, so they must track complex business relationships among holding companies, companies up for sale, and all the potential buyers of those companies. &lt;/p&gt;
&lt;p&gt;Creating these connections is pretty much the same as creating connections to you – but we’ll add a few other items in our instructions to take you one step deeper with connections:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Follow steps #1 and #2 above. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;From the drop-down menu, select the “To Another” option. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Again you will be brought to the connections form – but this time you will need to choose the record to connect to.  Click the lookup button and select a record (this assumes that CRM has been configured to allow you to make connections to the types of records that you’re interested in – see your administrator or partner if this is not the case). &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;As before, choose the role and, if desired, enter a description. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Now click the Details header at the bottom of the form.  You’ll notice that the “Connected From” field has already been filled in with the name of the record you were on.  You can also define a role for this record – this field is provided so you can enter different roles depending on your perspective.  For example, when looking at a connection between two contacts you may want one contact to have the role “Referred By” and the other to have the role “Referred To.”  &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;You can also set a start and end date for connections.  So, if you have “time based” connections (for example, perhaps a CPA firm that is only connected to an opportunity until the opportunity closes), you can set a time for those connections to expire.  The records will still be there, but the dates will show that they are no longer active. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;As always, click Save and Close when you’re done creating your connection.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Hover over the image below for more information on how to complete the connection form.&lt;/p&gt;
&lt;p&gt;&lt;embed height="390" width="717" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;h2&gt;Finding Connections&lt;/h2&gt;
&lt;p&gt;Once connections are set, finding and understanding them is very easy.  Just navigate to the record, open the form, and click the Connections related list in the side navigation panel.  The image below illustrates the connections you will see on the Litware record based on the settings made in the image above.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/image_6.png"&gt;&lt;img title="Browsing the list of connections on a Dynamics CRM 2011 record" border="0" alt="Connections-in-Microsoft-Dynamics-CRM-2011" width="354" height="106" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Connections_121A6/image_thumb_2.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;NOTE: Connections do not “roll up” to the account level like activities do.  For example, if you connect an opportunity to a contact and then navigate to the parent account of either the opportunity or contact record, you will not see the connection you just made.  If it is important that connections be visible at both levels, then you should provide training to your users to manually set multiple connections when needed or work with your administrator or CRM partner to provide customization to handle this task. &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h1&gt;What Else Can I do With Connections?&lt;/h1&gt;
&lt;p&gt;Connections can be used for a virtually unlimited number of applications.  They can track sales teams, links on social networks or any other number of relationships. Although connections will mostly be used to track some kind of business relationship, they can also be used to connect other records – such as connecting cases to opportunity line items to track projects related to configuring a piece of equipment.  With some advanced customization, you can further streamline how your organization creates, views and navigates connections.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/166/Connections-Dynamics-CRM-2011-Gets-Social.aspx</guid>
         <pubDate>Wed, 06 Apr 2011 02:21:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM 2011 for Outlook: Next Generation Outlook Email Integration</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/165/CRM-2011-for-Outlook-Next-Generation-Outlook-Email-Integration.aspx</link>
         <description>&lt;p&gt;&lt;img title="Microsoft Office Outlook 2010 and Dynamics CRM 2011" border="0" alt="Microsoft Office Outlook 2010 and Dynamics CRM 2011" align="left" width="128" height="128" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-2011-Next-Generation-Outlook-Email-I_1146B/Microsoft%20Office%20Outlook%202010%20and%20Dynamics%20CRM%202011_3.png"/&gt;Everybody knows that Microsoft Dynamics CRM has always been the leader of the pack when it comes to integration with Microsoft Outlook.  So nobody was expecting to see significant changes in this area with the introduction of CRM 2011.  But Microsoft delivered a very nice surprise to their customers when they not only improved the Outlook integration – but in fact gave it a complete overhaul.  In fact, the upgrades to CRM for Outlook are so extensive, that we expect to see fewer-and-fewer users accessing the Web version of Dynamics CRM at all.  Many of our clients are providing user training only in CRM 2011 for Outlook.&lt;/p&gt;
&lt;p&gt;There are so many different improvements in CRM for Outlook that it’s impossible to cover all of them in a single article, so I am going to focus on my favorite new CRM/Outlook functionality – good old email!&lt;/p&gt;
&lt;h1&gt;How Important is Outlook Integration with CRM?&lt;/h1&gt;
&lt;p&gt;I don’t have any official figures – but it’s a pretty safe bet that over 80% of written business communication is handled by email these days (and that number is likely to be a lot higher). So a small gain in efficiency related to email can result in a tremendous productivity gain across your business. With that in mind, it’s critically important that users be able to function in a “friction free” environment when it comes to using their CRM solution with their email software.  So how does CRM 2011 deliver on that?  I’m glad you asked…&lt;/p&gt;
&lt;h1&gt;CRM and Email: The Old and The New&lt;/h1&gt;
&lt;p&gt;In virtually all CRM solutions (including Dynamics CRM 4.0 and earlier), if you wanted to send an email from the CRM solution, then you suffered through a somewhat clunky interface that didn’t work the way you were comfortable working in Outlook.  You couldn’t have as much control over the formatting, your signature line worked differently, and the steps for adding recipients wasn’t as intuitive.  Business managers didn’t like this approach any better than users because they could not control corporate branding and compliance standards as easily as they could in Outlook.&lt;/p&gt;
&lt;p&gt;On the other hand, if you used Outlook to send your emails, you didn’t have access to some of the rich email template, sales literature and knowledge base article integration that is available in CRM. Being able to quickly create email content using these CRM tools is an important benefit that can save users a lot of time.&lt;/p&gt;
&lt;p&gt;In the new world of Dynamics CRM 2011, you manage your email in the place that you’re most comfortable – right inside of Outlook.  But you also access all of your CRM email functionality in the same place.  While creating your email in Outlook, you can quickly link the email to records in Dynamics CRM, insert templates, KB articles and sales literature.  Branding and compliance standards are enforced through the Exchange and Outlook experience, and users communicate with customers while collaborating internally in the most efficient manner.&lt;/p&gt;
&lt;h1&gt;Getting Started with CRM 2011 for Outlook with Email&lt;/h1&gt;
&lt;p&gt;Getting started with using the email integration is a familiar and natural experience.  You can follow along with the video and/or by following the step-by-step instructions below the video.  Note that the video is part of the CRM 2011 World Premiere series of videos that we published on &lt;a rel="nofollow" target="_blank" href="http://tube.c5insight.com"&gt;C5 Tube&lt;/a&gt; – feel free to check those videos out to learn more about the new capabilities of Dynamics CRM 2011.  Please note that I am assuming that you are using Microsoft Outlook 2010 for this.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt; 
&lt;p&gt; &lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Begin by opening Microsoft Outlook (this assumes that CRM for Outlook has already been installed).&lt;/li&gt;
    &lt;li&gt;Create a new email as you normally would in Microsoft Outlook.  You can send it to anyone that you like (but, since this is a trial run, make sure you send it to yourself or someone who won’t mind getting a test message).&lt;/li&gt;
    &lt;li&gt;Click either the “Track in CRM” or the “Set Regarding” button (if you choose Set Regarding, then choose the record that you want to link to).  After you complete this step, you’ll notice several things:
    &lt;ol&gt;
        &lt;li&gt;A list of links is available below the email.  This list will link to not only the record that the email is regarding, but also to all of the contacts that are receiving the email.  This makes it natural and simple to navigate to any records in CRM that are associated with the email.&lt;/li&gt;
        &lt;li&gt;In the CRM area of the ribbon menu, you can now click on buttons for Insert Template, Insert Article or Attach Sales Literature – which will we be doing in step …&lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;Click on Insert Template (I am assuming that you have at least one email template available in Dynamics CRM).  At this point you may need to select which record should be used for the mail/merge with the template.  When prompted, choose the template that you would like to use.  CRM will insert the subject line, attachments and email body from the template – including any mail/merge fields.  The signature line that Outlook automatically generates will be retained at the bottom of the message.&lt;/li&gt;
    &lt;li&gt;Now all that’s left is to click the Send button.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Boom!  You’ve just sent an email in a friction free CRM environment.  You can send sales literature and knowledge base articles using the same process.  Multiply the amount of time you saved by the number of emails you send each year, and then by the number of Dynamics CRM users in your organization … how much productivity did you just gain?&lt;/p&gt;
&lt;h1&gt;What Else Can I Do?&lt;/h1&gt;
&lt;p&gt;The email integration only scratches the surface of the overall Outlook experience that is available to users of Dynamics CRM 2011.  &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.comwww.c5insight.com/follow"&gt;Follow us&lt;/a&gt; to keep up to date on additional blogs and videos that we’ll be rolling out in the coming weeks to provide a deeper dive into CRM for Microsoft Outlook.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/165/CRM-2011-for-Outlook-Next-Generation-Outlook-Email-Integration.aspx</guid>
         <pubDate>Tue, 22 Mar 2011 21:30:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM 4 On-Premise to CRM 2011 Online Data Migration – C5 Insight Is LIVE!</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/172/Migrated-from-Dynamics-CRM-On-Premise-to-CRM-2011-Online.aspx</link>
         <description>&lt;p&gt;Well it’s official, C5 Insight has officially migrated our data from CRM 4 On-Premise to CRM 2011 ONLINE!! I am sure a lot of you are asking well how did you do this? As you may or may not know Microsoft has not released any upgrade path for current or any new Dynamics CRM customers to move their data to cloud hosted.&lt;/p&gt;
&lt;p&gt;When we first started thinking about doing this we wanted to be on the forefront of this new release and go “Online” as quick as possible. However we also wondered how we would get our data migrated since Microsoft did not have any published avenue for us to follow. As a Scribe MVP, &lt;a rel="nofollow" target="_blank" href="http://www.scribesoft.com"&gt;Scribe Insight (www.ScribeSoft.com)&lt;/a&gt; was the product of choice to get this migration successfully completed. With that said we did have to overcome a few obstacles throughout the way which I will mention later on, but overall we had great success. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why move to Dynamics CRM 2011 now?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;With Dynamics 2011 being cloud hosted this now allows for us to have the same code-base as being on-premise which is great news because with Dynamics CRM 4 this was not the case. We are very excited about this and can’t wait to get all our users live with it next week.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;First Steps&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The first thing we started thinking about was how to get our customizations upgraded so that we could move them to the cloud. Matt Wittemann, a colleague of mine who wrote the &lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/Microsoft-Dynamics-2011-Administration-Bible/dp/0470568143#_"&gt;Microsoft Dynamics CRM 2011 Bible&lt;/a&gt;, took on this task. He previously wrote a blog on different &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/162/Upgrade-Paths-for-Microsoft-Dynamics-CRM-2011.aspx"&gt;Upgrade Paths for Microsoft Dynamics CRM 2011&lt;/a&gt; which you can review to determine what might be the best path for your organization. We chose to upgrade via the import process and then transfer the customizations to CRM Online using solutions.&lt;/p&gt;
&lt;p&gt;Now that we had our customizations fully deployed to CRM 2011 Online, we then focused our efforts on the migration. The overall migration design / implementation process took about a week and half to design and test all the different components. It did take a good amount of knowledge on how the Dynamics CRM database was structured along with different gotchas that could cause a failure along the way.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Challenges&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As far as challenges go, we did have a few thorny issues that we were able to overcome or work around.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;The first challenge we ran into was around capturing the original created by user on the records. Unfortunately this was one that we couldn't overcome, however I did suggest this feature enhancement to Scribe for a future release of their adapter. For us this was not such a big issue because we were still able to maintain the record ownership and that is what we were most concerned with. If we really wanted to we could have run through the entire migration separately for each user in our organization, thus maintaining the created by user. But we decided that losing the original created by user was an acceptable exchange for the time savings for us.&lt;/li&gt;
    &lt;li&gt;The next hang up we ran into was with Quick Campaigns. After reviewing the API SDK, it appears that Quick Campaigns do not live in a “Quick Campaigns” entity, they live in the bulkoperations tables. It wasn't clear to me when talking with Scribe Support if it was a Dynamics CRM limitation or a Scribe limitation that was keeping us from creating Quick Campaigns.  From what I could tell though it does look like Dynamics 2011 might have support for creating quick campaigns through the API, but still unknown if Scribe will expose it through there adapter.** Unfortunately, because the entity was unavailable to me, those records could not be migrated. I will say though that is not the case for regular Campaigns, those were able to be migrated.&lt;/li&gt;
    &lt;li&gt;Support Contracts were the next roadblock I hit. This issue was the result of a limitation of Dynamics CRM. What happened here is that contracts start and end on a specific date and once that contract is closed no additional data can be added to that contract. We developed a path to move over our history and then create new active projects for existing contracts that were still active. Yes the data was able to be migrated, but it was not 100% accurate. If you're using the contract entity in CRM, this is an area for careful evaluation before you perform your migration.&lt;/li&gt;
    &lt;li&gt;Finally the last issue that caused us pain was unresolved recipients in activities. As you know you could send an email to a contact that is tracked by CRM and not necessarily related to a record in CRM . This causes unresolved contacts to be displayed with the red exclamation mark next to the person's email address.  &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-4-to-CRM-2011-Online-Data-Migration_D35C/2011-03-18_1444_2.png"&gt;&lt;img title="Unresolved Activity Contacts - Dynamics CRM 4 - CRM 2011" border="0" alt="Unresolved Activity Contacts - Dynamics CRM 4 - CRM 2011" width="72" height="22" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/CRM-4-to-CRM-2011-Online-Data-Migration_D35C/2011-03-18_1444_thumb.png"/&gt;&lt;/a&gt; We struggled with this for a while but finally figured out how to successfully convert these from our 4.0 environment to CRM 2011. HUGE SUCCESS!! This data is extremely important because you need to know every recipient on every activity.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Overall I think we had a great success with our migration and can’t wait for all our clients to move to CRM 2011. In my next blog I will talk about a new product being released from &lt;a rel="nofollow" target="_blank" href="http://www.scribesoft.com/"&gt;Scribe Software&lt;/a&gt; which is called “&lt;a rel="nofollow" target="_blank" href="http://www.ScribeSoft.com/Online"&gt;Scribe Online&lt;/a&gt;” - this is a service that allows you to replicate your Dynamics CRM 2011 database locally. Stayed tuned and I hope you enjoy CRM 2011!&lt;/p&gt;
&lt;p&gt;**Scribe is currently developing the Dynamics CRM 2011 adapter but they have emphasized that the current CRM 4.0 adapter does successfully connect and use most of the same calls as CRM 2011.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/172/Migrated-from-Dynamics-CRM-On-Premise-to-CRM-2011-Online.aspx</guid>
         <pubDate>Sat, 19 Mar 2011 00:05:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM - For Administrators</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/60/CRM-For-Administrators.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/60/CRM-For-Administrators.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634352777822505980.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;CRM Administrators will find an almost overwhelming number of improvements to their experience in Dynamics CRM 2011.  This on-demand video focuses specifically on how Dynamics CRM 2011 will put greater capabilities into the hands of administrators, and what it means to your business. Presented by one of the authors of the Microsoft Dynamics Administration Bible.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">60</guid>
         <pubDate>Wed, 09 Mar 2011 14:29:43 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
      <item>
         <title>CRM 2011 - The Upgrades</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/59/CRM-2011-The-Upgrades.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/59/CRM-2011-The-Upgrades.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634352772899319257.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Microsoft has included dozens of upgrades in Dynamics CRM 2011 that accelerate user efficiency, improve management reporting and extend administrator capabilities. This on-demand video is focused on businesses that are considering an upgrade from CRM 4.0 to CRM 2011 and want to understand the potential.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">59</guid>
         <pubDate>Wed, 09 Mar 2011 14:21:30 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
      <item>
         <title>Using Connections with Dynamics CRM 2011</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/58/Using-Connections-With-Dynamics-CRM-2011.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/58/Using-Connections-With-Dynamics-CRM-2011.aspx'&gt;&lt;img src='http://img.youtube.com/vi/Q3Tm_UsF_Co/default.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;This on-demand video is an excerpt from the video: CRM 2011 - The Upgrades. Social media is changing the way that businesses connect with their customers. Part of the way that Microsoft is addressing social collaboration in Dynamics CRM 2011 is through the usage of Connections. Connections allow you to link any records together to form a web of connected information. The result is customers that are more thrilled with their experiences, better closing rates with prospects, and more productive employees. 

To learn more about the upgrades available in Microsoft Dynamics CRM 2011, view the CRM 2011 - The Upgrades video on this website.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">58</guid>
         <pubDate>Tue, 08 Mar 2011 12:05:23 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
      <item>
         <title>5 Steps to Create Charts, Dashboards and Visualizations in Dynamics CRM 2011</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/57/5-Steps-To-Create-Charts-Dashboards-And-Visualizations-In-Dynamics-CRM-2011.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/57/5-Steps-To-Create-Charts-Dashboards-And-Visualizations-In-Dynamics-CRM-2011.aspx'&gt;&lt;img src='http://img.youtube.com/vi/Iz_lARcO-VA/default.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;This on-demand video is an excerpt from the full CRM 2011 - The Upgrades video on this site. CRM 2011 includes new functionality to intelligently visualize your customers, prospects, partners and processes. This video presents a how to guide for creating charts and dashboards.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">57</guid>
         <pubDate>Tue, 08 Mar 2011 12:03:07 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
      <item>
         <title>Using Outlook Email Integration with Dynamics CRM 2011</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/56/Using-Outlook-Email-Integration-With-Dynamics-CRM-2011.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/56/Using-Outlook-Email-Integration-With-Dynamics-CRM-2011.aspx'&gt;&lt;img src='http://img.youtube.com/vi/94JuXdnPXNQ/default.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Dynamics CRM was already the leader in Outlook integration - but CRM 2011 delivers the next generation of integration. This video presents the new email integration tools including the ability to use native Outlook email with Dynamics CRM Templates, KnowledgeBase Articles and Sales Literature.

To see other upgrades, watch the full CRM 2011 - The Upgrades video on this site.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">56</guid>
         <pubDate>Tue, 08 Mar 2011 12:00:00 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
      <item>
         <title>Grant Management</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/54/Grant-Management.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/54/Grant-Management.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634328416552187500.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Grants Manager is designed to help educational institutions and government organizations to quickly deploy a new grant management  system or compliment an existing one. The solution addresses vital business needs in the PS grants and financial aid management space.  This video provides an overview of the Grants Management solution.  Contact C5 Insight for more information or a live demo.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">54</guid>
         <pubDate>Wed, 09 Feb 2011 09:47:36 +0000</pubDate>
         <category>All Microsoft (MSCRM and SP)</category>
      </item>
      <item>
         <title>Accelerated Sales with Dynamics CRM 2011 and SharePoint 2010</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/53/Accelerated-Sales-With-Dynamics-CRM-2011-And-SharePoint-2010.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/53/Accelerated-Sales-With-Dynamics-CRM-2011-And-SharePoint-2010.aspx'&gt;&lt;img src='http://img.youtube.com/vi/dtJ3fH1khLQ/default.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Combing the power of Dynamics CRM 2011 and SharePoint 2010 can significantly accelerate sales processes. This video includes an overview of dashboards, goal management, SharePoint integration and quote management.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">53</guid>
         <pubDate>Tue, 01 Feb 2011 22:59:29 +0000</pubDate>
         <category>All Microsoft (MSCRM and SP)</category>
      </item>
      <item>
         <title>Social Media and Dynamics CRM</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/52/Social-Media-And-Dynamics-CRM.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/52/Social-Media-And-Dynamics-CRM.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634316630556257176.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Social networking is changing how customer relationships are formed and maintained.  Not only is this new paradigm affecting how businesses work with customers, but it is also changing the way that employees collaborate with one another.  But the core principals of social networking (decentralized, customer or stakeholder driven, opt-in) are often at odds with the way most businesses structure their CRM solution (centralized, company control driven, targeted).  This session provides a strategic framework for integrating your website, CRM and social channels. It includes 3 examples of how to integrate Dynamics CRM with social networking for improved marketing, customer service and collaboration.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">52</guid>
         <pubDate>Wed, 26 Jan 2011 18:24:16 +0000</pubDate>
         <category>All Microsoft (MSCRM and SP)</category>
      </item>
      <item>
         <title>May 2010 - Side-by-Side: What Makes Microsoft CRM and Salesforce.com Different?</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/37/May-2010-SidebySide-What-Makes-Microsoft-CRM-And-Salesforcecom-Different.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/37/May-2010-SidebySide-What-Makes-Microsoft-CRM-And-Salesforcecom-Different.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634148325637922119.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;A unique opportunity to see an objective comparison of the two most popular and most powerful CRM applications on the market today.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">37</guid>
         <pubDate>Sun, 23 May 2010 23:16:36 +0000</pubDate>
         <category>All CRM (MSCRM and SFDC)</category>
      </item>
      <item>
         <title>Back to the Basics with Microsoft CRM</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/22/Back-To-The-Basics-With-Microsoft-CRM.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/22/Back-To-The-Basics-With-Microsoft-CRM.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634143446727712654.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Dynamics CRM offers a broad array of functionality. But many organizations are not fully using the fundamentals. This is a great video for those who need a refresher on the basics.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">22</guid>
         <pubDate>Wed, 01 Jul 2009 00:00:00 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
      <item>
         <title>Better Together: Microsoft CRM and SharePoint</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/28/Better-Together-Microsoft-CRM-And-SharePoint.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/28/Better-Together-Microsoft-CRM-And-SharePoint.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634143458768104345.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;SharePoint and Dynamics CRM are both powerful development platforms. This video takes a look at how these tools are being combined to accelerate performance.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">28</guid>
         <pubDate>Thu, 18 Jun 2009 00:00:00 +0000</pubDate>
         <category>All Microsoft (MSCRM and SP)</category>
      </item>
      <item>
         <title>Salesforce.com and Microsoft CRM: Side-by-Side Demo</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/27/Salesforcecom-And-Microsoft-CRM-SidebySide-Demo.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/27/Salesforcecom-And-Microsoft-CRM-SidebySide-Demo.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634143457566705784.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;An exclusive side-by-side demo of Microsoft Dynamics CRM and Salesforce.com! If you're considering a CRM solution, this is a can't miss session. Be sure to the second version of this unique webinar - delivered in May of 2010!</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">27</guid>
         <pubDate>Sun, 24 May 2009 00:00:00 +0000</pubDate>
         <category>All CRM (MSCRM and SFDC)</category>
      </item>
      <item>
         <title>What's New with Dynamics CRM 4.0</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/32/Whats-New-With-Dynamics-CRM-40.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/32/Whats-New-With-Dynamics-CRM-40.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634143463941352486.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Microsoft continues to roll out improvements to their leading CRM platform. This session takes a look at the latest add-ons and accelerators for Dynamics CRM 4.0</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">32</guid>
         <pubDate>Wed, 08 Apr 2009 00:00:00 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
      <item>
         <title>The Dynamics CRM 4.0 Demo</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/24/The-Dynamics-CRM-40-Demo.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/24/The-Dynamics-CRM-40-Demo.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634143453694855564.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;The fundamentals of CRM and a demo of Microsoft Dynamics CRM 4.0.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">24</guid>
         <pubDate>Sun, 15 Mar 2009 00:00:00 +0000</pubDate>
         <category>Dynamics CRM</category>
      </item>
   </channel>
</rss><!-- fe4.yql.bf1.yahoo.com compressed/chunked Sat May 26 18:09:37 UTC 2012 -->

