<?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: SharePoint, Dynamics CRM, and Salesforce - Technical</title>
      <description>Technical topics related to SharePoint, Dynamics CRM, and Salesforce. Intended for power users, administrators, or developers.</description>
      <link>http://pipes.yahoo.com/pipes/pipe.info?_id=bb9a6625793118002704f3085e1ab6e4</link>
      <atom:link rel="next" href="http://pipes.yahoo.com/pipes/pipe.run?_id=bb9a6625793118002704f3085e1ab6e4&amp;_render=rss" />
      <pubDate>Sat, 26 May 2012 18:36:44 +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/C5InsightAll/Technical" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="c5insightall/technical" /><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">C5InsightAll/Technical</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/successacceleratorssharepointandcrm/~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/successacceleratorssharepointandcrm/~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>Easy Way to Get Relative Path of SharePoint 2010 Site via PowerShell</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/272/Easy-Way-to-Get-Relative-Path-of-SharePoint-2010-Site-via-PowerShell.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/5508d92d726d_C856/powershell_icon_2.jpg"&gt;&lt;img title="powershell_icon" border="0" alt="powershell_icon" align="left" width="68" height="52" 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/5508d92d726d_C856/powershell_icon_thumb.jpg"/&gt;&lt;/a&gt;The more I learn and get to know PowerShell, the more I love it.  I am able to perform what used to be time-consuming tasks (many hours or days) in seconds (after you write the script of course).  While writing a script recently to perform some tasks on numerous SharePoint sites (webs to be precise), I was constructing URLs for the sites and using as variables and I needed only part of the URL (the managed path).  After a little poking around, I found a nice easy way to do it.&lt;/p&gt;
&lt;h1&gt;Some Quick Background&lt;/h1&gt;
&lt;p&gt;In SharePoint (among other things), URLs can be of two different types, absolute and relative.  The absolute URL for an object is the full path direct to that object, where the relative URL is an abbreviated path that combines the base URL and the current location.  Let’s look a couple examples:&lt;/p&gt;
&lt;p&gt;Absolute URL&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;http://portal/sites/hr/shared documents/newhire_policy.docx&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Relative URL&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;/sites/hr/shared documents/newhire_policy.docx&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The relative URL removes the base URL http://portal, which is the root web of the web application.  This becomes important especially if you use SSL on a web application, where you allow access via SSL and non-SSL, or if you use Alternate Access Mappings.  If you use absolute URLs, the other website will never get used.  This is why it is crucial to use relative paths to URLs in your navigation links like a good SharePoint administrator.  But I digress… on to PowerShell!&lt;/p&gt;
&lt;p&gt;Without checking, I first solved this problem the complicated way.  I would enumerate the full URL, and then only grab the text 5 or however many characters I wanted to remove.  You can do this by using $webURL.Substring(3), where 3 is the number of characters you want to remove.  If you do this, be sure to do this on the URL as a string, NOT a web object as Substring is not a method on the web object, but is available on strings.  You could have also have used the TrimStart method as well I suppose.&lt;/p&gt;
&lt;p&gt;This worked, but there had to be a better way!  In PowerShell, I think one of the most powerful commands to get to know is &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/dd315351.aspx"&gt;Get-Member&lt;/a&gt;.  Using this, I discovered a property called ServerRelativeURL on both a &lt;a rel="nofollow" target="_blank" href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsite.serverrelativeurl.aspx"&gt;site object&lt;/a&gt; (site collection) or &lt;a rel="nofollow" target="_blank" href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.web.serverrelativeurl.aspx"&gt;web object&lt;/a&gt;.  To see this, you pass (pipe) the site or web object to the get-member command like this:&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;"&gt;
&lt;div id="codeSnippet" style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;
&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum1" style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;font color="#0000ff"&gt;get-spweb&lt;/font&gt; &lt;font color="#9b00d3"&gt;http://contoso.intranet.com/it/sandbox&lt;/font&gt; &lt;font color="#a5a5a5"&gt;|&lt;/font&gt; &lt;font color="#0000ff"&gt;get-member&lt;/font&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;This returns all methods and properties of that object (our subsite in this case).  There are two properties that are related, &lt;strong&gt;Url&lt;/strong&gt; and &lt;strong&gt;ServerRelativeURL&lt;/strong&gt;.  So let’s look at this:&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;"&gt;
&lt;div id="codeSnippet" style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;
&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum1" style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;font color="#ff8000"&gt;$web&lt;/font&gt; &lt;font color="#a5a5a5"&gt;=&lt;/font&gt; &lt;font color="#0000ff"&gt;get-spweb&lt;/font&gt; &lt;font color="#9b00d3"&gt;http://contoso.intranet.com/it/sandbox&lt;/font&gt; &lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum2" style="color:#606060;"&gt;   2:&lt;/span&gt; &lt;font color="#ff8000"&gt;$web&lt;/font&gt;.ServerRelativeURL&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The result is:&lt;/p&gt;
&lt;p&gt;/it/sandbox&lt;/p&gt;
&lt;p&gt;Voila!  Exactly what I needed.  We can then store this in a variable, and use it wherever we need it.  As you might expect, &lt;strong&gt;Url&lt;/strong&gt; returns the absolute URL of the object. I strongly encourage you to investigate &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/dd315351.aspx"&gt;get-member&lt;/a&gt;, It opens up some many possibilities to view and/or various properties of almost anything.  Hope it helps!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/272/Easy-Way-to-Get-Relative-Path-of-SharePoint-2010-Site-via-PowerShell.aspx</guid>
         <pubDate>Mon, 30 Apr 2012 00:24: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>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>Tips to Avoid Login Prompts in SharePoint</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/245/Tips-to-Avoid-Login-Prompts-in-SharePoint.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/0a3e2bb7a3bc_12D86/image_2.png"&gt;&lt;img title="image" border="0" alt="image" align="left" style="background-image:none;border-bottom:0px;border-left:0px;margin:0px 10px 5px 0px;padding-left:0px;width:225px;padding-right:0px;display:inline;float:left;height:174px;border-top:0px;border-right:0px;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/0a3e2bb7a3bc_12D86/image_thumb.png"/&gt;&lt;/a&gt;One of the most common issues I hear when implementing SharePoint for new clients, or supporting an existing SharePoint environment is the dreaded login prompt.  There are multiple reasons for the password prompt, but I'll try and cover the basics here.  Personally, I haven’t had to login to our internal company SharePoint in at least 6 or 8 months!  How can you achieve this SharePoint nirvana?  Let’s walk through the common steps to avoid having to login to SharePoint, whether opening the site or when opening documents.  Here’s a quick rundown.&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;1.  Internet Explorer Security Zone&lt;/li&gt;
    &lt;li&gt;2.  Windows Credential Store&lt;/li&gt;
    &lt;li&gt;3.  Prompts When Opening Documents&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;Internet Explorer Security Zone&lt;/h1&gt;
&lt;p&gt;Generally, one of the first things you need to do is add the SharePoint site URL or domain to a more trusted security zone in your web browser (we’ll focus on IE for this post).  SharePoint uses activex controls and other features that need to be trusted to run correctly.  Here’s what you need to do. &lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Open Internet Explorer, and click &lt;strong&gt;Tools &lt;/strong&gt;–&amp;gt; &lt;strong&gt;Internet Options&lt;/strong&gt;.  This will vary depending on your version of IE.  In IE9, click the gear icon in the top right corner, then click &lt;strong&gt;Internet Options&lt;/strong&gt;.&lt;/li&gt;
    &lt;li&gt;Click the &lt;strong&gt;Security&lt;/strong&gt; tab, then highlight the zone &lt;strong&gt;Local Intranet, &lt;/strong&gt;then click the &lt;strong&gt;Sites &lt;/strong&gt;button. &lt;/li&gt;
    &lt;li&gt;Ensure “Automatically detect intranet network” is checked.  Enter the URL of the SharePoint site.  What I suggest here is to use a wildcard entry, to ensure it covers as much as possible.  So you could enter &lt;em&gt;http://portal.company.com&lt;/em&gt;, or what I recommend is &lt;em&gt;*.company.com&lt;/em&gt;. &lt;/li&gt;
    &lt;li&gt;Click Ok on all the windows, and close the browser.  Go to SharePoint, and you will likely get prompted.  On this prompt (as seen above), click the checkbox “Remember my credentials”.&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;Windows Credential Store&lt;/h1&gt;
&lt;p&gt;This is typically needed when your SharePoint server isn’t in your local network environment.  Whether you knew it or not, Windows XP or Windows 7 (who uses Vista anyway) has what is called a “credential store” or vault.  It stores usernames and passwords used to connect to websites and other network computers, and online services like Live ID or Exchange.  A credential should get stored here from the above prompt when you click “Remember my credentials”. &lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;To access the credential store, you can try this shortcut by typing the following in the &lt;strong&gt;Start &lt;/strong&gt;-&amp;gt; &lt;strong&gt;Run &lt;/strong&gt;command: “&lt;em&gt;control keymgr.dll&lt;/em&gt;”.  If this doesn’t work, you can get there by going to &lt;strong&gt;Start &lt;/strong&gt;–&amp;gt; &lt;strong&gt;Control Panel&lt;/strong&gt;, then picking &lt;strong&gt;Credential Manager &lt;/strong&gt;in the large icons view. &lt;/li&gt;
    &lt;li&gt;Under the Windows Credentials heading, look for an entry for the SharePoint URL.  If you don’t find one, enter a new one by clicking &lt;strong&gt;Add a New Windows Credential&lt;/strong&gt;.&lt;/li&gt;
    &lt;li&gt;Enter the information as it requests.  You can enter the direct URL as in the IE security zone, or you can also use wildcards like *.domain.com.  Enter your username and password just as if you were logging into SharePoint.&lt;/li&gt;
    &lt;li&gt;Close IE if you had it open, then try SharePoint again.  You should not get prompted.&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;Getting Prompted When Opening Documents&lt;/h1&gt;
&lt;p&gt;Another common problem with SharePoint is you get prompted for login credentials when opening or editing documents from a library.  At least with Windows Vista and Windows 7, this is a known issue and lucky for us, there’s a hotfix!  See the following Microsoft KB article:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/?id=943280"&gt;Prompt for Credentials When Accessing FQDN Sites From a Windows Vista or Windows 7 Computer&lt;/a&gt;&lt;/p&gt;
&lt;p align="left"&gt;Some items of note:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;
    &lt;div align="left"&gt;If you have Windows Vista, you need to download and install the hotfix file, and apply the registry setting. &lt;/div&gt;
    &lt;/li&gt;
    &lt;li&gt;
    &lt;div align="left"&gt;If you have Windows 7, it already has the hotfix included, and you just need to complete the registry setting. &lt;/div&gt;
    &lt;/li&gt;
    &lt;li&gt;
    &lt;div align="left"&gt;If you are the IT admin, I would recommend creating this on your machine, and saving the key to a .reg file you can send to users, or set in your desktop image.&lt;/div&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p align="left"&gt;You will follow the steps 1-7 near the bottom of the article.  As in the above steps, you can use the wildcard like *.domain.com for the entry.  Close the registry editor, and enjoy opening documents free from login prompts! &lt;/p&gt;
&lt;p align="left"&gt;While we’re here, I have to share one other thing that I see all the time that I haven’t seen documented. &lt;/p&gt;
&lt;h1&gt;Problem with Explorer View Being Slow&lt;/h1&gt;
&lt;p&gt;I fought this for a long time.  Every time I would try to use Explorer View, it would work, but it would a LONG time to come up, like 30 seconds.  My coworker could open Explorer View and it would open in about 1 second.  The fix turned out to be the fix I’ve seen for other weird strange issues with SharePoint.  Here’s how to fix it.&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Open Internet Explorer, and click &lt;strong&gt;Tools &lt;/strong&gt;–&amp;gt; &lt;strong&gt;Internet Options&lt;/strong&gt;. This will vary depending on your version of IE. In IE9, click the gear icon in the top right corner, then click &lt;strong&gt;Internet Options&lt;/strong&gt;.&lt;/li&gt;
    &lt;li&gt;Click the &lt;strong&gt;Connections&lt;/strong&gt; tab, then click the &lt;strong&gt;LAN Connections&lt;/strong&gt; button at the bottom of the window.&lt;/li&gt;
    &lt;li&gt;Check the state of the first checkbox “Automatically detect settings”.  This will likely be checked.  Uncheck it!&lt;/li&gt;
    &lt;li&gt;Click ok until all windows are closed, and close IE.  Open SharePoint, and try to open a library in Explorer View.  It’s magic!&lt;/li&gt;
&lt;/ol&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/245/Tips-to-Avoid-Login-Prompts-in-SharePoint.aspx</guid>
         <pubDate>Thu, 23 Feb 2012 09:54: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>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>SharePoint 2010 Ratings and Custom Content Types</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/237/SharePoint-2010-Ratings-and-Custom-Content-Types.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-Ratings-and-Custom-Conte_8EFC/image_2.png"&gt;&lt;img title="image" border="0" alt="image" align="left" width="104" height="39" 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/SharePoint-2010-Ratings-and-Custom-Conte_8EFC/image_thumb.png"/&gt;&lt;/a&gt;There are numerous cool new features in SharePoint 2010, and I’ve found that integrating them into custom solutions are not always straightforward.  I found this to be true with ratings as well.  Ratings are one of the new social tagging features that gives users a 1–5 star graphic to rate content.  You can find a high level overview of social tagging features &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ff608137.aspx"&gt;here&lt;/a&gt; on TechNet.&lt;/p&gt;
&lt;p&gt;Normally this isn’t a problem.  For example, you have your normal Shared Documents library, and you want users to be able to rate content.  No problem right?  We go into the &lt;strong&gt;library settings&lt;/strong&gt;, and then click on &lt;strong&gt;Rating Settings&lt;/strong&gt;.  We simple click &lt;strong&gt;Yes&lt;/strong&gt;, and hit ok. Too easy:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-Ratings-and-Custom-Conte_8EFC/SNAGHTML7778c9.png"&gt;&lt;img title="SNAGHTML7778c9" border="0" alt="SNAGHTML7778c9" width="240" height="49" 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/SharePoint-2010-Ratings-and-Custom-Conte_8EFC/SNAGHTML7778c9_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This adds two site columns to the library called:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Number of Ratings
    &lt;ul&gt;
        &lt;li&gt;Stores the total number of ratings&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
    &lt;li&gt;Rating (0-5)
    &lt;ul&gt;
        &lt;li&gt;Stores the average rating of rated content&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So everything’s working and dandy.  Well, what if we need ratings on a custom content type that is being deployed across the farm?  Who wants to go into every library and set that by hand?  There’s always PowerShell, but there’s a problem.  When I use the above normal library setting on a library with a custom content type, the ratings fail to get stored.  If you check the ULS logs, I saw this:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;RatingSync: Unexpected exception processing . Error:Microsoft.SharePoint.SPException: Invalid number value. A number field contains invalid data. Please check the value and try again. ---&amp;gt; System.Runtime.InteropServices.COMException (0x8102001A): Invalid number value. A number field contains invalid data. Please check the value and try again. 0x8102001a&lt;/em&gt;&lt;/p&gt; 
&lt;p&gt;Awesome.  So what do we do?  It’s really easy, we just need to add the rating columns to the custom content type itself.  To do this, edit your custom content type (located in the site content types gallery of the root site in the site collection most likely).  Click &lt;strong&gt;Add from existing site columns&lt;/strong&gt;, and add the two columns named above.  After doing this, I was able to set ratings without error.  You &lt;strong&gt;&lt;u&gt;HAVE &lt;/u&gt;&lt;/strong&gt;to add them both or it won’t work!&lt;/p&gt;
&lt;p&gt;Now, one last item of note on this.  Ratings are not stored instantly.  They work off of two timer jobs that are accessible via Central Administration on the SharePoint server:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;User Profile Service Application – Social Data Maintenance Job&lt;/li&gt;
    &lt;li&gt;User Profile Service Application – Social Rating Synchronization Job&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;By default, they run hourly so your ratings changes wouldn’t show for an hour.  To speed this up, edit the timer job and change the schedule to some shorter minute value.  Or can you run them manually on demand for testing purposes.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/237/SharePoint-2010-Ratings-and-Custom-Content-Types.aspx</guid>
         <pubDate>Tue, 31 Jan 2012 21:37: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>TechNet Content for SharePoint 2007 and 2010 Now Available on Amazon!</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/229/TechNet-Content-for-SharePoint-2007-and-2010-Now-Available-on-Amazon.aspx</link>
         <description>&lt;p&gt;&lt;img alt="" align="left" style="display:inline;float:left;" src="http://ecx.images-amazon.com/images/I/41nJ3A6OKQL._SL500_SS50_.jpg"/&gt;There was no big fanfare on this and could have been easily missed, and I thought it was worth repeating.  Microsoft and the content publishing team have compiled their downloadable content and made available on Amazon in a nicely bound book!  It’s great for all those out there that would stay up late at night feeling guilty for killing so many trees printing it yourself.  You can find the the download links &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/cc262788.aspx"&gt;here&lt;/a&gt; on TechNet.  I will include the information here as I’m just nice like that.  I also didn’t say they were the cheapest around, but price varies by book ($66 is a little steep in my opinion).&lt;/p&gt;
&lt;table border="1" cellspacing="0" cellpadding="2" width="817"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DTJCQG/ref=cm_sw_su_dp"&gt;Getting Started with SharePoint 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This book provides basic information about the capabilities of and requirements for Microsoft SharePoint Server 2010.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005EIGFLQ/ref=cm_sw_su_dp"&gt;Planning guide for sites and solutions for Microsoft SharePoint Server 2010, Part 1&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This book provides information about planning for deploying Microsoft SharePoint Server 2010. Subjects include site security, governance, and enterprise content management.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DROC22/ref=cm_sw_su_dp"&gt;Planning guide for sites and solutions for Microsoft SharePoint Server 2010, Part 2&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This book provides information about planning for site and solutions created by deploying Microsoft SharePoint Server 2010. Subjects include business intelligence, site creation, web content management, and enterprise search.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DRO0MY/ref=cm_sw_su_dp"&gt;Planning guide for server farms and environments for Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This book provides information and guidelines for making decisions about system architecture for a deployment of Microsoft SharePoint Server 2010. Subjects include system requirements, authentication, and business continuity management.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DRO9T8/ref=cm_sw_su_dp"&gt;Capacity planning for Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This book provides information about planning for capacity and performance requirements for deploying Microsoft SharePoint Server 2010. Subjects include sizing, performance testing, software boundaries, and capacity case studies.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DRO6IC/ref=cm_sw_su_dp"&gt;Business continuity management for Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;
            &lt;p&gt;Provides information about business continuity management, which consists of the business decisions, processes, and tools you put in place in advance to handle crises. Information includes features of Microsoft SharePoint Server 2010 that are likely to be part of your business continuity management strategy.&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DRO70O/ref=cm_sw_su_dp"&gt;Upgrading to Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This book is designed to guide administrators and IT professionals through the process of upgrading to Microsoft SharePoint Server 2010 from Microsoft Office SharePoint Server 2007.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DRO8N0/ref=cm_sw_su_dp"&gt;Deployment guide for Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This book includes information deployment scenarios, step-by-step installation instructions, and post-installation configuration steps for deploying Microsoft SharePoint Server 2010.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DROKRY/ref=cm_sw_su_dp"&gt;Operations guide for servers and server farms for Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;This document describes how to operate and maintain your servers, server farms, sites, and solutions in Microsoft SharePoint Server 2010.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DROHIG/ref=cm_sw_su_dp"&gt;Remote BLOB storage for Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;How to use Microsoft SharePoint Server 2010 together with Remote BLOB Storage (RBS) and Microsoft SQL Server 2008 Express and Microsoft SQL Server 2008 R2 Express to optimize database storage resources.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td valign="top" width="417"&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/dp/B005DROG8M/ref=cm_sw_su_dp"&gt;Technical reference for Microsoft SharePoint Server 2010&lt;/a&gt;&lt;/td&gt;
            &lt;td valign="top" width="398"&gt;
            &lt;p&gt;This book includes technical information about the Microsoft SharePoint Server 2010 provider for Windows PowerShell and other helpful reference information about general settings, security, and tools.&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;You can click &lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/s/ref=ntt_athr_dp_sr_1?_encoding=UTF8&amp;sort=relevancerank&amp;search-alias=books&amp;ie=UTF8&amp;field-author=Microsoft%20Office%20System%20and%20Servers%20Team"&gt;here&lt;/a&gt; if you want to see all books available from the Microsoft Office System and Servers Team publisher on Amazon as there is other content available for SharePoint 2007.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/229/TechNet-Content-for-SharePoint-2007-and-2010-Now-Available-on-Amazon.aspx</guid>
         <pubDate>Wed, 11 Jan 2012 08:52:00 +0000</pubDate>
      </item>
      <item>
         <title>Submitting a Document Set to a SharePoint 2010 Repository in Workflow</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/228/Submitting-a-Document-Set-to-a-SharePoint-2010-Repository-in-Workflow.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Submit-a-Document-Set-to-Repository--How_DF5A/docset_welcomepage_big_2.png"&gt;&lt;img title="docset_welcomepage_big" border="0" alt="docset_welcomepage_big" align="left" width="125" height="125" 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/Submit-a-Document-Set-to-Repository--How_DF5A/docset_welcomepage_big_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Every so often while working in &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com"&gt;SharePoint&lt;/a&gt;, you encounter a feature that has almost no documentation or you can’t find anyone with a similar issue.  This happened to me when I was trying to configure a workflow to move a document set to a Records Center.  After I got this to work, I wanted to try and save others the grief and frustration that I experienced.  If “Unknownerror” means anything to you, this post is for you.&lt;/p&gt;
&lt;h3&gt;Who Would Use This?&lt;/h3&gt;
&lt;p&gt;This action might be useful in document management scenarios, where documents have a formal “approval” process, and management policies are defined to “expire” them to meet retention policies.  Once expired, they would be removed from the current location and moved to another location, specifically a Records Center in this case where they sit waiting to be purged from the system. &lt;/p&gt;
&lt;h3&gt;A Detailed Look&lt;/h3&gt;
&lt;p&gt;Let’s cover some background.  For this to work, there is some pre-work and configuration that has to be done.  You have to have configured content organizers on the source and destination sites and routing rules.  I won’t cover that here.  This post is just to explain a particular component in this overall process.&lt;/p&gt;
&lt;p&gt;The workflow action we are talking about is &lt;strong&gt;Send Document Set to Repository&lt;/strong&gt;.  It is NOT available with &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com/en-us/product/Related-Technologies/Pages/SharePoint-Foundation.aspx"&gt;SharePoint Foundation&lt;/a&gt;, you have to have at least SharePoint 2010 Standard or higher.  The only official documentation for usage from Microsoft is &lt;a rel="nofollow" target="_blank" href="http://office.microsoft.com/en-us/sharepoint-designer-help/workflow-actions-in-sharepoint-designer-2010-a-quick-reference-guide-HA010376961.aspx"&gt;here&lt;/a&gt;.  Here is their explanation:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;font color="#666666"&gt;This action is initially displayed in workflow steps as &lt;b&gt;Submit Document set using this action to this destination content organizer with this explanation (Output to Variable: submit file result)&lt;/b&gt;. It allows you to move or copy the document set to a document repository. A document repository can be a library in your SharePoint site, or a site on its own like the Document Center, that routes records to a specific destination based on rules that you define.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;font color="#666666"&gt;Following is an example of what the action might look like in a workflow step:&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;font color="#666666" style="background-color:#ffff00;"&gt;Submit Document set using &lt;u&gt;Copy&lt;/u&gt; to &lt;u&gt;&lt;strong&gt;DocumentRepository:GUID&lt;/strong&gt;&lt;/u&gt; with &lt;u&gt;Copy final bill of Material to repository&lt;/u&gt; (Output to &lt;u&gt;Variable: Copy Document Set to repository&lt;/u&gt;)&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#000000"&gt;To add When you add this action to your workflow, it looks like this:&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Submit-a-Document-Set-to-Repository--How_DF5A/SNAGHTML1c990d2.png"&gt;&lt;img title="SNAGHTML1c990d2" border="0" alt="SNAGHTML1c990d2" width="776" height="75" 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/Submit-a-Document-Set-to-Repository--How_DF5A/SNAGHTML1c990d2_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#000000"&gt;Let’s break this down:&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;font color="#000000"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;this action&lt;/font&gt;&lt;/u&gt; – Choose your method of submittal.  You can choose either to Copy, Move, or Move and Leave a Link.&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font color="#000000"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;this destination content organizer&lt;/u&gt;&lt;/font&gt; – This is the URL to the destination Record Center site (with the content organizer configured).&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font color="#000000"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;this explanation&lt;/font&gt;&lt;/u&gt; – This is text that will get logged to the workflow history list when this action is executed.  &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font color="#000000"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Output to Variable: submit file result&lt;/font&gt;&lt;/u&gt; – This variable will store the output from the command, with success or any error messages and log them to the workflow history list.&lt;/font&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;font color="#000000"&gt;The big question is what do do you enter for the destination content organizer?  From the Microsoft article above, it’s “documentrepository:GUID”.  Is this the GUID of the Records Center site?  The Drop Off Library?  A few bloggers have said it should be the link to the web service.  Which is it?&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#000000"&gt;The answer is they’re both right.  The Microsoft article is correct, but it also doesn’t tell the whole story.  To correctly work, you should enter the URL of the content organizer web service on the Records Center site.  It should be entered in the format:&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;http://portal/recordcenter/_vti_bin/OfficialFile.asmx&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#000000"&gt;If you enable verbose diagnostic logging for Workflows, you will see that SharePoint converts the first portion of the URL  &lt;/font&gt;&lt;font color="#000000"&gt;to , with the GUID is the ID property of the Record Center site collection.  The Microsoft article should really be updated to reflect this.&lt;/font&gt;&lt;/p&gt;
&lt;h3&gt;Potential Errors&lt;/h3&gt;
&lt;p&gt;&lt;font color="#000000"&gt;When this doesn’t work correctly, the error is vague to say the least.  All you will see is &lt;em&gt;Unknownerror&lt;/em&gt;.  Great, thanks, that’s really helpful.  To get any kind of decent error message, you need to up the ULS logging to verbose for the Workflow categories.  You can find directions &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ee748656.aspx"&gt;here&lt;/a&gt; on TechNet.  Once that is set, run the workflow again and you should get more specific errors.  There can be errors like:&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;ul&gt;
        &lt;li&gt;&lt;em&gt;OfficialFile::SubmitFile: Encountered error when sending file &lt;/em&gt;&lt;em&gt;http://portal/testsite/Documents/DocSet_Test.zip&lt;/em&gt;&lt;em&gt; to documentrepository:2fdee837-9501-4305-b15a-0bf5fb9a8832/_vti_bin/officialfile.asmx: The URI prefix is not recognized. &lt;/em&gt;&lt;/li&gt;
        &lt;li&gt;&lt;em&gt;The documentrepository:2fdee837-9501-4305-b15a-0bf5fb9a8832/_vti_bin/officialfile.asmx site is not properly configured for this request. &lt;/em&gt;&lt;/li&gt;
        &lt;li&gt;&lt;em&gt;OfficialFile: File &lt;/em&gt;&lt;em&gt;http://portal/testsite/Documents/DocSet_Test.zip&lt;/em&gt;&lt;em&gt; was not saved at router location /recordcenter/DropOffLibrary. Exception Object reference not set to an instance of an object. thrown at: &lt;/em&gt;
        &lt;p&gt;&lt;em&gt;at Microsoft.Office.RecordsManagement.RecordsRepository.OfficialFileCore.SaveFileToFinalLocation(SPWeb web, EcmDocumentRouter router, EcmDocumentRouterResultProperties resultProps, Stream rgbFile, Hashtable fileMetaData, String strSourceUrl, String strUserName, Boolean bCopy, Boolean bIsDocSet, Boolean bIsDropOffZone, SPListItem&amp; itemFinal)&lt;/em&gt;&lt;/p&gt;
        &lt;/li&gt;
    &lt;/ul&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;font color="#000000"&gt;All of these errors are caused by the fact that the content organizer isn’t setup correctly.  The best way to test this is manually by creating SendTo rules in Central Administration to the Records Center and try to move the document set.  If it works, you should be good.  If not, check the configuration.  In my case, the document set content type wasn’t added to the drop off library.  Once I corrected this and had proper routing rules setup, it moved fine, and I got Success in the workflow output.  &lt;/font&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/228/Submitting-a-Document-Set-to-a-SharePoint-2010-Repository-in-Workflow.aspx</guid>
         <pubDate>Mon, 09 Jan 2012 04:48: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>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>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>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>Tip: How to Rename a SharePoint 2010 Server</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/211/Tip-How-to-Rename-a-SharePoint-2010-Server.aspx</link>
         <description>&lt;p&gt;Even if you’ve planned your SharePoint project properly, or it might be years later, you need to rename your SharePoint 2010 server. This quick tip covers this on SharePoint 2010 which is a much cleaner experience than it was in 2007.  There is an STSADM switch that can handle it, but for 2010, there is a certain procedure to yield best results.  I was able to do this on a single SharePoint server earlier and it worked great!  This was a single SharePoint server with SQL on another server. &lt;/p&gt;
&lt;p&gt;For 2010, there’s a new &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/bb978526.aspx"&gt;PowerShell&lt;/a&gt; cmdlet for this very thing, &lt;strong&gt;&lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ff607556.aspx"&gt;Rename-SPServer&lt;/a&gt;&lt;/strong&gt;.  This is &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/cc261986.aspx"&gt;this&lt;/a&gt; article on TechNet covering the procedure.  It has you renaming the server itself first, then fixing up SharePoint.  However I’ve heard of issues with that, and I had better results by doing it in reverse.  That is, running the PowerShell to fix up SharePoint then renaming the server.  Here is what I did:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Tell SharePoint about the new server name via PowerShell.  This is done via the Rename-Server cmdlet.  Of course get-help is your friend to get details and examples, however the context help of the cmd (and the technet article for that matter) IS WRONG!  It’s funny, because the example is right, but the explanation isn’t.  Go figure, nobody’s perfect.  Anyway, you give the command the old and new server names.  TechNet says the old server name is in the form of a URL.  That throws an error.  It should just be .  So the whole command would be like:&lt;font face="Times New Roman"&gt;
    &lt;div id="codeSnippetWrapper" style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;"&gt;
    &lt;div id="codeSnippet" style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;
    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum1" style="color:#606060;"&gt;   1:&lt;/span&gt; Rename-SPServer –identity “old_server_name” –name “new_server_name”&lt;/pre&gt;
    &lt;/div&gt;
    &lt;/div&gt;
    &lt;/font&gt; &lt;/li&gt;
    &lt;li&gt;It should complete, and return a message stating “WARNING: You may also need to update any alternate access mappings referring to .  Now just rename your server through the system properties and reboot. &lt;/li&gt;
    &lt;li&gt;Once the server comes up, Central Admin still came up for me, and on the old URL.  But after an IISReset, that stopped working (as expected).  I was able to access Central Admin via the new server name.  Go ahead and check the Alternate Access Mappings for the Central Admin web application to ensure it is pointing to the new name.  Correct as necessary.  You could also use the cmdlet &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ff607632.aspx"&gt;New-SPAlternateUrl&lt;/a&gt; to add an entry for the Central Admin URL.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;That’s it!   Of course if you like, you could write a quick little PowerShell script that would do all this for you.  If you need to do STSADM, you would run the following (assuming its in your system path):&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;"&gt;
&lt;div id="codeSnippet" style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;
&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum1" style="color:#606060;"&gt;   1:&lt;/span&gt; stsadm -o renameserver -oldservername  -newservername &lt;/pre&gt; 
&lt;/div&gt;
&lt;/div&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/211/Tip-How-to-Rename-a-SharePoint-2010-Server.aspx</guid>
         <pubDate>Wed, 09 Nov 2011 08:27:00 +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>Microsoft SharePoint Conference 2011–Day 4</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/207/Microsoft-SharePoint-Conference-2011-Day-4.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-SharePoint-Conference-2011Day-_CAC3/SPC-2011s_4.png"&gt;&lt;img title="Microsoft SharePoint Conference 2011" border="0" alt="Microsoft SharePoint Conference 2011" align="left" width="226" height="61" 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/Microsoft-SharePoint-Conference-2011Day-_CAC3/SPC-2011s_thumb_1.png"/&gt;&lt;/a&gt;Well, today’s the last day of the conference.  I know, it’s very sad, but a great time was had by all.  This was my first big conference, and I really enjoyed the experience.  There were 3 breakout sessions today back to back with the day closing out with lunch in the early afternoon.  It’s hard to believe they crammed 240 sessions in 3 and a half days!  I got to rub elbows with some of the greats in the industry, bloggers, authors, MVPs and lots of folks from Microsoft.  If there’s one tip I can give, it’s to stay in a hotel close to the conference!  It was awesome to be able to be in 1 minute walking distance.  You have to be able to drop off all the freebies in your room. &lt;/p&gt;
&lt;p&gt;I started the day with John Holliday’s discussion on &lt;strong&gt;Creating an&lt;/strong&gt; &lt;strong&gt;Easy to Use File Plan Builder for Your SharePoint Records Center&lt;/strong&gt;.  This was really interesting, and offered yet another use case for InfoPath.  He covered the basics of the importance and makeup of a file plan, and went on to demo his solution. This wouldn’t be necessary for small Records Center implementations, but when you have  hundreds or even thousands of document types each with management policies, these would be almost invaluable.  Can you imagine creating thousands of content types, with folders or document libraries and then configuring the same number of content organizer rules for each of the folders?  I don’t think there’s enough money in a project’s budget for that.  With a little custom code and an InfoPath form, the creation and complete configuration of the Records Center site, content types, information management policies can be 100% automated.  The flow would be for an admin user to fill out an InfoPath form (representing the file plan) with the required data (document type, category, disposition rules, role assignments and how they want the records sorted.  Via an event receiver, the custom code fires that would create a Records Center site (or could configure an existing site) and create the necessary document libraries, folders, retention policies and user security.  There are other ways to do it besides InfoPath (like Excel or an XML file), but I think this is a great solution for a large Records Center implementation.&lt;/p&gt;
&lt;p&gt;Then I sat in on Gary Lapointe’s session on a behind the scenes look at how they build Microsoft &lt;a rel="nofollow" target="_blank" href="http://visio.microsoft.com/en-us/Pages/default.aspx"&gt;Visio’s public marketing site&lt;/a&gt; on SharePoint 2010 and how they customized the Content Query Web Part, showcasing taxonomy content targeting.  He discussed the customized solution and why you would need to customize the CQWP with code.  I then poked my head in the the &lt;strong&gt;Step-by-Step: Building Search Driven Applications That Matter &lt;/strong&gt;session by Scot Hillier.  If you ever wanted to get some ideas on how you could use search to build applications in SharePoint, this was a great demo-driven session. &lt;/p&gt;
&lt;p&gt;For my very last session of the conference, I decided to attend Christina Wheeler’s session on how to package up Publishing features.  Her demo seemed to be working better than in the CQWP session yesterday, and it was a really informative session on how to take package up all those master page customizations you worked so hard on for deployment in another environment. &lt;/p&gt;
&lt;p&gt;The conference is over, but I had a blast and met a lot of great folks.  If you ever get the chance, Whether you are a consultant, business user, or developer, there was something for everyone.  Now I’ll spend the next week downloading all the PowerPoint slide decks and session recordings.  See you next year!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/207/Microsoft-SharePoint-Conference-2011-Day-4.aspx</guid>
         <pubDate>Fri, 07 Oct 2011 08:47:00 +0000</pubDate>
      </item>
      <item>
         <title>Microsoft SharePoint Conference 2011–Days 2 and 3</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/206/Microsoft-SharePoint-Conference-2011-Days-2-and-3.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-SharePoint-Conference-2011Days_13959/SPC-2011s_2.png"&gt;&lt;img title="I'm attending the Microsoft SharePoint Conference 2011" border="0" alt="I'm attending the Microsoft SharePoint Conference 2011" align="left" width="226" height="61" 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/Microsoft-SharePoint-Conference-2011Days_13959/SPC-2011s_thumb.png"/&gt;&lt;/a&gt;Whew what a wild couple of days!  I didn’t get to blog last night so I figured I would combine yesterday and today.  The sessions have been really good. &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h1&gt;Tuesday – Day 2&lt;/h1&gt;
&lt;p&gt;Tuesday started with the Todd Carter’s session about &lt;strong&gt;Extending SharePoint Health &amp; Monitoring&lt;/strong&gt;.  He put on a good show, giving details on web analytics and diagnostic logging, and how to extend them using custom providers to get detailed reports.  Very cool stuff!  Then I attended one of the more popular sessions of the day by Microsoft Certified Master Scott Jamison, &lt;strong&gt;Best Practices Around SharePoint 2010 User Profiles&lt;/strong&gt;.  Now this topic is very near and dear to my heart.  I’ve laughed, I’ve cried, but I’ve come to a place where I accept the UPA for what it is, even with its shortcomings.  He got a volunteer from the crowd (a fellow MCM and MCA Spence Harbar) to configure the UPA live.  This was really more of a part 1 of 2, where Spence would take it deeper under the covers and show how to implement it via the UI and PowerShell. &lt;/p&gt;
&lt;p&gt;The afternoon started with a session with Eric Harlan, on &lt;strong&gt;Creating Awesome Dashboards with SharePoint, InfoPath 2010 and SharePoint Designer&lt;/strong&gt;.  This was a cool session, and it turns out was similar to the solution presented in Eric’s fellow Microsoftee Ira Fuch’s book &lt;strong&gt;Enterprise Application Development in SharePoint 2010&lt;/strong&gt;.  It wasn’t the same solution, but Eric showed how to configure a similar solution, and rethinking your definition of “dashboard”.  No longer are dashboards relegated to KPIs, graphs and charts, but can include using InfoPath form web parts.  Interesting!&lt;/p&gt;
&lt;p&gt;Along the same lines, I ended the day following Keenan Newton on a journey &lt;strong&gt;Automating Business Processes with SharePoint 2010 with SharePoint Designer, InfoPath 2010 and Workflow&lt;/strong&gt;.  This was part 1 of 2 sessions outlining the solution, and creating the base forms and initial workflow to complete the overall solution for automating an HR new hire onboarding process.  Would you like to be able to have HR fill out a form for a new hire that would automatically generate an offer letter Word document, pre-filled with the user’s data, start an approval workflow once the person accepted, and then automatically create a user account in Active Directory?  This session was for you.&lt;/p&gt;
&lt;h1&gt;Wednesday – Day 3&lt;/h1&gt;
&lt;p&gt;I spent this morning with Nikos Anagnostou and Lesly Goh discussing &lt;strong&gt;Best Practices for Managing Corporate Metadata and Taxonomies&lt;/strong&gt;.  Together, they provided guidance on good design practices for Managed Metadata.  For example, when designing your taxonomies, you should try to organize them as behavioral, organizational or navigational.  I then attended a &lt;strong&gt;Design Best Practices&lt;/strong&gt; session by Laura Rogers and Darvish Shadravan (authors of the &lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/gp/product/0735662061/ref=s9_simh_gw_p14_d2_g14_i1?pf_rd_m=ATVPDKIKX0DER&amp;pf_rd_s=center-2&amp;pf_rd_r=16MHQ6YC4VA1E5WW8KPV&amp;pf_rd_t=101&amp;pf_rd_p=470938631&amp;pf_rd_i=507846"&gt;InfoPath 2010 and SharePoint 2010 Step by Step&lt;/a&gt; book soon to be released).  This was a refreshingly deeper level session, with demos and discussions on how to avoid pitfalls with InfoPath form services performance and troubleshooting with &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.comwww.fiddler2.com"&gt;Fiddler&lt;/a&gt; and around data connections.  It was very lively, as he would stop periodically and check for live tweets for questions and give out swag to the tweeters.  He passed on Microsoft’s top 3 call generators for InfoPath 2010.  They are:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Security&lt;/li&gt;
    &lt;li&gt;Data Connections&lt;/li&gt;
    &lt;li&gt;Publishing forms&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After lunch, I attended the part 2 session of Scott Jamison’s UPA session from Tuesday.  Spence Harbar discussed &lt;strong&gt;Enterprise Deployment Considerations for the User Profile Service&lt;/strong&gt;.  Who better to learn from than a Microsoft Certified Master and Architect, the highest levels of certifications attainable?  Ironically, there wasn’t anyone in the room that was syncing more than 25,000 users so we didn’t have to discuss issues there.  We watched Spence actually provision a UPA via PowerShell live on stage, and it worked!  He showed us how to workaround the Sync DB dbo database issue when creating the UPA service application via PowerShell.  In short, you can use Get-Credential and Start-Job cmdlets to do a runas.&lt;/p&gt;
&lt;p&gt;Then it was on to part 2 of Keenan’s session of completing the HR process automation.  He showed how to configure the BCS entities properly, and the web service he wrote to talk to AD.  I believe all his source will be available post conference.&lt;/p&gt;
&lt;p&gt;I ended the day on one of the more technical sessions covering a &lt;strong&gt;Deep Dive on the Content Query WebPart &lt;/strong&gt;with Christina Wheeler.  She tried to show how to configure and customize the CQWP to change the columns and covered best practices around internal column naming.  Avoid special characters at all possible as it will get nasty to chase down.  For example, a space in a name translates to _x0020_.  Keep that in mind when using customizing your XSL.&lt;/p&gt;
&lt;p&gt;Long days but there were lots of good stuff to digest.  Tomorrow is the final day, but it will be packed too! &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/206/Microsoft-SharePoint-Conference-2011-Days-2-and-3.aspx</guid>
         <pubDate>Thu, 06 Oct 2011 11:38:00 +0000</pubDate>
      </item>
      <item>
         <title>Microsoft SharePoint Conference 2011–Day 1</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/205/Microsoft-SharePoint-Conference-2011-Day-1.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/c95f05303c70_13239/SPC-2011s_2.png"&gt;&lt;img title="SPC-2011s" border="0" alt="SPC-2011s" align="left" width="226" height="61" 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/c95f05303c70_13239/SPC-2011s_thumb.png"/&gt;&lt;/a&gt;The first day started with the big keynote with all of the about 7500 attendees!  That’s a lot of people lovin’ some SharePoint in one place!  Well, let me back up.  On my way into the convention center for breakfast before the keynote, I noticed there was all this noise outside.  Turns out a software vendor and SharePoint competitor called Huddle had hired a marching band to play a few tunes right outside the conference and march through.  In my opinion, quite childish.  Anyway, on the good stuff …&lt;/p&gt;
&lt;p&gt;Walked into the keynote speech, and was entertained by the sweet sounds of DJ Keenan Kameleon.  He’s a Senior Product Manager with the SharePoint Team at Microsoft.  I’m told you can listen to his music mix from the keynote online &lt;a rel="nofollow" target="_blank" href="http://www.mixcrate.com/mix/81361/The-Kameleon-SharePoint-Conference-2011-Pre-Keynote"&gt;here&lt;/a&gt;.  Jared Spataro, Senior Director of SharePoint Product Management was up first, and gave some updates on some numbers.  Can you say 62 million licenses sold of SharePoint with 125 million users?  The overall theme for the conference is &lt;strong&gt;Productivity Delivered&lt;/strong&gt;, which celebrates all the excellent work and solutions that customers and partners have developed on the platform.  I won’t bore you with all the details, but you can read more on the &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=997"&gt;MS SharePoint Team blog&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;There was a very sweet demo of some extremely high end redundancy and failover for a SharePoint farm.  Can you say 1TBs of RAM and 80 CPU cores?  The test sites were loaded with 130 million documents totaling 14TB in a &lt;strong&gt;single content database&lt;/strong&gt;, and that’s without Remote Blob Storage.  A FAST search query returned 130 million results in .23 seconds.  That’s FAST!  Their assistant pulled the network plug live on stage, and we all watched while clustering failed over every database in the farm in under 15 seconds.  Wow!&lt;/p&gt;
&lt;p&gt;They also announced a new Certified Architect certification for SharePoint.  You can read all the juicy details on the team’s blog.  They also made another announcement – details on the SharePoint Conference 2012.  Looks like it’s going to be held in Las Vegas in the middle of November. &lt;/p&gt;
&lt;p&gt;I started with my first session with the antics of Todd Klindt and Shane Young from SharePoint911 for their Understanding SharePoint Administration session.  After that I went over to see Laura Rodgers and Darvish Shadravan for their book signing of their book InfoPath 2010 and SharePoint 2010 Step by Step.  Needless to say, we had some good InfoPath discussions.&lt;/p&gt;
&lt;p&gt;It was lunch, then off to the afternoon sessions covering Records Management with the CTO from GimmalSoft, and ended with a bang with the session by Scott Jamison Making SharePoint 2010 Collaboration Rock by Increasing Findability.  He’s a great speaker, and gave some very useful and practical recommendations to get your search results more accurate and useful.  The single most important takeaway I’ll share from this session was about the Title field, and how important it is that this field is accurate. &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/205/Microsoft-SharePoint-Conference-2011-Day-1.aspx</guid>
         <pubDate>Tue, 04 Oct 2011 10:58:00 +0000</pubDate>
      </item>
      <item>
         <title>Microsoft SharePoint Conference 2011–The Pre-Game Show</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/204/Microsoft-SharePoint-Conference-2011-The-Pre-Game-Show.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/93c55d22c23f_1353A/IMG_5096_web_1.jpg"&gt;&lt;img title="Microsoft SharePoint Conference 2011" border="0" alt="Microsoft SharePoint Conference 2011" align="left" width="244" height="164" 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/93c55d22c23f_1353A/IMG_5096_web_thumb_1.jpg"/&gt;&lt;/a&gt;Wow, the time is finally here for the &lt;a rel="nofollow" target="_blank" href="http://www.mssharepointconference.com"&gt;Microsoft SharePoint Conference 2011&lt;/a&gt;!  What an exciting time this is for &lt;a rel="nofollow" target="_blank" href="https://sharepoint.microsoft.com/"&gt;SharePoint&lt;/a&gt;.  The product celebrated it’s 10 year anniversary recently, and it has come a long way!  The latest release SharePoint 2010 is really a game changer and is continuously expanding it’s presence and impact in the industry.  This conference celebrates the product in a way that is just amazing.  There are so many people from all over the world coming together for a single purpose – to share knowledge.&lt;/p&gt;
&lt;p&gt;This year’s conference takes place in sunny Anaheim, California at the Anaheim Convention Center.  Every hotel in a 15 mile area is SOLD OUT!  Ok some of that is probably Disneyland.  After checking in to my hotel and getting settled, I walked across the street to the convention center to check things out.  I got registered and checked out the venue.  This place is huge, three floors of SharePoint goodness!  There are lots of great-looking sessions, and I narrowed down the ones I want to attend.&lt;/p&gt;
&lt;p&gt;The conference officially started this evening when they opened up the Exhibit Hall for a Welcome Reception from 6 – 9pm.  There are a lot of people here (and vendors).  I have never seen vendor booths like this before.  The booth for &lt;a rel="nofollow" target="_blank" href="http://www.fpweb.net"&gt;fpweb.net&lt;/a&gt; had stairs to a 2nd floor overlook.  Nice!  Talked to the nice folks at O’Relliy Press, Idera, Mindsharp, Quest Software, AvePoint and K2.  I think that was just on one row.  As you can see, there were already a lot of SharePointers checking things out:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/93c55d22c23f_1353A/IMG_5130_web.jpg"&gt;&lt;img title="Welcome Reception in Exhibit Hall" border="0" alt="Welcome Reception in Exhibit Hall" width="244" height="164" 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/93c55d22c23f_1353A/IMG_5130_web_thumb.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I’m looking forward to the festivities that start tomorrow with the keynote speakers and then the sessions.  More to come from Anaheim so stay tuned!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/204/Microsoft-SharePoint-Conference-2011-The-Pre-Game-Show.aspx</guid>
         <pubDate>Mon, 03 Oct 2011 11:14:00 +0000</pubDate>
      </item>
      <item>
         <title>Published Content Type Column Order Fixed in August 2011 CU</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/203/Published-Content-Type-Column-Order-Fixed-in-August-2011-CU.aspx</link>
         <description>&lt;p&gt;SharePoint 2010 has many new and very useful features, one of them being new functionality with &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/cc262735.aspx"&gt;content types&lt;/a&gt; via the &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ee424403.aspx"&gt;Managed Metadata service application&lt;/a&gt;.  It allows you to specify a content type hub, a central location for managing content types.  You can then publish those content types to subscribing site collections.  This opens up a lot of flexibility to manage content consistently.&lt;/p&gt;
&lt;p&gt;Recently I ran into a scenario where I had configured content types in the hub site, and set the column order and published the content types.  After awhile I had made changes to the root content type column order and re-published those changes.  I found that the settings for the columns were updated (hidden, required, etc.) but the changed order did NOT update.  This is fairly significant to users of a document management system as you don’t want your optional “Enterprise Keywords” field showing first with a required important required column at the bottom.  Oh the humanity!&lt;/p&gt;
&lt;p&gt;In doing some testing, I noticed that on an environment with the recently released August 2011 cumulative update for SharePoint 2010 applied, the changed column order updated.  Great!  It’s always nice when Microsoft fixes bugs.  The fix for this issue is actually contained in &lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/kb/2553031"&gt;KB2553031&lt;/a&gt;.  You can verify this fix is in the August 2011 CU by looking at the list of fixes in the &lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/kb/2553048"&gt;SharePoint 2010 Server package&lt;/a&gt;, and sure enough that KB is included.  Looking through the KB in question, you find the actual listed fix in the “&lt;strong&gt;Issues that this hotfix package&lt;/strong&gt;” fixes section:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Consider the following scenario:&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;em&gt;You create a new content type in a content type publishing hub on SharePoint Foundation 2010. &lt;/em&gt;&lt;/li&gt;
    &lt;li&gt;&lt;em&gt;You publish the content type to subscribing sites. &lt;/em&gt;&lt;/li&gt;
    &lt;li&gt;&lt;em&gt;You change the column order in the content type publishing hub. &lt;/em&gt;&lt;/li&gt;
    &lt;li&gt;&lt;em&gt;You republish the content type to the subscribing sites.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;In this scenario, the column order is not updated on the subscribing sites.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;That’s definitely our issue.  I guess the biggest takeaway here is that is really pays to dig through all the KB hotfixes included in a cumulative update.  You never know what issues are getting fixed!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;big&gt;Workaround&lt;/big&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As a side note, there is a workaround of sorts if you can't install &lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/kb/2460045"&gt;Service Pack 1&lt;/a&gt; then the August 2011 CU.  By default, when content types are published in other site collections, they are marked as read-only in the destination site collection.  You can change the order by performing the following:&lt;/p&gt;
&lt;p&gt;Click Advanced Settings on the content type site settings screen:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/ee33ee2e601d_DD80/SNAGHTML1bbda8e.png"&gt;&lt;img title="Read only content type" border="0" alt="Content Type Settings" width="198" height="281" 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/ee33ee2e601d_DD80/SNAGHTML1bbda8e_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Change the setting “&lt;strong&gt;Should this content type be read only?&lt;/strong&gt;”” from Yes to No.  Click Ok to save.&lt;/p&gt;
&lt;p&gt;Now you have your options to change the column order.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/ee33ee2e601d_DD80/SNAGHTML1be2aa1.png"&gt;&lt;img title="Editable Content Type" border="0" alt="Editable Content Type" width="274" height="471" 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/ee33ee2e601d_DD80/SNAGHTML1be2aa1_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/203/Published-Content-Type-Column-Order-Fixed-in-August-2011-CU.aspx</guid>
         <pubDate>Wed, 28 Sep 2011 01:20: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>What To Do When the SharePoint ‘What’s New’ Web Part Isn’t Available</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/201/What-To-Do-When-the-SharePoint-What-s-New-Web-Part-Isn-t-Available.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/116a91d6181a_13D35/SNAGHTML3c79f1.png"&gt;&lt;img title="Group Work Lists site feature" border="0" alt="Group Work Lists site feature" align="left" width="240" height="42" 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/116a91d6181a_13D35/SNAGHTML3c79f1_thumb.png"/&gt;&lt;/a&gt;It’s well documented that the &lt;strong&gt;What’s New&lt;/strong&gt; web part can be very helpful in showing recent information about content in a list or document library.  It’s also well documented that to be able to add this web part in SharePoint 2010, you have to activate the site feature “&lt;strong&gt;Group Work Lists&lt;/strong&gt;”.  But what happens when you go to&lt;strong&gt; Site Actions&lt;/strong&gt; –&amp;gt; &lt;strong&gt;Site Settings&lt;/strong&gt;, click &lt;strong&gt;Manage Site Features&lt;/strong&gt; and activate the feature, but the web part is still missing from the available web parts list? &lt;/p&gt;
&lt;p&gt;More than likely if this happened to you, you are on a sub-level site and not the root site in the site collection.  One clue to the issue is to go to Site Settings and look for the Web Parts gallery.  If you don’t see that gallery, go to the root site in the site collection and go to the Web Parts gallery.  Look through the list, and most likely you will &lt;u&gt;not&lt;/u&gt; see the &lt;strong&gt;whatsnew.dwp&lt;/strong&gt; web part in the list.  So what to do?&lt;/p&gt;
&lt;p&gt;Luckily this is an easy fix.  All you have to do is activate the same site feature &lt;strong&gt;Group Work Lists&lt;/strong&gt;, but do it on the root site in the site collection.  After you do this, go back into the web part gallery, and look at that:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/116a91d6181a_13D35/SNAGHTML26e041.png"&gt;&lt;img title="SharePoint 2010 web part gallery" border="0" alt="SharePoint 2010 web part gallery" width="346" height="180" 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/116a91d6181a_13D35/SNAGHTML26e041_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It’s there now, so we’re in business.  Now go back to your sub-site and try to insert the &lt;strong&gt;What’s New &lt;/strong&gt;web part:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/116a91d6181a_13D35/SNAGHTML2e79e1.png"&gt;&lt;img title="SharePoint 2010 What's new web part" border="0" alt="SharePoint 2010 What's new web part" width="590" height="233" 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/116a91d6181a_13D35/SNAGHTML2e79e1_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So why is this?  Certain functionality are only scoped at the site collection level like templates, web parts, solutions, master pages and page layouts.  So you have to activate them on the root before they can be available on the sites in the lower hierarchy.  Pat yourself on the back for a job well done.&lt;/p&gt;
&lt;p&gt;To learn more about this web part and how to configure it, SharePoint MVP Laura Rogers has written a nice &lt;a rel="nofollow" target="_blank" href="http://www.sharepoint911.com/blogs/laura/Lists/Posts/Post.aspx?ID=100"&gt;blog post&lt;/a&gt; on the subject (among many others)!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/201/What-To-Do-When-the-SharePoint-What-s-New-Web-Part-Isn-t-Available.aspx</guid>
         <pubDate>Thu, 18 Aug 2011 08:11:00 +0000</pubDate>
      </item>
      <item>
         <title>Creating a Weekly Team Status Report in SharePoint 2010 Using Wikis</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/200/Creating-a-Weekly-Team-Status-Report-in-SharePoint-2010-Using-Wikis.aspx</link>
         <description>&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/6d1f17775ff5_FD52/SNAGHTML53ca90.png"&gt;&lt;img title="SharePoint 2010 Weekly Team Status" border="0" alt="SharePoint 2010 Weekly Team Status" align="left" width="195" height="240" 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/6d1f17775ff5_FD52/SNAGHTML53ca90_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Everyone has meetings they have to attend on a frequent basis, and we all want to get through them as quickly as possible (so we can get back to our game of angry birds). We need to have a quick and easy way for team members to provide an update on their assigned duties, as well as a streamlined method of reviewing them during the meeting. Since we’re lucky that our company has invested in SharePoint, let’s use it! This method I believe provides a very quick and easy way to accomplish your goals for capturing the information without using complicated add-ons or any other heavy lifting.&lt;/p&gt;
&lt;p&gt;This is the final result.  Cool huh?  Nothing fancy, but it does the job (sometimes simpler is better).  This is driven by a wiki page library, where every team member gets their own wiki page.  You could just have one wiki page and sections where everyone just updates their text, but then you would have multiple people trying to edit that one page 15 minutes before the meeting, and get frustrated with all the merge conflict warnings.  If everyone gets their own page, no conflict warnings.  Let’s see how it’s done so everyone is happy.&lt;/p&gt;
&lt;p&gt;&lt;br clear="all"/&gt;
&lt;br clear="all"/&gt;
 First we need the library to hold all the pages.  Create a Wiki Page library called &lt;strong&gt;WeeklyTeamStatus&lt;/strong&gt;.  We name it without spaces so the URL doesn’t contain %20, but we’ll fix it in a minute. &lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/6d1f17775ff5_FD52/SNAGHTML5cc746.png"&gt;&lt;img title="Creating a Wiki Page Library" border="0" alt="Create a Wiki Page Library" width="240" height="167" 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/6d1f17775ff5_FD52/SNAGHTML5cc746_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Let’s go ahead and fix up the display name then we can add a column to let us control how whose page shows in the list.  Click &lt;strong&gt;Page&lt;/strong&gt; off the ribbon then &lt;strong&gt;Library Settings&lt;/strong&gt;, then under &lt;strong&gt;General Settings&lt;/strong&gt;, click &lt;strong&gt;Title, description and navigation&lt;/strong&gt;.  Change the title to Weekly Team Status.  This way the URL doesn’t contain spaces, but you get the friendly display name.&lt;/p&gt;
&lt;p&gt;Now let’s create the new column.  Let’s call the column &lt;strong&gt;Show in List? &lt;/strong&gt;of type &lt;strong&gt;Yes/No&lt;/strong&gt;.  Feel free to add a description if you like.  This will allow us to show or hide the user’s status page in the overall list.&lt;/p&gt;
&lt;p&gt;We need to create web pages for each team member to update their status.  From the wiki library, click &lt;strong&gt;Pages&lt;/strong&gt; from the ribbon and &lt;strong&gt;View All Pages&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/6d1f17775ff5_FD52/SNAGHTML13e11b.png"&gt;&lt;img title="SharePoint 2010 Ribbon" border="0" alt="SharePoint 2010 Ribbon" width="240" height="67" 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/6d1f17775ff5_FD52/SNAGHTML13e11b_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Add a new page for each team member.  Click &lt;strong&gt;Add new page&lt;/strong&gt;, then enter the name of the page for the team member.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/6d1f17775ff5_FD52/SNAGHTML1ca91a.png"&gt;&lt;img title="Wiki page library" border="0" alt="Wiki page library" width="240" height="61" 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/6d1f17775ff5_FD52/SNAGHTML1ca91a_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you look at the first screenshot of the final solution, this works by editing the home.aspx page for the library, adding some general text for the meeting, then adding the content of the team member pages.  Click the &lt;strong&gt;Home&lt;/strong&gt; page link from the list, and edit the page (Home.aspx).  Delete all of the text that’s there (how to use this library, etc.), and add your text.  This would include perhaps phone dial-in information, announcements, or guidelines for the meeting.&lt;/p&gt;
&lt;p&gt;Now we need to get all the pages on the Home page.  Below the text, insert the existing &lt;strong&gt;Weekly Team Status&lt;/strong&gt; list.  The result is obviously not the view we want.  We want to display the contents of each team’s page in the list instead of a list of pages.&lt;/p&gt;
&lt;p&gt;Edit the Weekly Team Status web part on the Home.aspx page; the properties of the web part will be on the far right.  Under &lt;strong&gt;Appearance&lt;/strong&gt;, we want to set the&lt;strong&gt; Chrome Type&lt;/strong&gt; to &lt;strong&gt;None&lt;/strong&gt;.  This will hide the name of the list on the page.  To help make refreshing the content easier, also go under the &lt;strong&gt;AJAX Options&lt;/strong&gt; and click the checkbox for &lt;strong&gt;Show Manual Refresh Button&lt;/strong&gt;.  Now edit the current view under the &lt;strong&gt;List&lt;/strong&gt; &lt;strong&gt;Views&lt;/strong&gt; heading.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/6d1f17775ff5_FD52/SNAGHTMLe444f.png"&gt;&lt;img title="SharePoint 2010 edit web part" border="0" alt="SharePoint 2010 edit web part" width="240" 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/6d1f17775ff5_FD52/SNAGHTMLe444f_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We want to only show the &lt;strong&gt;Name (linked to document with edit menu)&lt;/strong&gt;, &lt;strong&gt;Modified&lt;/strong&gt;, and &lt;strong&gt;Wiki Content&lt;/strong&gt; columns.  Change the sorting order to sort by &lt;strong&gt;Name&lt;/strong&gt; in ascending order then &lt;strong&gt;Modified&lt;/strong&gt;, and also set the filter to only show items when &lt;strong&gt;Show in List?&lt;/strong&gt; is equal to &lt;strong&gt;Yes&lt;/strong&gt;.  By setting this flag on the properties on each team member’s page, this will control whether or not it appears in the list on the main page.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/6d1f17775ff5_FD52/SNAGHTML12f768.png"&gt;&lt;img title="Modifying the Show in List View" border="0" alt="Modifying the Show in List View" width="240" height="127" 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/6d1f17775ff5_FD52/SNAGHTML12f768_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To show the content of the each page the way we want, expand the &lt;strong&gt;Style&lt;/strong&gt; heading, choose &lt;strong&gt;Newsletter&lt;/strong&gt;.  Click &lt;strong&gt;Ok&lt;/strong&gt; and save your page.&lt;/p&gt;
&lt;p&gt;That’s it!  Now your team members can edit their own pages to provide their status updates.  When it comes to meeting time, just open the home.aspx and everyone’s updates will show in alphabetical order, and the last time they provided an update.  Each team member clicks their name to get to their page, then they edit that page to provide their updates.  Team members could insert more than just text, they can insert show task lists, charts or excel data. Just before the meeting is started, you can just hit the fresh button on the list instead of having to refresh the entire SharePoint page.&lt;/p&gt;
&lt;p&gt;To take this a little further, you could restrict permissions on the home page so that team members don’t edit that page by mistake, and only give modify permissions so that each member only have access to their own page.  If you have trouble with white spaces between the top and bottom, you might need to open the page in SharePoint Designer 2010 or edit the html. &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/200/Creating-a-Weekly-Team-Status-Report-in-SharePoint-2010-Using-Wikis.aspx</guid>
         <pubDate>Mon, 25 Jul 2011 04:51: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>Improvements in SharePoint 2010 Service Pack 1</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/198/Improvements-in-SharePoint-2010-Service-Pack-1.aspx</link>
         <description>&lt;p&gt;Some of you may have heard by now that &lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/kb/2532120"&gt;service pack 1&lt;/a&gt; for Office 2010 and &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com"&gt;SharePoint 2010&lt;/a&gt; products has been released.  There have been some blog posts out there that talk about the improvements in SP1 and major reasons why SP1 is actually a good thing!  What I wanted to do here is look at some improvements that perhaps have been overlooked.  First let’s get the basics out of the way so you can see the big picture like everyone else.  Here’s a list of recent blogs on the subject: &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.technet.com/b/stefan_gossner/archive/2011/06/30/sharepoint-2010-service-pack-1-has-been-released-on-tuesday.aspx"&gt;Stefan Gobner’s Post&lt;/a&gt; on SP1’s release&lt;/li&gt;
    &lt;li&gt;Joel Olson’s &lt;a rel="nofollow" target="_blank" href="http://www.sharepointjoel.com/Lists/Posts/Post.aspx?ID=444"&gt;10 Reasons SP1 Rocks&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Joel Olson’s &lt;a rel="nofollow" target="_blank" href="http://www.sharepointjoel.com/Lists/Posts/Post.aspx?ID=453"&gt;SharePoint 2010 SP1 10 Best Practices Post&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;The MS Product Group &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=973"&gt;Overview of SP1 Features&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;The MS Product Group &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=984"&gt;Release Notice of SP1&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a rel="nofollow" target="_blank" href="http://www.microsoft.com/download/en/details.aspx?id=26573"&gt;SharePoint 2010 Service Pack 1 Whitepaper&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Microsoft KB &lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/kb/2532126"&gt;Known Issues with Office and SharePoint 2010 SP1&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Microsoft KB &lt;a rel="nofollow" target="_blank" href="http://support.microsoft.com/kb/2460073"&gt;Description of Office Web Apps SP1&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Spence Harbar’s &lt;a rel="nofollow" target="_blank" href="http://www.harbar.net/archive/2011/06/30/327.aspx"&gt;What’s the Fuss? Post&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As with all previous update guidance, they are recommending to apply the foundation update, then the server update, then run the configuration wizard (psconfig).    There is a slight deviation however.  In this case, as &lt;a rel="nofollow" target="_blank" href="http://blogs.technet.com/b/stefan_gossner/archive/2011/06/30/sharepoint-2010-service-pack-1-has-been-released-on-tuesday.aspx"&gt;Stefan Gobner’s post&lt;/a&gt; points out, the product group is recommending to also apply June 2011 cumulative update.  See &lt;a rel="nofollow" target="_blank" href="http://blogs.technet.com/b/office_sustained_engineering/archive/2011/06/29/sharepoint-2010-sp1-and-the-june-cumulative-update-for-sharepoint-2010.aspx"&gt;here&lt;/a&gt; for more details.&lt;/p&gt;
&lt;p&gt;I didn’t set out to do this, but as I was looking over the fixes included in SP1, I realized there are some quite nice improvements that aren’t as flashy as SQL Denali support or having the Site recycle bin.  First we need the list of changes that weren’t coming from previous cumulative updates, which you get &lt;a rel="nofollow" target="_blank" href="http://download.microsoft.com/download/B/0/D/B0D1540B-6CF6-4674-9C8E-7A45FD91C163/Microsoft SharePoint 2010 and Office servers Service Pack 1 Changes.xlsx"&gt;here&lt;/a&gt;.  Let’s take a look by category.  As the file states, these descriptions vary in detail, and often don’t specify how it was fixed, just what the issue was.&lt;/p&gt;
&lt;h1&gt;Search&lt;/h1&gt;
&lt;p&gt;There are lots of fixes here, and there isn’t one that just jumps out at me.  There are performance improvements, API enhancements, crawl topology fixes, and they even fixed some text in the PowerShell example help. &lt;/p&gt;
&lt;h1&gt;SharePoint&lt;/h1&gt;
&lt;p&gt;Obviously there are a ton of fixes here, and you can see where they mention the popular ones like I mentioned above.  There are security improves like where the copy/move UI is visible to users who aren’t site collection admins (BAD)! &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Prior to SP1, SharePoint administrators could not set a limit on the number of Broadcast Slideshow attendees through a PowerShell cmdlet. Beginning with SP1, this functionality is included.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I’m not how many folks out there are avid PowerPoint Slideshow Broadcast users, but it’s nice to have the ability to configure the feature more.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Generation of news feeds on My Sites is governed by the Activity Feed Timer Job. Before SP1, this timer job was turned off by default over privacy concerns regarding news feeds. Therefore, no activities were generated on the My Site news feed by default. Starting with SP1, a setting on the My Site Settings page for User Profile Service Administrators provides control over news feed behavior. The Activity Feed Timer Job is now always enabled, but administrators can use this new setting to opt in or opt out of news feeds.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Spence Harbar mentions this is in a &lt;a rel="nofollow" target="_blank" href="http://www.harbar.net/archive/2011/07/06/328.aspx"&gt;blog post&lt;/a&gt; just recently published, but I will repeat here as well.  There are two things here.  One is that the Activity Feed Timer job is enabled now by default because too many people complained feeds weren’t working out of the box.  There is also now a setting to enable or disable the newsfeed on My Sites as shown here:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Review-of-SharePoint-2010-Service-Pack-1_9F3A/SNAGHTMLb4b6e3.png"&gt;&lt;img title="SNAGHTMLb4b6e3" border="0" alt="SNAGHTMLb4b6e3" width="240" height="68" 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/Review-of-SharePoint-2010-Service-Pack-1_9F3A/SNAGHTMLb4b6e3_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;You cannot customize the runtime behavior of the Social Security Trimmer, which is used when you retrieve social data, such as tags, notes, ratings, or Newsfeed data.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Again, Spence outlines this issue and I will defer to his post on this topic.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Before SP1, there was no convenient way for users to select a video frame to set as the Thumbnail. Starting with SP1, this functionality is provided through the "Video Thumbnail Picker" feature.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I have personally struggled with this, so this is a nice new addition.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;The Media section of the ribbon contains two buttons that are nonfunctional for editing or creating blog posts, "Audio and Video" and "From SharePoint" under Images.&lt;/strong&gt;&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Alerts do not function correctly in several scenarios.&lt;/strong&gt;&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;You move a site collection, but the config database updates fails. Therefore, the site collection is not available in the new location. It is also not available in the original location because was deleted.&lt;/strong&gt;&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Before SP1, you could not have some pages rendered in Internet Explorer 9 document mode (instead of Internet Explorer 8). Starting with SP1, a control is available that lets you set individual pages to be rendered in Internet Explorer 9.&lt;/strong&gt;&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Before SP1, the Title field on attachments was a required field. Therefore, users had to supply a title to save a document. Starting with SP1, the Title field is no longer a required field.&lt;/strong&gt;&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Calendar view is not rendered correctly when the browser window is resized.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Some issues or bugs are under some obscure combination of circumstances that you will never see, but this one I have seen.  Let’s have a look.  You’re looking at your normal SharePoint calendar:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Review-of-SharePoint-2010-Service-Pack-1_9F3A/SNAGHTML22bf78.png"&gt;&lt;img title="SNAGHTML22bf78" border="0" alt="SNAGHTML22bf78" width="240" height="98" 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/Review-of-SharePoint-2010-Service-Pack-1_9F3A/SNAGHTML22bf78_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Now in IE, “restore down” or resize your window and watch that SharePoint calendar mysteriously shrink:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Review-of-SharePoint-2010-Service-Pack-1_9F3A/SNAGHTML2726e1.png"&gt;&lt;img title="SNAGHTML2726e1" border="0" alt="SNAGHTML2726e1" width="240" height="108" 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/Review-of-SharePoint-2010-Service-Pack-1_9F3A/SNAGHTML2726e1_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Have no fear, just hit F5 to refresh and all is well.  Or you could install service pack 1.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;URLs to documents in document libraries are very long and include the Source parameter when the URL is copied (e.g., by right-clicking and selecting Copy Shortcut). In SP1, the Source parameter is not included in a copied URL, so the URL is much shorter.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is a very welcome fix.  &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.comwww.toddklindt.com"&gt;Todd Klindt&lt;/a&gt; has a &lt;a rel="nofollow" target="_blank" href="http://http://blogs.c5insight.comwww.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=271"&gt;blog post&lt;/a&gt; on an add-on that will create and manage short SharePoint URLs for you.  Check it out!&lt;/p&gt;
&lt;h1&gt;Conclusion&lt;/h1&gt;
&lt;p&gt;I just finished installing SP1 on a development environment that had Project Server, Office Web Apps and SharePoint of course.  I have to say, things went fairly smoothly overall.  I did have to work through a couple issues with IIS app pools not started and the User Profile Service, but when don’t you have to fix the User Profile Service?  As with all fixes, test test test! &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/198/Improvements-in-SharePoint-2010-Service-Pack-1.aspx</guid>
         <pubDate>Wed, 06 Jul 2011 21:12: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>All About SharePoint 2010 ULS Logging</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/190/All-About-SharePoint-2010-ULS-Logging.aspx</link>
         <description>&lt;p&gt;I use SharePoint’s ULS logs almost daily when supporting and administering SharePoint (2007 and 2010 for that matter).  Let’s look at what it is, and how it can help you troubleshoot issues in SharePoint 2010.&lt;/p&gt;
&lt;h1&gt;What is this “ULS Logging”?&lt;/h1&gt;
&lt;p&gt;Like most (but not all) features in SharePoint 2010, logging did get an upgrade from 3.0 / 2007.  First of all, what is ULS?  It stands for Unified Logging Service (ULS).  It is the engine that handles creating a detailed trace output of all of the events that occur in SharePoint.  It is dependent on the Windows service “SharePoint 2010 Tracing”.  By default, SharePoint creates these log files in the file system in the “14 hive”:&lt;/p&gt;
&lt;p&gt;C:&amp;#92;Program Files&amp;#92;Common Files&amp;#92;Microsoft Shared&amp;#92;Web Server Extensions&amp;#92;14&amp;#92;LOGS&lt;/p&gt;
&lt;p&gt;These log files are written by SharePoint in real-time and contain information regarding event logging per its configuration in Central Administration. &lt;/p&gt;
&lt;h1&gt;New for 2010&lt;/h1&gt;
&lt;p&gt;SharePoint 2010 introduced some new features with regards to trace logs.  Here are some of the highlights.&lt;/p&gt;
&lt;h2&gt;Correlation IDs&lt;/h2&gt;
&lt;p&gt;One big struggle with the ULS logs is that they were very hard to try and find where a specific error occurred.  You might have known when it happened, but it was very difficult to find the correlating specific error in the actual log.  Microsoft introduced the concept of a Correlation ID.  The way this works is that every event in SharePoint is given a unique GUID string.  Related events are grouped together by the same Correlation ID.  So for a given event, all of the actions that take place have the same correlation ID.  This way, you are able to very easily find the grouping of events that relate to each other.  When an exception occurs, the Correlation ID is shown.  Once you have that ID, that is when you dive into the ULS logs.  We’ll go into detail on that shortly.&lt;/p&gt;
&lt;p&gt;&lt;img width="585" height="261" title="" alt="Correlation ID" src="http://www.developerfusion.com/res/content/92338/error/"/&gt;&lt;/p&gt;
&lt;h2&gt;Event Throttling&lt;/h2&gt;
&lt;p&gt;In 2007, the interface used to configure event throttling for events wasn’t all that great.  You had some flexibility to set the severity level logged by category, but it was a little clunky:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_2.png"&gt;&lt;img width="733" height="145" border="0" 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="image" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In 2010, it has been changed significantly to help make modifications easier, especially being able to determine what level of logging has been set for which categories.  You can also easily reset all modified settings back to default.  Typically these options are modified when you are troubleshooting an issue on a specific component.  Here’s what the new UI looks like:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_4.png"&gt;&lt;img width="159" height="244" border="0" 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="image" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb_1.png"/&gt;&lt;/a&gt;             &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_8.png"&gt;&lt;img width="244" height="52" border="0" 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;" title="image" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb_3.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Event Log Flood Protection&lt;/h2&gt;
&lt;p&gt;This is a new option for 2010.  This new feature, as it’s name implies, prevents the event log from being flooded with duplicated events.  This is just good practice to enable.&lt;/p&gt;
&lt;h2&gt;Trace Log Configuration&lt;/h2&gt;
&lt;p&gt;Here’s how the settings looked in 2007:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_10.png"&gt;&lt;img width="733" height="173" border="0" 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="image" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb_4.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The trace log settings also got an upgrade in 2010. Here’s the same section in 2010.  They really got smart and gave us some options to be able to prevent the server from filling up with logs.  As I understand it, after the number of days to store log files has expired, it prunes the logs from day 1.  The next day it will prune day 2 and so on so that there will always only be 14 days worth of log files.  You also have a new option to be able to restrict the log files by file size as well.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_12.png"&gt;&lt;img width="745" height="226" border="0" 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="image" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb_5.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Microsoft has some best practices for configuring these diagnostic logging settings on &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ee748656.aspx"&gt;TechNet&lt;/a&gt;.  Now let’s take a look at how to use the ULS log files for troubleshooting.&lt;/p&gt;
&lt;h1&gt;ULS Usage&lt;/h1&gt;
&lt;h2&gt;How to Configure the Tracing Settings&lt;/h2&gt;
&lt;p&gt;For the sake of this post, we are focusing on SharePoint 2010 so all steps are specific to the 2010 interface.  To configure ULS logging settings, you have to access Central Administration.  Under Monitoring, click Configure diagnostic logging. &lt;/p&gt;
&lt;h2&gt;How to View the ULS Logs&lt;/h2&gt;
&lt;p&gt;The ULS log files are text files that SharePoint creates in the convention .log.  You could, in theory, use notepad to read the ULS logs.  I would advise against that if you want to retain your sanity.  Microsoft has provided (along with at least one on &lt;a rel="nofollow" target="_blank" href="http://ulsviewer.codeplex.com/"&gt;Codeplex&lt;/a&gt;) a viewer to look at the ULS log available &lt;a rel="nofollow" target="_blank" href="http://archive.msdn.microsoft.com/ULSViewer"&gt;here&lt;/a&gt;.  Between the two, I personally like one from Microsoft because it has more features and I just think is better.  In the viewer, you can either watch the ULS logs real time, or open a previous log file.&lt;/p&gt;
&lt;h2&gt;Troubleshooting with the ULS Logs&lt;/h2&gt;
&lt;p&gt;So when would you actually use all this?  Well, I’m sure in your life using SharePoint you will eventually encounter an error (sorry Microsoft, no one’s perfect).  When you see that dreaded error message, fret not!  If you’re not already, you’re going to have to remote on the SharePoint server.  Now open your trusty ULS log viewer.  You have two choices here to find the exact error in the ULS logs:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Hopefully you will be able to reproduce the error at will.  So open the logs in a real time view, and find the error.&lt;/li&gt;
    &lt;li&gt;Or, you can’t reproduce at will, so you will have to do a little hunting.  If you know about when it occurred, you can open a log file and search.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Let’s look at the ULS log viewer.  To open the logs in real time, click &lt;strong&gt;File &lt;/strong&gt;–&amp;gt; &lt;strong&gt;Open From &lt;/strong&gt;–&amp;gt; &lt;strong&gt;ULS&lt;/strong&gt;. &lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_13.png"&gt;&lt;img width="244" height="184" border="0" 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" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb_2.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On the next dialog, choose the default option “&lt;strong&gt;Use ULS feed from default log-file directory&lt;/strong&gt;”, then click &lt;strong&gt;Ok&lt;/strong&gt;. Then watch the fun!  If you want to see a particular log, it’s just as easy.  Click &lt;strong&gt;File &lt;/strong&gt;–&amp;gt; &lt;strong&gt;Open From &lt;/strong&gt;–&amp;gt; &lt;strong&gt;File&lt;/strong&gt;.  It defaults to the LOGS directory, and browse the list to find the ULS log file you want.  You can see the date/time, process, product and category, severity level, Correlation (remember that?) and a detailed message of each event. &lt;/p&gt;
&lt;p&gt;One of the cooler features that makes it easier to find the correlation ID is the correlation tree.  Click the button on the toolbar in the top right corner (Toggle Correlation Tree) which will open on the left.  Change the drop down to Correlation, and find the ID from the error.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_15.png"&gt;&lt;img width="244" height="92" border="0" 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="image" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb_6.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can of course search and find certain text if you’re looking for something specific.  One thing I’ve done a lot in the past is when troubleshooting the User Profile Service (and who hasn’t?).  You can filter the view by category like this:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_17.png"&gt;&lt;img width="244" height="62" border="0" 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" alt="image" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-ULS-Logging-101_E95D/image_thumb_7.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This will only show events that relate to the User Profile Service.  When you provision a User Profile Service, there are a known certain events that you should see, and this makes it very easy to see and watch.  I encourage you to check out other features as well like the Smart Highlighting.  You can also change the level of events that are displayed. &lt;/p&gt;
&lt;p&gt;In another blog post, we’ll look at a related feature, the SharePoint Health Analyzer!  I hope this has been helpful, and encourages you to check out your ULS logs!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/190/All-About-SharePoint-2010-ULS-Logging.aspx</guid>
         <pubDate>Thu, 30 Jun 2011 07:14:00 +0000</pubDate>
      </item>
      <item>
         <title>Manipulating UI Elements in SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/189/Manipulating-UI-Elements-in-SharePoint-2010.aspx</link>
         <description>&lt;p&gt;As we mentioned in a &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Home/tabid/40/entryid/135/SharePoint-Dialog-Lightbox-Usage-and-Tricks.aspx"&gt;previous post&lt;/a&gt;, SharePoint 2010 uses a client dialog framework for elegantly showing forms in a dialog box without having to leave the current page.  In this same post, we also mentioned the IsDlg URL parameter, and how it can be added to nearly any page to prepare it for showing in a dialog (essentially a 'quick-n-dirty' way of removing the navigation, quick launch, etc.). &lt;/p&gt;
&lt;p&gt;Armed with this knowledge, we assumed that we could use the IsDlg feature for a recent project, which required a specific page on SharePoint to be shown without any 'standard' UI components (navigation, title bars, ribbon, quick launch, etc.).  After constructing the page, we navigated to the URL adding the IsDlg=1 parameter and everything &lt;em&gt;looked&lt;/em&gt; perfect; a quick win (so we thought).  However, what I have not yet told you is that the page we were viewing was a 'new form' for a list, which requires submitting the page to save the data back to the SharePoint list.  As we tested the form and submitted the data, we were immediately presented with a JavaScript error.  After a short bit of investigation, we realized that the IsDlg parameter is nice, but certainly not fool-proof.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Here's what happened:      &lt;br /&gt;
&lt;/strong&gt;By adding the IsDlg=1 parameter to your URL, you essentially tell SharePoint that this page is being displayed in a the client dialog framework (i.e. a dialog box).  At this point, it has to make some assumptions, and one of these is that you are actually doing what you say you are (go figure!).  In our case, we were not actually using the dialog box, but were instead showing the page directly in the browser and using the parameter to simply remove the UI elements from our page.  Behind the scenes, with the assumption that you are in fact in a dialog box, SharePoint tries to close the page and/or navigate to another page upon submission of the form being shown in the dialog box.  When the page is shown without the dialog, certain client objects do not exist, which essentially leads to 'object not found' errors when the JavaScript code executes to close/navigate from the dialog box.     &lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;** I should note that this does not affect display forms or static pages which do not submit a form. ** &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Our Solution:      &lt;br /&gt;
&lt;/strong&gt;Many of you may remember the plethora of CSS tricks used within Content Editor Web Parts (CEWP) in SharePoint 2007, and sure enough there are similar tricks for SharePoint 2010.  By simply identifying the IDs and/or CSS classes being used by certain UI elements, we are able to elegantly hide these from the page, essentially simulating the IsDlg parameter.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The CSS:      &lt;br /&gt;
&lt;br /&gt;
&lt;/em&gt;&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;
&lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;
&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum1"&gt;   1:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;style&lt;/span&gt; type="text/css"&lt;span style="color:#006080;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum2"&gt;   2:&lt;/span&gt;  &lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum3"&gt;   3:&lt;/span&gt; &lt;span style="color:#008000;"&gt;/* Top Nav */&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum4"&gt;   4:&lt;/span&gt; #s4-titlerow {&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum5"&gt;   5:&lt;/span&gt;     DISPLAY: none&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum6"&gt;   6:&lt;/span&gt; }&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum7"&gt;   7:&lt;/span&gt;  &lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum8"&gt;   8:&lt;/span&gt; &lt;span style="color:#008000;"&gt;/* Ribbon */&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum9"&gt;   9:&lt;/span&gt; #s4-ribbonrow {&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum10"&gt;  10:&lt;/span&gt;     DISPLAY: none&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum11"&gt;  11:&lt;/span&gt; }&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum12"&gt;  12:&lt;/span&gt;  &lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum13"&gt;  13:&lt;/span&gt; &lt;span style="color:#008000;"&gt;/* Quick Launch */&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum14"&gt;  14:&lt;/span&gt; #s4-leftpanel {&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum15"&gt;  15:&lt;/span&gt;     DISPLAY: none&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum16"&gt;  16:&lt;/span&gt; }&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum17"&gt;  17:&lt;/span&gt; &lt;span style="color:#cc6633;"&gt;.s4-ca&lt;/span&gt; {&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum18"&gt;  18:&lt;/span&gt;     MARGIN-LEFT: 0px&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum19"&gt;  19:&lt;/span&gt; }&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#606060;" id="lnum20"&gt;  20:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;lt;&lt;/span&gt;/&lt;span style="color:#0000ff;"&gt;style&lt;/span&gt;&lt;span style="color:#006080;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The CSS above can be placed into a CEWP to hide the Top Navigation, Ribbon, and Quick Launch UI elements.  In our case, we packaged this into a single DWP file named &lt;em&gt;Simulate_IsDlg.dwp&lt;/em&gt;.  We can now reuse this code on any form as needed.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NOTE: &lt;/strong&gt;Now that the ribbon has been removed from your page, you may find it difficult to place the page into Edit mode to add/edit web parts.  Here are two quick methods for you:     &lt;br /&gt;
1) Add the &lt;font face="Courier New"&gt;toolpaneview=2&lt;/font&gt; or &lt;font face="Courier New"&gt;toolpaneview=3&lt;/font&gt;&lt;font face="Arial"&gt; parameter to your URL.  Each opens a different version of the &lt;em&gt;Add Web Parts &lt;/em&gt;menu.       &lt;br /&gt;
2) Add the &lt;font face="Courier New"&gt;contents=1&lt;/font&gt; parameter to your URL and close the CEWP web part which hides the ribbon (you can add it back by adding a web part and selecting "Closed Web Parts").       &lt;br /&gt;
* There are more methods, but none better than one of the above options; we prefer option #1.  &lt;br /&gt;
&lt;/font&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;       &lt;br /&gt;
UPDATE 06/30/2011:&lt;/strong&gt; &lt;/font&gt;&lt;font color="#000000"&gt;3) You&lt;/font&gt;&lt;font color="#000000"&gt; can add the &lt;font face="Courier New"&gt;DisplayMode=Design&lt;/font&gt;&lt;font face="Arial"&gt; parameter, which will place the page in design mode as well.  There are quite a few other flags for this parameter as well, which I'll cover in a future blog post.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BONUS TIP:&lt;/strong&gt; Parameters can be added to the &lt;font face="Courier New"&gt;source&lt;/font&gt; URL parameter as well.  For example, after completing a SharePoint survey, you may want the user to be redirected to a thank you page, which is free from UI elements as well.  To do this, we can simply construct the source URL parameter as: &lt;font face="Courier New"&gt;source=/pages/thankyou.aspx?IsDlg=1&lt;/font&gt;.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/189/Manipulating-UI-Elements-in-SharePoint-2010.aspx</guid>
         <pubDate>Tue, 21 Jun 2011 06:03: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>Resolve an TCP 10061 Error with the SharePoint 2010 User Profile Service</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/185/Resolve-an-TCP-10061-Error-with-the-SharePoint-2010-User-Profile-Service.aspx</link>
         <description>&lt;p&gt;I went to go run a manual sync of the User Profile Service in SharePoint, and was unable to get to the Service Application.  After reviewing the &lt;a rel="nofollow" target="_blank" href="http://blogs.msdn.com/b/opal/archive/2009/12/22/uls-viewer-for-sharepoint-2010-troubleshooting.aspx"&gt;ULS logs&lt;/a&gt;, I found this error:&lt;/p&gt;
&lt;p&gt;&lt;font color="#ff0000"&gt;UserProfileConfigManager.StartSynchronizationForOneManagementAgent: Unexpected exception: System.ServiceModel.EndpointNotFoundException: Could not connect to http:// /ResourceManagementService/MEX. &lt;strong&gt;TCP error code 10061: No connection could be made because the target machine actively refused it&lt;/strong&gt; IP address:port. ---&amp;gt; System.Net.WebException: Unable to connect to the remote server ---&amp;gt; System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it IP address:port.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#000000"&gt;Luckily this error has an easy fix.  This error occurred because one of the two ForeFront Identity Manager services that the User Profile Service depends on wasn’t started.  Go into Services.msc and check to ensure both services are started:&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Resolve-an-TCP-10061-Error-with-the-Shar_11607/image_2.png"&gt;&lt;img height="45" width="519" border="0" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Resolve-an-TCP-10061-Error-with-the-Shar_11607/image_thumb.png" alt="image" title="image" style="background-image:none;border-width:0px;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#000000"&gt;You should be able to start the service without an issue and this should allow you to connect to the User Profile Service again.  &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#000000"&gt;I will give a strong word of caution here though.  The User Profile Service can be touchy and when functioning properly, the services does not stop for no reason.  I would be sure to keep a close eye on it and if it happens more than once or twice, I would investigate further to ensure you have configured the UPS properly with all service accounts having the proper permissions.  You can read more about the requirements at the following resources:&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a rel="nofollow" target="_blank" href="http://www.harbar.net/articles/sp2010ups.aspx"&gt;Spence Harbar’s blog&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ee721049.aspx"&gt;TechNet&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I would strongly encourage all to apply the latest cumulative update possible (though &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=973"&gt;SP1&lt;/a&gt; is releasing soon) as they have many updates and fixes for the User Profile Service.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/185/Resolve-an-TCP-10061-Error-with-the-SharePoint-2010-User-Profile-Service.aspx</guid>
         <pubDate>Tue, 31 May 2011 04:56:00 +0000</pubDate>
      </item>
      <item>
         <title>Salesforce Tip: Map a Lead Field to Two Places</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/182/Salesforce-Tip-Map-a-Lead-Field-to-Two-Places.aspx</link>
         <description>&lt;p&gt;On a recent Salesforce implementation, we identified a need to map a single lead field to two different fields - one on the contact and one on the opportunity. &lt;br /&gt;
&lt;br /&gt;
My initial thought was to create a trigger to fire on lead conversion that would populate the second field. However, I always try to look first for a non-coding solution. Which brought me to the fairly simple idea of creating a second field that would use a workflow field update to copy the value of the original field. The new field would be hidden from the users, but would be used for the sole purpose of mapping to the second destination field. I thought I'd found the perfect "clicks not code" solution ... &lt;br /&gt;
&lt;br /&gt;
until I realized my field was a lookup field, a field type that can't be updated by workflow. Drat. &lt;br /&gt;
&lt;br /&gt;
So, I did need a bit of coding in order to update the second, hidden field with the value of the original field. I created a very simple trigger to set the value of the second lookup field to match the first. &lt;br /&gt;
&lt;br /&gt;
&lt;table bgcolor="#e4e4e4" cellpadding="5" border="0"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td&gt;
            &lt;p&gt;&lt;span style="font-family:'Courier New';"&gt;trigger CopyCampaignSource on Lead (before insert, before update) {&lt;br /&gt;
            &lt;br /&gt;
            for (Lead l : Trigger.new) { l.c5_Campaign_Source_Opp__c = l.c5_Campaign_Source__c; } }&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;br /&gt;
Would I have been better off going with my first instinct, which was to create a trigger to fire on lead conversion?&lt;/p&gt;
&lt;p&gt;In hindsight, maybe. But, this method was still simple and effective, and I think it's always worth it to explore non-coding solutions first - especially knowing that most implementations will ultimately be maintained by non-developers and, therefore, should be as admin-friendly as possible.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/182/Salesforce-Tip-Map-a-Lead-Field-to-Two-Places.aspx</guid>
         <pubDate>Fri, 13 May 2011 18:30:00 +0000</pubDate>
      </item>
      <item>
         <title>How to Remove a User from a SharePoint 2010 Site Collection</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/181/How-to-Remove-a-User-from-a-SharePoint-2010-Site-Collection.aspx</link>
         <description>&lt;p&gt;I was troubleshooting a recent issue with the User Profile Service, where I would make a change to a user account in Active Directory (like a spelling correction).  The Profile Sync would occur and I would verify that the correct spelling was in the profile.  However, the change did not replicate to the site collection like it was supposed to.  This normally happens via a SharePoint timer job named &lt;strong&gt;User Profile to SharePoint Full Synchronization&lt;/strong&gt;.  It’s described function is:&lt;/p&gt;
&lt;p&gt;“Synchronizes user information from the user profile application to SharePoint users and synchronizes site memberships from SharePoint to the user profile application”&lt;/p&gt;
&lt;p&gt;Well for whatever reason, it wasn’t doing that.  To correct the issue, there can be a couple fixes:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Make a change to one of the fields via Central Administration like Title.  Save this change, then re-open the profile and set it back to what it’s supposed to be.  This will sometimes force the sync to run properly.&lt;/li&gt;
    &lt;li&gt;Remove the user from the site collection and re-add them&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This is what did it for me.  To do this, perform the following:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;As a site collection administrator, click Site Actions –&amp;gt; Site Permissions&lt;/li&gt;
    &lt;li&gt;Click into any existing group (like site Owners).  The URL will be something like http://server/_layouts/people.aspx?MembershipGroupID=28.&lt;/li&gt;
    &lt;li&gt;Change the 28 to a 0.  The list should now show you All People. &lt;/li&gt;
    &lt;li&gt;Find the user who isn’t updating, click the checkbox by their name.  Click Actions, Delete Users from Site Collection.&lt;/li&gt;
    &lt;li&gt;Now add the user back to the appropriate group, and their spelling should be correct.&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/How-to-Remove-a-User-from-a-SharePoint-2_F36C/SNAGHTML1f61cbd.png"&gt;&lt;img height="220" width="240" border="0" style="background-image:none;border-width:0px;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;" title="SNAGHTML1f61cbd" alt="Remove a user from a site collection" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/How-to-Remove-a-User-from-a-SharePoint-2_F36C/SNAGHTML1f61cbd_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/181/How-to-Remove-a-User-from-a-SharePoint-2010-Site-Collection.aspx</guid>
         <pubDate>Thu, 12 May 2011 02:34: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>SharePoint Tip: Use Claims Authentication for Your 2010 Multi-Tenant Web Application</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/177/SharePoint-Tip-Use-Claims-Authentication-for-Your-2010-Multi-Tenant-Web-Application.aspx</link>
         <description>&lt;p&gt;I had setup a test environment to test out and play with the new hosting functionality of SharePoint, also called multi-tenancy.  When you create your main web application that will be used to house the tenants, you have the option to have it use Claims Based or Classic Mode authentication. &lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-Tip-Use-Claims-Authentication_7EFA/image_2.png"&gt;&lt;img height="138" width="427" border="0" alt="image" title="image" style="background-image:none;border-width:0px;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-Tip-Use-Claims-Authentication_7EFA/image_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Well I had chosen Classic mode, and went on my merry way.  It wasn’t long before I ran into problems.  The major issue I was having was that search was failing to crawl the tenant sites with access denied.  If I configured the default access account to use an account that was a site collection admin, things would crawl.  I had checked all the bases, but nothing would work.  The main aspect of multi-tenancy is that each tenant site subscription is configured to look at a single OU in Active Directory ONLY.  Since the crawl account couldn’t be in each tenant’s OU, that’s a problem.  But, this is just supposed to work!?&lt;/p&gt;
&lt;p&gt;It turns out that the problem was with the authentication.  After converting the existing web application to Claims based authentication, my standard default search account was able to successfully crawl my tenants, and I could finally get some search goodness.  Big thanks to &lt;a rel="nofollow" target="_blank" href="http://blogs.msdn.com/b/maximeb/archive/2010/10/24/configuring-sharepoint-2010-search-for-crawling-host-name-site-collection-tenants.aspx"&gt;Maxime’s article&lt;/a&gt; on this on MSDN. &lt;/p&gt;
&lt;p&gt;Maxime also pointed to &lt;a rel="nofollow" target="_blank" href="http://blogs.technet.com/b/speschka/archive/2010/07/20/migrating-from-windows-classic-auth-to-windows-claims-auth-in-sharepoint-2010-part-2.aspx"&gt;Steve Peschka’s article&lt;/a&gt; on how to convert a webapp to claims from classic.  It works great, and are the correct steps.  Don’t be fooled by imitators!&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/177/SharePoint-Tip-Use-Claims-Authentication-for-Your-2010-Multi-Tenant-Web-Application.aspx</guid>
         <pubDate>Thu, 14 Apr 2011 18:21:00 +0000</pubDate>
      </item>
      <item>
         <title>Resolve Search Crawl Error When Using Self-Signed SSL Certificate with SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/175/Resolve-Search-Crawl-Error-When-Using-Self-Signed-SSL-Certificate-with-SharePoint-2010.aspx</link>
         <description>&lt;p&gt;While configuring a SharePoint farm for a client the other day, I came across a simple but problematic error with search.  We had requested a full SSL certificate for the farm, but I was a self-signed certificate so I could work with the site.  After configuring search content sources and I kicked off a full crawl, I got this error in the crawl log:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/ede8257b831d_F5E8/image_2.png"&gt;&lt;img title="image" border="0" alt="image" width="454" height="77" 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/ede8257b831d_F5E8/image_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#ff0000"&gt;“The secure socks layer (SSL) certificate sent by the server was invalid and this item will not be crawled.”&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;Wells that’s a bummer.  Luckily there’s an easy fix.  What you need to do is configure search to “Ignore SSL certificate name warnings” via Central Administration.  &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ee792873.aspx"&gt;TechNet&lt;/a&gt; has the documented steps.  After making this change and running a full crawl, voilà!&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/ede8257b831d_F5E8/image_6.png"&gt;&lt;img title="image" border="0" alt="image" width="660" height="50" 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/ede8257b831d_F5E8/image_thumb_2.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Success!  Of course you should get an official SSL certificate, but sometimes you get by with what you have. &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/175/Resolve-Search-Crawl-Error-When-Using-Self-Signed-SSL-Certificate-with-SharePoint-2010.aspx</guid>
         <pubDate>Fri, 08 Apr 2011 02:44: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>SharePoint 2010 Visual Web Parts - Using Script Managers &amp; AJAX</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/173/SharePoint-2010-Visual-Web-Parts-Using-Script-Managers-AJAX.aspx</link>
         <description>&lt;p&gt;SharePoint 2010 introduced a quantum leap forward with the introduction of Visual Web Parts development integration with Visual Studio 2010. Most developers that have worked with SharePoint for any length of time are familiar with hosting custom ASPX pages inside SharePoint web parts. Doing so allows us to present robust applications and interfaces inside the SharePoint portal and fully utilize all of the robust security features and other goodies that come with SharePoint. The introduction of Visual Web Part development eliminates the need for separate web sites and pages since the custom web part becomes an integrated component of the SharePoint application. All of this comes without having to use STSDEV, VSeWSS, or the like. We can simply build the web part right inside Visual Studio and click Deploy! A really great feature is the ability run &amp; debug right from Visual Studio without any special configuration required. All of this greatly simplifies and expedites the development of custom enhancements to a SharePoint application and is no doubt Microsoft’s response to the fact that the number of SharePoint developers continues to grow, as does the number of SharePoint implementations.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/SharePoint-2010-Visual-Web-PartsUsing-Aj_C684/ee309510_Fox_fig1(en-us,MSDN_10)_2.png"&gt;&lt;img title="ee309510_Fox_fig1(en-us,MSDN_10)" border="0" alt="ee309510_Fox_fig1(en-us,MSDN_10)" width="404" height="304" 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/SharePoint-2010-Visual-Web-PartsUsing-Aj_C684/ee309510_Fox_fig1(en-us,MSDN_10)_thumb.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;For those who have not yet delved into Visual Web parts, this link will take you to MSDN for a quick jump start: &lt;a rel="nofollow" title="http://msdn.microsoft.com/en-us/library/ee231579.aspx" target="_blank" href="http://msdn.microsoft.com/en-us/library/ee231579.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee231579.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;One of the advantages of using custom web parts and ASPX applications is the ability to integrate data &amp; functionality from outside systems, such as ERP applications, into the SharePoint  environment. Users can view live orders, inventory data, or other mission critical information and even make updates without ever leaving the portal. In order to provide this robust functionality, we often need to use data grids, combo boxes, tree views, etc. to provide a fully functional user experience. All of this is possible (and easy) with the Visual Web Part development environment. One can even utilize 3rd party controls such as Telerik or Infragistsics .NET AJAX controls. Essentially, most anything you can do on a stand alone ASPX.NET page can be done with your web part. There are a few catches, though.&lt;/p&gt;
&lt;p&gt;To provide your users with the best experience, you will naturally want to utilize the AJAX functionality that most web controls now provide. Your web part is going to reside on a page that will be served up by the SharePoint server and this host page will contain its own script manager by default. Unfortunately, this script manager cannot “see” the controls on your web part and therefore cannot control AJAX responses for them. You will find that simply including a script manager on your web part like you would do on a stand alone ASPX page will not work either. The two script managers will conflict with each other and the SharePoint master page will prevail. Fortunately, there is a simple solution for this that makes both script managers happy and allows them both to work in harmony.&lt;/p&gt;
&lt;p&gt;You will note that when the Visual Web Part project is created that you will get three files, one of which is the code file which contains methods that add controls to the Web Part and generate custom content within the Web Part. The key method in this file is the CreateChildControls() method as shown below.&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;"&gt;
&lt;div id="codeSnippet" style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;
&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum1" style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;protected&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;override&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; CreateChildControls()&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum2" style="color:#606060;"&gt;   2:&lt;/span&gt; {&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum3" style="color:#606060;"&gt;   3:&lt;/span&gt;     Control control = &lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.Page.LoadControl(_ascxPath);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum4" style="color:#606060;"&gt;   4:&lt;/span&gt;     Controls.Add(control);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum5" style="color:#606060;"&gt;   5:&lt;/span&gt;     &lt;span style="color:#0000ff;"&gt;base&lt;/span&gt;.CreateChildControls();&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum6" style="color:#606060;"&gt;   6:&lt;/span&gt; }&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum7" style="color:#606060;"&gt;   7:&lt;/span&gt;  &lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The trick is to add your script manager here and configure the affected controls rather than to perform these actions in your ASPX as usual. Below is an example demonstrating how to add a Telerik RadAjaxManager and RadAjaxLoadingPanel to the web part and to configure several controls. This sample uses the Telerik control, but any script manager control can be used. The key point is to add the controls and configure them here. This will provide the full AJAX functionality within your web part while allowing SharePoint to also function normally.&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;"&gt;
&lt;div id="codeSnippet" style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;
&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum1" style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;protected&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;override&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; CreateChildControls1()&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum2" style="color:#606060;"&gt;   2:&lt;/span&gt; {&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum3" style="color:#606060;"&gt;   3:&lt;/span&gt;     Control control = Page.LoadControl(_ascxPath);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum4" style="color:#606060;"&gt;   4:&lt;/span&gt;     Controls.Add(control);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum5" style="color:#606060;"&gt;   5:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;// Ajax manager &amp; loading panel&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum6" style="color:#606060;"&gt;   6:&lt;/span&gt;     RadAjaxManager RadAjaxManager1 = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; RadAjaxManager();&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum7" style="color:#606060;"&gt;   7:&lt;/span&gt;     RadAjaxLoadingPanel loadingPanel = control.FindControl(&lt;span style="color:#006080;"&gt;"RadAjaxLoadingPanel1"&lt;/span&gt;) &lt;span style="color:#0000ff;"&gt;as&lt;/span&gt; RadAjaxLoadingPanel;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum8" style="color:#606060;"&gt;   8:&lt;/span&gt;  &lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum9" style="color:#606060;"&gt;   9:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;//Add first control (DataGrid1) and updated controls&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum10" style="color:#606060;"&gt;  10:&lt;/span&gt;     Control ajaxcontrol = control.FindControl(&lt;span style="color:#006080;"&gt;"DataGrid1"&lt;/span&gt;);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum11" style="color:#606060;"&gt;  11:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, (RadGrid)control.FindControl(&lt;span style="color:#006080;"&gt;"DataGrid2"&lt;/span&gt;), loadingPanel);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum12" style="color:#606060;"&gt;  12:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, (RadGrid)control.FindControl(&lt;span style="color:#006080;"&gt;"DataGrid3"&lt;/span&gt;), loadingPanel);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum13" style="color:#606060;"&gt;  13:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, (RadToolBar)control.FindControl(&lt;span style="color:#006080;"&gt;"RadToolBar1"&lt;/span&gt;));&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum14" style="color:#606060;"&gt;  14:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, control.FindControl(&lt;span style="color:#006080;"&gt;"ComboBox1"&lt;/span&gt;));&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum15" style="color:#606060;"&gt;  15:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, control.FindControl(&lt;span style="color:#006080;"&gt;"ComboBox2"&lt;/span&gt;));&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum16" style="color:#606060;"&gt;  16:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, control.FindControl(&lt;span style="color:#006080;"&gt;"RadPanelBar1"&lt;/span&gt;));&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum17" style="color:#606060;"&gt;  17:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;// Add second control (ComboBox1) and updated controls&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum18" style="color:#606060;"&gt;  18:&lt;/span&gt;     ajaxcontrol = control.FindControl(&lt;span style="color:#006080;"&gt;"ComboBox1"&lt;/span&gt;);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum19" style="color:#606060;"&gt;  19:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, (RadGrid)control.FindControl(&lt;span style="color:#006080;"&gt;"DataGrid1"&lt;/span&gt;), loadingPanel);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum20" style="color:#606060;"&gt;  20:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, control.FindControl(&lt;span style="color:#006080;"&gt;"ComboBox2"&lt;/span&gt;), loadingPanel);&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum21" style="color:#606060;"&gt;  21:&lt;/span&gt;     RadAjaxManager1.AjaxSettings.AddAjaxSetting(ajaxcontrol, control.FindControl(&lt;span style="color:#006080;"&gt;"RadToolBar1"&lt;/span&gt;));&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum22" style="color:#606060;"&gt;  22:&lt;/span&gt;   &lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum23" style="color:#606060;"&gt;  23:&lt;/span&gt;     &lt;span style="color:#008000;"&gt;// continue as needed&lt;/span&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span id="lnum24" style="color:#606060;"&gt;  24:&lt;/span&gt; } &lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;In summary, you can create your web part in Visual Studio utilizing whatever controls suit your needs. Once in place, implement your script manager inside CreateChildControls() and configure as needed. Prepare your end users to be dazzled.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/173/SharePoint-2010-Visual-Web-Parts-Using-Script-Managers-AJAX.aspx</guid>
         <pubDate>Wed, 30 Mar 2011 00:44: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 for Business Managers</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/61/CRM-For-Business-Managers.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/61/CRM-For-Business-Managers.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634363834046814259.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;With Dynamics CRM 2011, Microsoft has delivered a business management platform that reaches fary beyond traditional CRM capabilities. This session provides an overview of the core functions in Dynamics CRM for managers as well as the extensions that deliver greater control, collaboration and visibility into the hands of the management team.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">61</guid>
         <pubDate>Tue, 22 Mar 2011 09:36:45 +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>SharePoint Tip: Searching SharePoint From Windows 7</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/157/SharePoint-Tip-Searching-SharePoint-From-Windows-7.aspx</link>
         <description>&lt;p&gt;I believe that one of the most under-evangelized areas of SharePoint is its Windows integration.  Consistently, we find that many users simply assume they have to use the Web interface to access SharePoint, but you can actually do a majority of your daily document management and collaboration work without ever accessing SharePoint via the Web.  In fact, my ratio of Windows to Web SharePoint use is probably 75:25; 75% of my document management and collaboration work being done completely within Microsoft Windows.&lt;/p&gt;
&lt;p&gt;In this tip, we focus on searching SharePoint from Windows.  The screenshot-filled instructions below will walk you through downloading the search connector provided by your company or SharePoint, installing the connector, and using it in Windows 7.&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;At &lt;a rel="nofollow" title="C5 Insight" target="_blank" href="http://www.c5insight.com/"&gt;C5 Insight&lt;/a&gt;, we have created our own Search Connector that points everyone to our Search Center site.  We have also customized the search connector for our organization, and provided this to our employees, rather than everyone having to use the default SharePoint connector.  &lt;br /&gt;
    &lt;br /&gt;
    To build your own search connector, you can start here: &lt;br /&gt;
    &lt;a rel="nofollow" title="http://msdn.microsoft.com/en-us/library/dd742958(v=vs.85).aspx" target="_blank" href="http://msdn.microsoft.com/en-us/library/dd742958(v=vs.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd742958(v=vs.85).aspx&lt;/a&gt; &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;You can also use SharePoint's default search connector that is available on the search results page. &lt;br /&gt;
    &lt;br /&gt;
    Check out the walkthrough here: &lt;br /&gt;
    &lt;a rel="nofollow" title="http://technet.microsoft.com/en-us/library/ff899315.aspx#BKMK_O14AsAFedProvider" target="_blank" href="http://technet.microsoft.com/en-us/library/ff899315.aspx#BKMK_O14AsAFedProvider"&gt;http://technet.microsoft.com/en-us/library/ff899315.aspx#BKMK_O14AsAFedProvider&lt;/a&gt; &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Regardless of the search connector you choose, if you have never downloaded the connector, you will be prompted to add the connector to Windows. &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/LinkClick.aspx?fileticket=UXcJrLZpSE0%3d&amp;tabid=40"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="240" height="165" 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/BlogImages/Curtis/2-7-2011 7-11-20 PM.png"/&gt;&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Once added, you will notice that there is a new search option in your left navigation, and the focus is on the search text box in the upper right corner of the Explorer window. &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_8.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="204" height="79" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_3.png"/&gt;&lt;/a&gt; &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;You can immediately begin searching, and this search will cross all boundaries, including individual sites (depending on the scope of your search connector). &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Tips and Tricks:
    &lt;p&gt;a. For quicker access, rearrange this search connector in your "Favorites" section &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_10.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="192" height="159" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_4.png"/&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;b. For even faster access, pin to your Start Menu or add a Quick Launch button&lt;/p&gt;
    &lt;p&gt;i. To pin to your Start Menu, simply drag the search from your Windows Favorites navigation to the Start Menu. &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_14.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="240" height="128" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_6.png"/&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;ii. To add a Quick Launch button, first do &lt;a rel="nofollow" target="_blank" href="http://www.howtogeek.com/howto/windows-7/add-the-quick-launch-bar-to-the-taskbar-in-windows-7/"&gt;this&lt;/a&gt;, then you can add this shortcut in the same manner - one-click access to SharePoint search. &lt;br /&gt;
    &lt;br /&gt;
    &lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_12.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="84" height="34" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_5.png"/&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;c. By default, the search view is set to "Content."  You can change this as you would with any view in Windows, just under the search bar.  Content is a nice view, since it actually shows you portions of the file and also does "hit highlighting." &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_16.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="187" height="123" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_7.png"/&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_37.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="466" height="66" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_1.png"/&gt;&lt;/a&gt; &lt;br /&gt;
 &lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;d. You can adjust your sort as well, but by default, I would ensure your results are sorted by &lt;strong&gt;Search ranking&lt;/strong&gt;, &lt;strong&gt;Descending&lt;/strong&gt;.  Right-click to get to this menu.  &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image107.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="300" height="205" 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/Searching-SharePoint-From-Windows-7_10D33/image107_thumb.png"/&gt;&lt;/a&gt; &lt;br /&gt;
 &lt;/p&gt;
&lt;p&gt;e. Quotes and filters in the search box work on SharePoint 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/Searching-SharePoint-From-Windows-7_10D33/image_39.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="300" height="166" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_2.png"/&gt;&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
i. Only "SharePoint 2010" PowerPoint presentations.  &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_41.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="250" height="255" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_8.png"/&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;br /&gt;
ii. "SharePoint 2010" documents where Amber Butler was an author.  &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_43.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="340" height="95" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_18.png"/&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;br /&gt;
iii. "SharePoint 2010" documents modified after 1/1/2011  &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_45.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="250" height="330" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_19.png"/&gt;&lt;/a&gt; &lt;br /&gt;
 &lt;/p&gt;
&lt;p&gt;i. You can easily save a search for quickly finding similar documents at a later time &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_32.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="133" height="86" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_15.png"/&gt;&lt;/a&gt; &lt;br /&gt;
 &lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;j. Lastly, with one click, you can open this search in the SharePoint site for additional filtering and refinements. &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image115.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="250" height="97" 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/Searching-SharePoint-From-Windows-7_10D33/image115_thumb.png"/&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;br /&gt;
i. Once opened in the Search Center, all refinements are available on the left.  &lt;br /&gt;
&lt;br /&gt;
&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/Windows-Live-Writer/Searching-SharePoint-From-Windows-7_10D33/image_47.png"&gt;&lt;img title="image" border="0" alt="SharePoint 2010,Search,Windows 7,Integration,Search Connector,Federated Search" width="250" height="167" 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/Searching-SharePoint-From-Windows-7_10D33/image_thumb_20.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;As you can see, there are &lt;strong&gt;&lt;u&gt;many&lt;/u&gt;&lt;/strong&gt; ways to integrate SharePoint with Microsoft Windows, and this was only for search!  Our goal is to always add value for our clients, and Windows integration is a huge time saver and productivity booster.  We hope this has been helpful for you as well.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/157/SharePoint-Tip-Searching-SharePoint-From-Windows-7.aspx</guid>
         <pubDate>Wed, 23 Feb 2011 05:09:00 +0000</pubDate>
      </item>
      <item>
         <title>CRM Overview - Salesforce.com</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/55/CRM-Overview-Salesforcecom.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/55/CRM-Overview-Salesforcecom.aspx'&gt;&lt;img src='http://img.youtube.com/vi/_r1H7OK8lzY/default.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;A quick overview of Salesforce.com - all of the basics in less than 4 minutes!</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">55</guid>
         <pubDate>Tue, 15 Feb 2011 19:35:30 +0000</pubDate>
         <category>Salesforce</category>
      </item>
      <item>
         <title>The Dynamics CRM 2011 Administration Bible is Almost Here!</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/146/The-Dynamics-CRM-2011-Administration-Bible-is-Almost-Here.aspx</link>
         <description>&lt;p&gt; &lt;/p&gt;
&lt;table width="100%" cellspacing="0" cellpadding="2" border="0"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td width="130" valign="top"&gt;&lt;/td&gt; 
            &lt;td valign="top"&gt;
            &lt;p&gt;The &lt;u&gt;Microsoft Dynamics CRM 2011 Administration Bible&lt;/u&gt; is only a few weeks away (March 1, 2011) from being available!  After lots of hard work and long hours, we’re going to celebrate by giving away five copies of the book for free!&lt;/p&gt;
            &lt;p&gt;To be entered to &lt;font color="#ff0000"&gt;win a free copy&lt;/font&gt;, just sign up to follow C5 Insight on one of the various social channels that we offer (you must have a United States mailing address to be qualified).  You can &lt;a rel="nofollow" target="_blank" href="http://www.c5insight.com/follow"&gt;click here&lt;/a&gt; to select a social channel to follow.  We’re planning to select 5 winners on March 21, 2011 (or once we have 200 new followers across our social channels – whichever comes first).&lt;/p&gt;
            &lt;p&gt;Or, if you’re in a hurry, then use the link to the left to order your copy today (our kid’s college funds thank you)!&lt;/p&gt;
            &lt;p&gt;For those of you who are interested in SharePoint 2010, the book includes a chapter on the “out of the box” SharePoint integration and a special appendix on customized SharePoint 2010 / CRM 2011 integration written by Curtis Hughes.&lt;/p&gt;
            &lt;p&gt;What’s next?  We’ve created a site for the book (&lt;a rel="nofollow" target="_blank" href="http://www.dynamicscrmbible.com"&gt;www.dynamicscrmbible.com&lt;/a&gt;) and we need to get the finishing touches on it ... Gotta get going!&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt; &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/146/The-Dynamics-CRM-2011-Administration-Bible-is-Almost-Here.aspx</guid>
         <pubDate>Tue, 15 Feb 2011 19:30:00 +0000</pubDate>
      </item>
      <item>
         <title>Get Social: More Options for Following Us</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/151/Get-Social-More-Options-to-Learn-About-Dynamics-CRM-Microsoft-SharePoint-and-Salesforce-com.aspx</link>
         <description>&lt;h2&gt;&lt;strong&gt;Some Background&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;At the beginning of 2010, our two companies (StreamLogic and Customer Connect) merged to become C5 Insight. One company focused on Microsoft SharePoint and cloud application development.  The other company focused on CRM (Dynamics CRM and Salesforce.com) and sales and marketing strategy. &lt;/p&gt;
&lt;p&gt;When we merged our blogs, we started to receive feedback that we were providing an overwhelming amount of information.  Our blogs included high level strategic and best practice information, as well as detailed technical tips for developers and administrators.  They also included information on all of the different solutions that we support.  So most of those who were following us found that they were getting some information that wasn’t useful for them.  In addition, options for following us were limited to email or RSS feeds. &lt;/p&gt;
&lt;p&gt;Something had to change!&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;The Social Channels&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/WindowsLiveWriter/GetSocialMoreOptionsforFollowingUs_8958/image_4.png"&gt;&lt;img height="54" width="244" border="0" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/WindowsLiveWriter/GetSocialMoreOptionsforFollowingUs_8958/image_thumb_1.png" alt="image" title="image" style="border-width:0px;display:inline;"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So we decided to take a page out of our own Social CRM playbook (it was a typical case of, “the cobbler’s children are the ones with no shoes.”)  At a later date, we’ll share details about Social CRM and our specific strategy as a separate blog.  For now, suffice it to say that:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;We took feeds from our: Blog Site, On Demand Video Site and Live Event Site.&lt;/li&gt;
    &lt;li&gt;We then parsed them out by role and solution type.&lt;/li&gt;
    &lt;li&gt;And we made them available across the most popular social channels.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Voila – a lot of blood, sweat and tears for us delivered a much more relevant way to consume the information that you want.  And it’s all free to you (we guarantee that you’ll get your money’s worth).&lt;/p&gt;
&lt;p&gt;If you want to learn a bit more about Social CRM, check out &lt;a rel="nofollow" target="_blank" href="http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/52/Social-Media-And-Dynamics-CRM.aspx"&gt;this video&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Current C5 Followers&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;If you’re currently following one of the older C5 Insight feeds, we encourage you to look at the new options.  You will find that you can filter what you’re receiving to just the information that is most relevant to you.  Plus, some of our old channels will soon be discontinued – so take the time to sign up for one of the new ones.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://www.c5insight.com/follow"&gt;www.c5insight.com/follow&lt;/a&gt; &lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;The Free Giveaway&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://www.amazon.com/Microsoft-Dynamics-2011-Administration-Bible/dp/0470568143/ref=sr_1_3?ie=UTF8&amp;qid=1297390346&amp;sr=8-3"&gt;&lt;img height="240" width="240" border="0" align="right" src="http://blogs.c5insight.com/Portals/0/SunBlogNuke/1/WindowsLiveWriter/GetSocialMoreOptionsforFollowingUs_8958/Dynamics_CRM_2011_Administrator_Book_Training_3.jpg" alt="Dynamics_CRM_2011_Administrator_Book_Training" title="Dynamics_CRM_2011_Administrator_Book_Training" style="border-width:0px;display:inline;margin-left:0px;margin-right:0px;"/&gt;&lt;/a&gt; Another exciting bit of news at C5 Insight – we have just completed authoring a book, “Microsoft Dynamics CRM 2011 Administration Bible.”  There’s even a special appendix on advanced SharePoint integration.  To celebrate the book and our new social channels, we’re giving away 5 free copies of the book. &lt;/p&gt;
&lt;p&gt;Where do you sign up?  I’m glad you asked.  We’re going to give away the 5 free copies by randomly drawing from a list of all of our followers once we reach 200 new followers across all of our social channels (or on March 21, 2011 – whichever comes first).  So be sure to sign up to follow us by March 21!&lt;/p&gt;
&lt;p&gt;Or, if you’re in a hurry to get the book, go ahead and click the image to order it from Amazon.com.  If we draw your name as a winner, you can get a signed copy to treasure for generations to come!&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;So, be sure to sign up for the social channel of your choice today!&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_blank" href="http://www.c5insight.com/follow"&gt;www.c5insight.com/follow&lt;/a&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/151/Get-Social-More-Options-to-Learn-About-Dynamics-CRM-Microsoft-SharePoint-and-Salesforce-com.aspx</guid>
         <pubDate>Fri, 11 Feb 2011 08:40:00 +0000</pubDate>
      </item>
      <item>
         <title>A few pointers about Salesforce for Outlook</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/150/A-few-pointers-about-Salesforce-for-Outlook.aspx</link>
         <description>We've recently had a few questions from power administrators about how to enable Salesforce for Outlook for their organizations. There are two basic steps:
- First, the administrator needs to create at least one Outlook Configuration by going to Setup &amp;gt; Administration Setup &amp;gt; Desktop Administration &amp;gt; Outlook Configurations. Additional configurations can also be setup, if groups of users within the organization should have different settings. 
- Users can then download Salesforce for Outlook by going to Setup &amp;gt; Personal Setup &amp;gt; Desktop Integration &amp;gt; Salesforce for Outlook.
Salesforce for Outlook is significantly different than the previous product (Connect for Outlook), so there are a few important things to keep in mind:

    
        
            
            
                For full instructions on using Salesforce for Outlook, go to the Help &amp; Training section in Salesforce. HOWEVER: if you simply enter Salesforce for Outlook as your search terms, you'll get a confusing ...</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/150/A-few-pointers-about-Salesforce-for-Outlook.aspx</guid>
         <pubDate>Thu, 10 Feb 2011 21:36:00 +0000</pubDate>
      </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>How to Format in PowerShell Webcast Available</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/149/How-to-Format-in-PowerShell-Webcast-Available.aspx</link>
         <description>&lt;p&gt;For everyone starting to learn PowerShell, it’s hard to know where to start.  Thomas Lee (author of his blog &lt;a rel="nofollow" target="_blank" href="http://tfl09.blogspot.com/"&gt;Under the Stairs&lt;/a&gt; and a PowerShell MVP) worked with the great folks at &lt;a rel="nofollow" target="_blank" href="http://powershell.com"&gt;PowerShell.com&lt;/a&gt;  and Idera to put on a very useful and pertinent webcast on how to  format PowerShell output.  It’s one in a series called PowerShell Power  Hour.  Think about it, every command in PowerShell you run outputs  data.  Wouldn’t you like to know how to get it to display like what you  want? &lt;/p&gt;
&lt;p&gt;What’s the different in Format-List and Format-Table?   What’s a hash table?  Can we format currency?  He shows you!  This is  not for someone who’s never used PowerShell before, but for those who  are learning commands, getting some output, and need some tuning.  You  can access the webcast at &lt;a rel="nofollow" target="_blank" href="http://powershell.com/cs/media/p/8773.aspx"&gt;PowerShell.com’s site&lt;/a&gt; after registering for free.  It’s also available at &lt;a rel="nofollow" target="_blank" href="http://www.idera.com/Events/PowerShell-Webcasts/"&gt;Idera’s site&lt;/a&gt; as well.&lt;/p&gt;
&lt;p&gt;If  you need more of a getting started tutorial, check out the first  webcast in the series “Getting Started with Windows PowerShell” by  Tobias Welner (PowerShell MVP) &lt;a rel="nofollow" target="_blank" href="http://www.idera.com/Events/PowerShell-Webcasts/"&gt;here&lt;/a&gt;.  If you’re looking for more focused PowerShell information for SharePoint 2010, Joel Oleson wrote a &lt;a rel="nofollow" target="_blank" href="http://www.sharepointjoel.com/Lists/Posts/Post.aspx?List=0cd1a63d%2D183c%2D4fc2%2D8320%2Dba5369008acb&amp;ID=362"&gt;great post&lt;/a&gt; on this topic.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/149/How-to-Format-in-PowerShell-Webcast-Available.aspx</guid>
         <pubDate>Tue, 08 Feb 2011 20:07:00 +0000</pubDate>
      </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>Changes Not Saved to SharePoint 2010 "Activities I am Following" Edit Profile Page</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/142/Changes-Not-Saved-to-SharePoint-2010-Activities-I-am-Following-Edit-Profile-Page.aspx</link>
         <description>&lt;p&gt;Recently, one of my colleagues came to me with an issue he was having with SharePoint.  After making sure it wasn't friendly "user error", I determined this to actually be a bug in SharePoint 2010 RTM.  Here's the issue:&lt;/p&gt;
&lt;p&gt;On your SharePoint 2010 RTM farm, go to your My Site Profile page, and edit it.  You are able to change the "Activities I am following" once, and save.  But when you do it again, save and double-check, the change was not saved.  What gives?! &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/142/Changes-Not-Saved-to-SharePoint-2010-Activities-I-am-Following-Edit-Profile-Page.aspx</guid>
         <pubDate>Tue, 25 Jan 2011 19:58:00 +0000</pubDate>
      </item>
      <item>
         <title>“The list cannot be displayed in datasheet view” Error on SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/89/-The-list-cannot-be-displayed-in-datasheet-view-Error-on-SharePoint-2010.aspx</link>
         <description>&lt;p&gt;I recently came across this and wanted to be sure everyone is aware of this  limitation.  With the new release of Office 2010 including 64-bit support, there  has been some confusion about which version to install.  Microsoft has been  clear in their &lt;a rel="nofollow" target="_blank" href="http://technet.microsoft.com/en-us/library/ee681792.aspx"&gt;recommendation&lt;/a&gt;:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Install the 32-bit version for most needs to maintain ActiveX control  compatibility and other tools&lt;/li&gt;
    &lt;li&gt;Install the 64-bit version if you use Excel spreadsheets 2 GB in size &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For whatever reason, say you installed Office 2010 64-bit on your machine,  and you happily go to your shiny SharePoint 2010 site (or WSS/MOSS), open up a  list, and hit Datasheet View.  To your surprise, you see this:&lt;/p&gt;
&lt;p&gt;&lt;img height="197" width="377" alt="The list cannot be displayed in Datasheet view" src="http://blogs.c5insight.com/Portals/0/BlogImages/Doug/sp2010_datasheet_error.png"/&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/89/-The-list-cannot-be-displayed-in-datasheet-view-Error-on-SharePoint-2010.aspx</guid>
         <pubDate>Mon, 22 Nov 2010 21:14:00 +0000</pubDate>
      </item>
      <item>
         <title>Final Word on the Fab 40 Templates for SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/94/Final-Word-on-the-Fab-40-Templates-for-SharePoint-2010.aspx</link>
         <description>&lt;p&gt;So we’ve all been waiting, and waiting, and waiting to hear from  Microsoft  about the fate of the “fab 40” templates for SharePoint  2010.  Well, they  finally have made a decision.  You’re not going to  like it.  Read the full &lt;a rel="nofollow" target="_blank" href="http://blogs.technet.com/b/tothesharepoint/archive/2010/08/18/sharepoint-2010-products-upgrade-and-the-fabulous-40-application-templates.aspx"&gt;details&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;The bottom line from the article:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Microsoft is not releasing new versions of these templates for  SharePoint 2010 Products.&lt;/strong&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/94/Final-Word-on-the-Fab-40-Templates-for-SharePoint-2010.aspx</guid>
         <pubDate>Fri, 24 Sep 2010 03:15:00 +0000</pubDate>
      </item>
      <item>
         <title>Quick Tip for Uploading Multiple Files to SharePoint 2010 Picture Library</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/137/Quick-Tip-for-Uploading-Multiple-Files-to-SharePoint-2010-Picture-Library.aspx</link>
         <description>&lt;p&gt;SharePoint 2010 is great at many things, and one of the new integrations with  Office 2010 is with uploading multiple pictures to a picture library using the  Office Picture Manager. &lt;/p&gt;
&lt;p&gt;Say you you’ve got a bunch of logos you want to get into your new fancy 2010  picture library.  You would click &lt;strong&gt;Upload&lt;/strong&gt; –&amp;gt; &lt;strong&gt;Upload  Multiple Pictures&lt;/strong&gt; right?&lt;/p&gt;
&lt;p&gt;&lt;img height="121" width="256" alt="SharePoint 2010 Upload Multiple Files" src="http://blogs.c5insight.com/Portals/0/BlogImages/Doug/SP2010_upload_multiple.png"/&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/137/Quick-Tip-for-Uploading-Multiple-Files-to-SharePoint-2010-Picture-Library.aspx</guid>
         <pubDate>Fri, 17 Sep 2010 19:34:00 +0000</pubDate>
      </item>
      <item>
         <title>Opening PDFs in SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/136/Opening-PDFs-in-SharePoint-2010.aspx</link>
         <description>In SharePoint 2010, you may  have noticed a bit of interesting behavior when trying to open a PDF file; we  certainly did.  In fact, I’m surprised more people have not come across this in  their 2010 environments, or perhaps the users simply thought this was the  appropriate behavior and didn’t want to inform IT.
The issue is this: when you click on a PDF document to open it in your  browser (or Adobe Reader) directly from SharePoint – it does not allow you to do  this.  As you will notice in the screenshot below, there is no “Open” button as  there should be.

As you can imagine, this defeats the purpose of SharePoint if you are  required to save the file before opening it, and we simply had to discover  why this was occurring.
We're in SharePoint daily, and we continually discover new settings,  especially in Central Administration.  What we discovered is an additional  security setting on the Web Application level, which instructs SharePoint to  send information to the Web browser in an  ...</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/136/Opening-PDFs-in-SharePoint-2010.aspx</guid>
         <pubDate>Sat, 28 Aug 2010 03:42:00 +0000</pubDate>
      </item>
      <item>
         <title>SharePoint Dialog "Lightbox" Usage and Tricks</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/135/SharePoint-Dialog-Lightbox-Usage-and-Tricks.aspx</link>
         <description>&lt;p&gt;If you have spent any amount of time with &lt;a rel="nofollow" target="_blank" href="http://sharepoint2010.microsoft.com/"&gt;SharePoint 2010&lt;/a&gt;, you have seen  the “&lt;a rel="nofollow" target="_blank" href="http://en.wikipedia.org/wiki/Lightbox_(JavaScript)"&gt;lightbox&lt;/a&gt;”  feature which allows the SharePoint user to remain  on the same page,  providing a pop-up dialog box, while dimming the background –  very Web  2.0!&lt;/p&gt;
&lt;p&gt;&lt;img height="156" width="350" alt="SharePoint 2010 Lightbox" src="http://blogs.c5insight.com/Portals/0/BlogImages/Doug/Sp2010-lightbox.png"/&gt;&lt;/p&gt;
&lt;p&gt;This “lightbox” dialog can be enabled/disabled within any list in the  Advanced Settings.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/135/SharePoint-Dialog-Lightbox-Usage-and-Tricks.aspx</guid>
         <pubDate>Fri, 20 Aug 2010 02:13:00 +0000</pubDate>
      </item>
      <item>
         <title>How to Re-Create Default Security Groups in Multi-Tenant SharePoint 2010 Environment</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/134/How-to-Re-Create-Default-Security-Groups-in-Multi-Tenant-SharePoint-2010-Environment.aspx</link>
         <description>&lt;p&gt;If you’ve been dabbling in SharePoint 2010's new hosting (multi-tenant) environment  and been creating host-named site collections, you have may noticed that the  default SharePoint security groups typically created by default are not there in the root web.  These  include:&lt;/p&gt;
&lt;p&gt; Members&lt;/p&gt; 
&lt;p&gt; Owners&lt;/p&gt; 
&lt;p&gt; Visitors&lt;/p&gt; 
&lt;p&gt;These are created by the SharePoint API, and apparently isn’t called properly  when host-named site collections are created through PowerShell in a  multi-tenant environment.  This ONLY happens in a multi-tenant environment.   Even if you create the host-named site collections through PowerShell in a  non-hosted environment, the first time you visit the site, you might be prompted  to choose the site template and to create the default security groups.&lt;/p&gt;
&lt;p&gt;So how do we get them back without creating them manually?  Read on...&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/134/How-to-Re-Create-Default-Security-Groups-in-Multi-Tenant-SharePoint-2010-Environment.aspx</guid>
         <pubDate>Tue, 17 Aug 2010 18:17:00 +0000</pubDate>
      </item>
      <item>
         <title>Change Tag Spelling and Capitalization in SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/133/Change-Tag-Spelling-and-Capitalization-in-SharePoint-2010.aspx</link>
         <description>&lt;p&gt;The ability to tag EVERYTHING in SharePoint 2010 is one of my favorite  features. &lt;/p&gt;
&lt;p&gt;But, if you’re like me, you sometimes create a personal or enterprise tag  hastily. And you know what they say about haste … you end up with typographical  errors or inconsistent capitalization.&lt;/p&gt;
&lt;p&gt;And, if you’re like me, it REALLY bugs you to see all of those  inconsistencies in your terms.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/133/Change-Tag-Spelling-and-Capitalization-in-SharePoint-2010.aspx</guid>
         <pubDate>Sat, 14 Aug 2010 02:55:00 +0000</pubDate>
      </item>
      <item>
         <title>Enabling Adobe PDF in SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/132/Enabling-Adobe-PDF-in-SharePoint-2010.aspx</link>
         <description>&lt;div class="entry"&gt;
&lt;div class="ExternalClassA217FC17FB974238A03048C61B52BD4D"&gt;
&lt;p&gt;&lt;img height="50" align="left" width="50" alt="Adobe PDF Icon 50x50" src="http://blogs.c5insight.com/Portals/0/BlogImages/Doug/acrobat_reader_50x50.gif"/&gt;This morning I had the task of getting PDF indexing to work in search on our  new SharePoint 2010 installations.  There are various existing blogs out there,  so I thought I would combine what I used into one place.&lt;/p&gt;
&lt;p&gt;The majority of the steps to get this working are documented &lt;a rel="nofollow" target="_blank" href="http://nickgrattan.wordpress.com/2010/06/14/adobe-pdf-ifilter-indexing-with-sharepoint%C2%A02010/"&gt;here&lt;/a&gt; at Nick Gratten’s SharePoint blog.&lt;/p&gt;
&lt;p&gt;You will also need the adobe PDF small icon.  The best place is to get  directly from adobe &lt;a rel="nofollow" target="_blank" href="http://www.adobe.com/misc/linking.html"&gt;here&lt;/a&gt;.  Download the 17x17 small icon.&lt;/p&gt;
&lt;p&gt;If you are copying the files from another UNC file server (say from your 2007  server) onto Server 2008 (or R2), Explorer might block the files to protect you  from yourself.  Right click the file, click properties, and make sure you don’t  have the option to unblock.  If you do, click Unblock. &lt;/p&gt;
&lt;p&gt;There have been discussions around if this works on SharePoint 2010  Foundation.  While &lt;a rel="nofollow" target="_blank" href="http://www.codeproject.com/KB/sharepoint/PDFiFIlterSharePoint2010.aspx"&gt;officially&lt;/a&gt; I’ve seen where it’s said it is not supported,  there are apparently workarounds. &lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/132/Enabling-Adobe-PDF-in-SharePoint-2010.aspx</guid>
         <pubDate>Tue, 03 Aug 2010 20:06:00 +0000</pubDate>
      </item>
      <item>
         <title>SharePoint 2010 Granular Restores</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/130/SharePoint-2010-Granular-Restores.aspx</link>
         <description>&lt;p&gt;I wanted to take a minute and talk about a really cool new feature of  SharePoint 2010 relating to backups – Granular Restores.  While doing some test  migrations from MOSS 2007 to SharePoint 2010, we needed to choose the best  method to selectively move data from an old site to a new site. &lt;/p&gt;
&lt;p&gt;In SharePoint 2010, you have the ability to restore content (down to the list  level) from an unattached SQL database.  How cool is that!  Here’s the new  Backup and Restore options in Central Admin:&lt;/p&gt;
&lt;p&gt;&lt;img style="width:395px;height:166px;" alt="SharePoint 2010 Granular Restores" src="http://blogs.c5insight.com/Portals/0/BlogImages/Doug/SP2010-granular-restores.png"/&gt;&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/130/SharePoint-2010-Granular-Restores.aspx</guid>
         <pubDate>Fri, 16 Jul 2010 20:24:00 +0000</pubDate>
      </item>
      <item>
         <title>SharePoint in Plain English</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/19/SharePoint-In-Plain-English.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/19/SharePoint-In-Plain-English.aspx'&gt;&lt;img src='http://img.youtube.com/vi/s12Jb5Z2xaE/default.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;A very brief and informative video on the fundamentals of document management and collaboration in SharePoint.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">19</guid>
         <pubDate>Fri, 09 Jul 2010 14:00:16 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>Best Practice: Should SharePoint Replace Your File Servers?</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/129/Best-Practice-Should-SharePoint-Replace-Your-File-Servers.aspx</link>
         <description>&lt;p&gt;One of SharePoint’s  popular features is Document Man&lt;span style="font-family:Arial;"&gt;agement, which leads many organizations to  migrate their data from files shares or their Document Management System over to  SharePoint.  Is thi&lt;/span&gt;s best practice?  Let’s not be hasty, and look at the various  things to consider on both sides of the coin.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/129/Best-Practice-Should-SharePoint-Replace-Your-File-Servers.aspx</guid>
         <pubDate>Thu, 24 Jun 2010 23:51:00 +0000</pubDate>
      </item>
      <item>
         <title>SharePoint 2010 World Premiere</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/20/SharePoint-2010-World-Premiere.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/20/SharePoint-2010-World-Premiere.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634142994597250906.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;SharePoint 2010 is a leap forward for document management, collaboration, intranet portals, business intelligence and much more. View this video to learn the fundamentals of SharePoint and some of the new functionality available in SharePoint 2010.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">20</guid>
         <pubDate>Mon, 21 Jun 2010 00:00:00 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>Closing vs. Deleting a Web Part from a SharePoint Page</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/127/Closing-vs-Deleting-a-Web-Part-from-a-SharePoint-Page.aspx</link>
         <description>&lt;p&gt;I was reminded today about the difference of removing vs. deleting a web part  from a site page today.  There’s already a great blog on the subject and it can  be found &lt;a rel="nofollow" target="_blank" href="http://www.endusersharepoint.com/2008/05/22/endusersharepointcom-closing-web-parts-vs-really-closing-web-parts/"&gt;here&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;The quick and dirty is that when you either choose to “close” on a web part  or click the “X” in edit view, this does NOT remove it from the page, it only  hides it.  There is a Closed Web Parts gallery where this closed web part gets  placed, and if there are enough closed web parts, it can significantly decrease  your pages load time, as it still loads the closed web parts. &lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/127/Closing-vs-Deleting-a-Web-Part-from-a-SharePoint-Page.aspx</guid>
         <pubDate>Tue, 15 Jun 2010 19:18:00 +0000</pubDate>
      </item>
      <item>
         <title>SharePoint 2010 Communities: Allow Users to Connect, Innovate and Share</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/45/SharePoint-2010-Communities-Allow-Users-To-Connect-Innovate-And-Share.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/45/SharePoint-2010-Communities-Allow-Users-To-Connect-Innovate-And-Share.aspx'&gt;&lt;img src='http://sharepoint.microsoft.com/en-us/PublishingImages/Video-Thumbnails/VLE_thumb.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Social computing promotes sharing and openness within communities. Learn from customers how their enhanced people-centric collaboration solutions empowered their users and improved performance within the organization.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">45</guid>
         <pubDate>Mon, 14 Jun 2010 01:50:00 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>SharePoint 2010: What is in each version?</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/126/SharePoint-2010-What-is-in-each-version.aspx</link>
         <description>&lt;p&gt;Like SharePoint 2007, SharePoint 2010 comes in three different versions.   However, the version names have changed and what is available in each version is  different.  So if you’re moving from the SharePoint 2007 world to the SharePoint  2010 world, it can be a bit confusing (it has been for me).  The versions  are:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;SharePoint Foundation 2010:&lt;/strong&gt; This is the version freely  included with Windows Server and is comparable to Microsoft Windows SharePoint  Server (WSS) 2007.  It includes many of the basics and may be all that a small  business needs to get started with SharePoint.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;SharePoint Server 2010 – Standard:&lt;/strong&gt; This is the next level  of SharePoint and includes important features such as Enterprise Search and My  Sites (including the social media components) that most businesses will find  important.  This is comparable to Microsoft Office SharePoint Server (MOSS)  2007.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;SharePoint Server 2010 – Enterprise:&lt;/strong&gt; This adds more  functionality to Standard including better business data connectivity (for  connecting to CRM and accounting applications, for example), Excel Services (for  showing Excel info in SharePoint – very nice functionality for allowing users to  create their own enterprise dashboards), and a number of other advanced workflow  management, Office integration and analytics tools.&lt;/li&gt;
&lt;/ul&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/126/SharePoint-2010-What-is-in-each-version.aspx</guid>
         <pubDate>Fri, 11 Jun 2010 03:11:00 +0000</pubDate>
      </item>
      <item>
         <title>“The given key was not in the dictionary” Error When Creating Managed Account in SharePoint 2010</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/125/-The-given-key-was-not-in-the-dictionary-Error-When-Creating-Managed-Account-in-SharePoint-2010.aspx</link>
         <description>&lt;p class="ExternalClass8CDF5425F40948798167191459C9D832"&gt;When I was configuring a  new installation of SharePoint Server 2010 the other day, I hit a snag when  creating a Managed Service Account while creating a new Web Application.  My  existing Application Pool account wasn’t listed and I couldn’t choose the  “Configurable” option to manually type it in.  I attempted to make the existing  application pool AD account a managed account, but got the error:&lt;/p&gt;
&lt;p class="ExternalClass8CDF5425F40948798167191459C9D832"&gt;&lt;font color="#ff0000"&gt;“The  given key was not in the dictionary”&lt;/font&gt;&lt;/p&gt;
&lt;p class="ExternalClass8CDF5425F40948798167191459C9D832"&gt;To correct this error,  you need to go into Active Directory and make a security change:&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/125/-The-given-key-was-not-in-the-dictionary-Error-When-Creating-Managed-Account-in-SharePoint-2010.aspx</guid>
         <pubDate>Fri, 11 Jun 2010 02:51:00 +0000</pubDate>
      </item>
      <item>
         <title>An Overview of Salesforce.com Chatter</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/35/An-Overview-Of-Salesforcecom-Chatter.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/35/An-Overview-Of-Salesforcecom-Chatter.aspx'&gt;&lt;img src='http://img.youtube.com/vi/puydh-ey_2k/default.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Social media tools such as facebook have made an impact on the business world. Those same concepts, applied to businesses internally, are about to cause a revolution in business collaboration. This video is an overview of how Salesforce.com's Chatter works.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">35</guid>
         <pubDate>Thu, 03 Jun 2010 00:00:00 +0000</pubDate>
         <category>Salesforce</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>SharePoint 2010 Ribbon Menu Preview</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/43/SharePoint-2010-Ribbon-Menu-Preview.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/43/SharePoint-2010-Ribbon-Menu-Preview.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634154365102245336.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Quickly and easily find and use relevant features with the new contextual SharePoint Ribbon.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">43</guid>
         <pubDate>Sat, 22 May 2010 23:01:51 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>Web Marketing with SharePoint 2010</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/42/Web-Marketing-With-SharePoint-2010.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/42/Web-Marketing-With-SharePoint-2010.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634154359621342914.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Digital Marketers today need to launch an increasing amount of websites quickly and easily. SharePoint 2010 shows marketers how to be competitive and build their business through digital marketing.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">42</guid>
         <pubDate>Sat, 22 May 2010 22:52:43 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>SharePoint Server 2010 for Internet Sites Drives Revenues</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/41/SharePoint-Server-2010-For-Internet-Sites-Drives-Revenues.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/41/SharePoint-Server-2010-For-Internet-Sites-Drives-Revenues.aspx'&gt;&lt;img src='http://c5insight_tube.s3.amazonaws.com/host/634154351418725040.gif' align='left' border='0' hspace='5'&gt;&lt;/a&gt;See how Seek.com brings job seekers, employers, and advertisers together.</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">41</guid>
         <pubDate>Sat, 22 May 2010 22:39:03 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>What Can SharePoint Do For You?</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/38/What-Can-SharePoint-Do-For-You.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/38/What-Can-SharePoint-Do-For-You.aspx'&gt;&lt;img src='http://sharepoint.microsoft.com/en-us/PublishingImages/Video-Thumbnails/_w/Thumbnail_what_can%20sharepoint_do_for%20_you_jpg.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Improve Productivity, Efficiency, Agility. Catch a glimpse of the exciting work customers are rolling out across their enterprise. See what SharePoint 2010 can do for you</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">38</guid>
         <pubDate>Wed, 12 May 2010 08:00:00 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>SharePoint 2010 Search Demo</title>
         <link>http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/39/SharePoint-2010-Search-Demo.aspx</link>
         <description>&lt;a rel="nofollow" target="_blank" href='http://tube.c5insight.com/Home/WatchVideo/TabId/66/VideoId/39/SharePoint-2010-Search-Demo.aspx'&gt;&lt;img src='http://sharepoint.microsoft.com/en-us/PublishingImages/Video-Thumbnails/search-SharePoint_demo_thumb.jpg' align='left' border='0' hspace='5'&gt;&lt;/a&gt;Take a tour of the search capabilities in SharePoint Server 2010</description>
         <author>SuperUser Account</author>
         <guid isPermaLink="false">39</guid>
         <pubDate>Sun, 09 May 2010 08:16:00 +0000</pubDate>
         <category>SharePoint</category>
      </item>
      <item>
         <title>Upcoming Cloud Computing Event</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/122/Upcoming-Cloud-Computing-Event.aspx</link>
         <description>&lt;p&gt;I wanted to let all of our readers know about a cloud computing event  that  will be held in 4 cities along the East coast.  I admit, it is my  company that  is hosting the “4-City Tour” but this really is a going  to be a good way to see  many cloud platforms at work.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Highlights:&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin-left:40px;"&gt;&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    Parallel  sessions on Microsoft CRM, Salesforce.com, &lt;a rel="nofollow" target="_blank" href="http://sharepoint.microsoft.com/"&gt;SharePoint&lt;/a&gt;, and Unified  Communications &lt;br /&gt;
&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;     Integration luncheon showing a live demo of integration between CRM, SharePoint,  and UC &lt;br /&gt;
&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    Exclusive  research on the top cloud challenges from CFOs and CIOs &lt;br /&gt;
&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    Exclusive  demos of SharePoint 2010 &lt;br /&gt;
&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    Exclusive  session showing Microsoft CRM and Salesforce.com in a live side-by-side  comparison&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cities:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    May 4 –  Charlotte, NC &lt;br /&gt;
&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    May 6 –  Washington, DC &lt;br /&gt;
&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    May 11 –  Raleigh, NC &lt;br /&gt;
&lt;img align="middle" alt="" src="http://www.streamlogicinc.com/images/SL_Web_Icon_O_Small.gif"/&gt;    May 13 –  Atlanta, GA&lt;/p&gt;
&lt;/blockquote&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/122/Upcoming-Cloud-Computing-Event.aspx</guid>
         <pubDate>Thu, 25 Mar 2010 00:30:00 +0000</pubDate>
      </item>
      <item>
         <title>Demo Dynamics CRM, SharePoint and Salesforce.com</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/25/Demo-Dynamics-CRM-SharePoint-and-Salesforce-com.aspx</link>
         <description>&lt;p&gt;Looking for a fast way to get a demonstration of Dynamics CRM, Microsoft SharePoint or Salesforce.com?  A new site: &lt;a rel="nofollow" target="_blank" href="http://demos.c5insight.com"&gt;demos.c5insight.com&lt;/a&gt; has been setup for just this purpose.  You'll find a variety of demos on the site for different types of users including:&lt;/p&gt;
&lt;p&gt;* Fundamentals of CRM, Document Management and Business Process Automation&lt;/p&gt;
&lt;p&gt;* Integrating SharePoint and Dynamics CRM&lt;/p&gt;
&lt;p&gt;* Comparing Microsoft CRM and Salesforce.com&lt;/p&gt;
&lt;p&gt;Looking for a demo that's not available?  Post a comment in response to this blog and we'll try to follow-up on requests that we're seeing most frequently.&lt;/p&gt;</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/25/Demo-Dynamics-CRM-SharePoint-and-Salesforce-com.aspx</guid>
         <pubDate>Sat, 30 Jan 2010 09:07:00 +0000</pubDate>
      </item>
      <item>
         <title>Salesforce.com Chatter API</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/119/Salesforce-com-Chatter-API.aspx</link>
         <description>Announced only a couple days ago, Salesforce.com has plans to release Chatter.  Chatter is a new enterprise social engine.  I like to think of it as a combination of IM and RSS feeds into a single platform that's security controlled and handled inside the Salesforce.com Cloud.  So, it's more secure and allows the organization to communicate freely internally without risking exposure of confidential information.
Developers are going to like the new Chatter API.  On the surface it seems to be fairly straightforward with only 5 different objects in the data model (User, FeedPost, NewsFeed/Object, FeedTrackedChanges, &amp; FeedComments).  Chatter will support adding content to the messages sent as well as sending messages from Profile/User, objects and feeds.
The next release Spring '10 is slated to include User Profiles, Post, Comments, &amp; Feeds, Subscriptions, and Chatter only licenses ($50/month/user).  Future releases should include Questions &amp; Answers and ...</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/119/Salesforce-com-Chatter-API.aspx</guid>
         <pubDate>Sat, 21 Nov 2009 01:20:00 +0000</pubDate>
      </item>
      <item>
         <title>Batch APEX</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/118/Batch-APEX.aspx</link>
         <description>&lt;p&gt;&lt;span class="Apple-style-span" style="font-family:Arial, Helvetica, sans-serif;color:rgb(64, 64, 64);line-height:20px;"&gt;
&lt;p&gt;What is Batch APEX?&lt;/p&gt;
&lt;p&gt;Batch APEX is a way to run code in a batch in Salesforce.com.  It can be scheduled or called to run asynchronously.  Batch APEX has three primary asynchronous methods: Start(), Execute(), and Finish() that handle all of the processing in the batch. &lt;/p&gt;
&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family:Arial, Helvetica, sans-serif;color:rgb(64, 64, 64);line-height:20px;"&gt;Batch APEX also provides a way to query the status of a Batch using both Visual Force an in the UI in Setup.  It's a great way to handle mass data updates of up to 50 million records at a time.&lt;/span&gt; </description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/118/Batch-APEX.aspx</guid>
         <pubDate>Sat, 21 Nov 2009 01:19:00 +0000</pubDate>
      </item>
      <item>
         <title>Updates from DreamForce 2009 - The Bulk API</title>
         <link>http://blogs.c5insight.com/Home/tabid/40/entryid/117/Updates-from-DreamForce-2009-The-Bulk-API.aspx</link>
         <description>Have you ever had to move a lot data into Salesforce really fast?
Well, unfortunately, I think a lot of us have been in that situation and the store in the past wasn't all that great.
When I first started working with Salesforce, I wrote an API tool that would replicate the entire Salesforce object structure on SQL Server with picklists.  It was a pretty cool application.  I later extended it to bring down all the data as well, but was really disappointed when I realized how long it takes to pull down several hundred thousand records.  So, I ended up leveraging Cast Iron and the Data Loader to solve some of my integration problems. 
The Data Loader was a real life saver, but it had some severe limitations.  First, it was slow.  One thing I used to do was split my loads into 3 to 5 batches and run each batch in a seperate Data Loader instance at the same time.  While this works, it can get kind of crazy when there are a lot of files to load and spl ...</description>
         <guid isPermaLink="false">http://blogs.c5insight.com/Home/tabid/40/entryid/117/Updates-from-DreamForce-2009-The-Bulk-API.aspx</guid>
         <pubDate>Sat, 21 Nov 2009 01:18:00 +0000</pubDate>
      </item>
   </channel>
</rss><!-- fe2.yql.bf1.yahoo.com compressed/chunked Sat May 26 18:36:42 UTC 2012 -->

