<?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:a10="http://www.w3.org/2005/Atom" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dcterms="http://purl.org/dc/terms/"><title>Paul Galvin's SharePoint space [SharePoint MVP]</title><description /><language>en-us</language><lastBuildDate>Tue, 10 Nov 2009 15:21:14 Z</lastBuildDate><generator>Microsoft Windows Live Spaces 14.3</generator><link>http://paulgalvin.spaces.live.com/</link><pubDate>Fri, 27 Jul 2007 13:02:51 GMT</pubDate><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><live:type>main</live:type><live:typelabel>Main</live:typelabel><live:identity><live:id>2072198660290623658</live:id><live:alias>paulgalvin</live:alias></live:identity><image><title>Paul Galvin's SharePoint space [SharePoint MVP]</title><url>http://shared.live.com/2kdNXu04aWFrBawQSoB76w/LFE/live.controls.images/ic/bluemanxl.png</url><link>http://paulgalvin.spaces.live.com/</link></image><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss/" element="typelabel" label="Type" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /></cf:listinfo><geo:lat>40.99312</geo:lat><geo:long>-74.142869</geo:long><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!5027</guid><category>Public Speaking</category><title>SharePoint Shop Talk for Thursday 11/05/09 @ 12:30PM EDT</title><description>&lt;p&gt;The next edition of SharePoint Shop Talk takes place Thursday, 11/05/09 at 12:30 PM EDT.&lt;/p&gt; &lt;p&gt;Register here: &lt;a href="https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=gr5l4q66rv3f4xwj"&gt;https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=gr5l4q66rv3f4xwj&lt;/a&gt;&lt;/p&gt; &lt;p&gt;SharePoint Shop Talk is an open phone line, open Q&amp;amp;A to talk about all things SharePoint.&lt;/p&gt; &lt;p&gt;If you have questions or topics that you’d like the panel to discuss, send them by email to &lt;a href="mailto:questions@sharepointshoptalk.com"&gt;questions@sharepointshoptalk.com&lt;/a&gt; or twitter them to me (pagalvin).&lt;/p&gt; &lt;p&gt;I’m badly rushed for time this week, so I’ll leave it at that.  I usually like to preview some of the already-emailed questions.  This week, you’ll have to dial in to hear about it :)&lt;/p&gt; &lt;p&gt;We hope to see you on line.&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt; &lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3cIRcpJMvvs:o46pP5g8zZo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3cIRcpJMvvs:o46pP5g8zZo:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3cIRcpJMvvs:o46pP5g8zZo:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3cIRcpJMvvs:o46pP5g8zZo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3cIRcpJMvvs:o46pP5g8zZo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3cIRcpJMvvs:o46pP5g8zZo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3cIRcpJMvvs:o46pP5g8zZo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3cIRcpJMvvs:o46pP5g8zZo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3cIRcpJMvvs:o46pP5g8zZo:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3cIRcpJMvvs:o46pP5g8zZo:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/3cIRcpJMvvs" height="1" width="1"/&gt;</description><pubDate>Thu, 05 Nov 2009 01:09:49 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/3cIRcpJMvvs/cns!1CC1EDB3DAA9B8AA!5027.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!5027.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!5027')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-11-05T01:09:49.4770000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!5027.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!5026</guid><category>Data View Web Part</category><title>Comparing Dates in a Data View Web Part to Build a WSS KPI</title><description>&lt;p&gt;&lt;em&gt;Note: this was first posted at &lt;/em&gt;&lt;a href="http://www.endusersharepoint.com"&gt;&lt;em&gt;www.endusersharepoint.com&lt;/em&gt;&lt;/a&gt;&lt;em&gt; here: &lt;/em&gt;&lt;a title="http://www.endusersharepoint.com/2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/" href="http://www.endusersharepoint.com/2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/"&gt;&lt;em&gt;http://www.endusersharepoint.com/2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt; &lt;p&gt;This is yet another blog post on comparing dates in XSL in a data view web part in SharePoint.&lt;/p&gt; &lt;p&gt;This is my scenario:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;I have a custom list.  &lt;li&gt;The business purpose of the list is to support the idea of a new employee and his/her tasks to be completed within 7 days of starting the job.  &lt;li&gt;They are in a “warning zone” after 4 days if they have not completed these tasks.  &lt;li&gt;I want to create a simple dashboard that shows green when they have either completed the task or if they have more than 4 days to complete it.  &lt;li&gt;I want the dashboard to show yellow if they are in the warning zone.  &lt;li&gt;I want to to show red if they have not completed the task after the due date.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I borrowed from &lt;a href="http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/"&gt;this article&lt;/a&gt; at &lt;a href="http://mdasblog.wordpress.com/about/"&gt;Marc Anderson’s&lt;/a&gt; blog (&lt;a title="http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/" href="http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/"&gt;http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/&lt;/a&gt;) to get the comparison logic and &lt;a href="http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/"&gt;this article&lt;/a&gt; at &lt;a href="http://www.endusersharepoint.com"&gt;www.endusersharepoint.com&lt;/a&gt; for the basic ideas behind the dashboard (&lt;a title="http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/" href="http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/"&gt;http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/&lt;/a&gt;) written by &lt;a href="http://www.sharepointusecases.com/index.php/about/"&gt;Toni Frankola&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;You should read the supporting blogs, but the implementation goes like this:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Create a content type (columns + CT)  &lt;li&gt;Create a custom list and associate it with the content type.  &lt;li&gt;Create a web part page.  &lt;li&gt;Add the custom list to the web part page.  &lt;li&gt;Open up the page in SPD.  &lt;li&gt;Convert the list to a DVWP.  &lt;li&gt;Modify the XSL to generate the dashboard bits.&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;I have two dates: a warning date and a due date.  To compare the dates, my xsl does the following:&lt;/p&gt; &lt;table border="1" cellspacing="0" cellpadding="2" width="1300"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="1298"&gt;&lt;pre&gt; &lt;/pre&gt;
&lt;div&gt;&lt;pre&gt;  &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;xsl:choose&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;  &lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;!-- When both handbook and policy are signed, we are green regardless of dates. --&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;xsl:when&lt;/span&gt; &lt;span&gt;test&lt;/span&gt;&lt;span&gt;=&amp;quot;@Employee_x0020_Handbook_x003F_ = 1 and @Security_x0020_Policies = 1&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;      &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;img&lt;/span&gt; &lt;span&gt;src&lt;/span&gt;&lt;span&gt;=&amp;quot;/_layouts/images/KPIDefault-0.GIF&amp;quot;&lt;/span&gt; &lt;span&gt;alt&lt;/span&gt;&lt;span&gt;=&amp;quot;No problems&amp;quot;&lt;/span&gt;&lt;span&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;       &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;a&lt;/span&gt; &lt;span&gt;href&lt;/span&gt;&lt;span&gt;=&amp;quot;/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ID={@ID}&amp;amp;amp;Source=/HumanResources/Shared Documents/New Hire Dashboard.aspx&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt; [Edit]&lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;a&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;xsl:when&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;!-- Show amber indicator if we're past the warning date. --&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;xsl:when&lt;/span&gt; &lt;span&gt;test&lt;/span&gt;&lt;span&gt;=&amp;quot;ddwrt:FormatDateTime(string(ddwrt:Today()), 1033, 'yyyyMMdd') &amp;amp;gt;= ddwrt:FormatDateTime(string(@TaskDueDate), 1033, 'yyyyMMdd')&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;      &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;img&lt;/span&gt; &lt;span&gt;src&lt;/span&gt;&lt;span&gt;=&amp;quot;/_layouts/images/KPIDefault-2.GIF&amp;quot;&lt;/span&gt; &lt;span&gt;alt&lt;/span&gt;&lt;span&gt;=&amp;quot;Overdue&amp;quot;&lt;/span&gt;&lt;span&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;a&lt;/span&gt; &lt;span&gt;style&lt;/span&gt;&lt;span&gt;=&amp;quot;border: 0px&amp;quot;&lt;/span&gt; &lt;span&gt;href&lt;/span&gt;&lt;span&gt;=&amp;quot;/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ID={@ID}&amp;amp;amp;Source=/HumanResources/Shared Documents/New Hire Dashboard.aspx&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt; [Edit]&lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;a&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;xsl:when&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;!-- Show red indicator if we're passed the due date. --&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;xsl:when&lt;/span&gt; &lt;span&gt;test&lt;/span&gt;&lt;span&gt;=&amp;quot;ddwrt:FormatDateTime(string(ddwrt:Today()), 1033, 'yyyyMMdd') &amp;amp;gt;= ddwrt:FormatDateTime(string(@Warning_x0020_Date), 1033, 'yyyyMMdd')&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;      &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;img&lt;/span&gt; &lt;span&gt;src&lt;/span&gt;&lt;span&gt;=&amp;quot;/_layouts/images/KPIDefault-1.GIF&amp;quot;&lt;/span&gt; &lt;span&gt;alt&lt;/span&gt;&lt;span&gt;=&amp;quot;Warning&amp;quot;&lt;/span&gt;&lt;span&gt;/&amp;gt;&lt;/span&gt;        &lt;/pre&gt;&lt;pre&gt;      &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;a&lt;/span&gt; &lt;span&gt;href&lt;/span&gt;&lt;span&gt;=&amp;quot;/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ID={@ID}&amp;amp;amp;Source=/HumanResources/Shared Documents/New Hire Dashboard.aspx&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt; [Edit]&lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;a&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;xsl:when&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;!-- If we get here, we're earlier than the warning date, so we're green. --&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;xsl:otherwise&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;      &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;img&lt;/span&gt; &lt;span&gt;src&lt;/span&gt;&lt;span&gt;=&amp;quot;/_layouts/images/KPIDefault-0.GIF&amp;quot;&lt;/span&gt; &lt;span&gt;alt&lt;/span&gt;&lt;span&gt;=&amp;quot;No problems&amp;quot;&lt;/span&gt;&lt;span&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;       &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;a&lt;/span&gt; &lt;span&gt;href&lt;/span&gt;&lt;span&gt;=&amp;quot;/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ID={@ID}&amp;amp;amp;Source=/HumanResources/Shared Documents/New Hire Dashboard.aspx&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt; [Edit]&lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;a&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;xsl:otherwise&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;  &lt;/pre&gt;&lt;pre&gt;  &lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;xsl:choose&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;A few key points from above:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I tried to compare dates without using the ddwrt functionality and got nowhere.  I still don’t understand that.  They dates displayed correctly, but both “&amp;gt;” and “&amp;lt;” comparisons always failed.  In the end, ddwrt came to my rescue (thanks, again, Marc). 
&lt;li&gt;I’m also displaying an [Edit] link to the item.  I mainly did this so that I could easily test this out.  The link itself may be useful to someone trying to figure it out. 
&lt;li&gt;This is implemented in SharePoint online and works nicely. 
&lt;li&gt;The images I reference in the _layouts directory (/_layouts/images/KPI…) are available out of the box in my environment so they are probably available for you as well.&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Here’s a screen shot of what it looks like for me:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://uptyvw.blu.livefilestore.com/y1mBd9x_p_6UO2UcYwYMNvG6DWX9EAcEoW9AO0CVzH2dPA2UcXbG223gDtpQj5ZOrvgECoB4di-KhOy2m3dhmz0EWEzwutdKATklWa8hJWcnTDA-4XwuZrVeVugZiEGZSHAk8el4bejebLXZzmWP8n7pQ/image3 27B54E32.png" rel="WLPP"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="https://uptyvw.blu.livefilestore.com/y1mJwkHGOyVhKjWNRijP4e9aeBufvIuA681wuHQBUIbteXSid19_bb_dJEQs2qMDu6Kjlvi1xwEQ0wHVyQyVfk1PoFugBh5DYu169ivmXhNDhY5DA2FhflWs40by61VdZKuEzup3Ufk-ZVsSulU4uum6Q/image_thumb1 0C7C338A.png" width="669" height="336" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt;
&lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/XSL" rel="tag"&gt;XSL&lt;/a&gt;,&lt;a href="http://technorati.com/tags/XSLT" rel="tag"&gt;XSLT&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Dates" rel="tag"&gt;Dates&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DVWP" rel="tag"&gt;DVWP&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SharePoint" rel="tag"&gt;SharePoint&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Data+View+Web+Part" rel="tag"&gt;Data View Web Part&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=H_vJNYaECN0:G-0LHaS3xzs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=H_vJNYaECN0:G-0LHaS3xzs:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=H_vJNYaECN0:G-0LHaS3xzs:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=H_vJNYaECN0:G-0LHaS3xzs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=H_vJNYaECN0:G-0LHaS3xzs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=H_vJNYaECN0:G-0LHaS3xzs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=H_vJNYaECN0:G-0LHaS3xzs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=H_vJNYaECN0:G-0LHaS3xzs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=H_vJNYaECN0:G-0LHaS3xzs:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=H_vJNYaECN0:G-0LHaS3xzs:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/H_vJNYaECN0" height="1" width="1"/&gt;</description><pubDate>Tue, 03 Nov 2009 13:13:31 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/H_vJNYaECN0/cns!1CC1EDB3DAA9B8AA!5026.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!5026.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!5026')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-11-03T13:13:31.8930000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!5026.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!5010</guid><category>jQuery and SharePoint</category><title>In Praise of jQuery Enhanced Search-As-You-Type (by Jan Tielens)</title><description>&lt;p&gt;I’m working on a BPOS demo (soon to be available up on Microsoft’s site) and I wanted to add a little pizzazz.  I’ve known about &lt;a href="http://weblogs.asp.net/jan/about.aspx"&gt;Jan Tielen’s&lt;/a&gt; efforts for quite a while and I thought it would be a great technique to add to the demo, so I did.  You can read about it here: &lt;a title="http://weblogs.asp.net/jan/archive/2009/07/02/sharepoint-search-as-you-type-with-jquery.aspx" href="http://weblogs.asp.net/jan/archive/2009/07/02/sharepoint-search-as-you-type-with-jquery.aspx"&gt;http://weblogs.asp.net/jan/archive/2009/07/02/sharepoint-search-as-you-type-with-jquery.aspx&lt;/a&gt;.  It’s so simple to use it should probably be a crime (and maybe is somewhere).&lt;/p&gt; &lt;p&gt;I add just two points to what he already created / wrote about:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;This does, in fact, work in a BPOS (SharePoint online) environment.  &lt;li&gt;To make it work without an annoying popup message prefix the reference to the jquery library with https instead of http, as in:&lt;/li&gt;&lt;/ol&gt; &lt;table border="1" cellspacing="0" cellpadding="2" width="800"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="798"&gt;&lt;pre&gt;&amp;lt;script type=&lt;span&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; src=&lt;span&gt;&amp;quot;https://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;

&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Jan points out that you should probably move the library itself to your site.  Feeling a little lazy today, I decided to blog about it instead :)&lt;/p&gt;
&lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt;
&lt;p&gt;This is another post in my &lt;a href="http://paulgalvin.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3djQuery%2520and%2520SharePoint"&gt;on-going series&lt;/a&gt; on how to use &lt;a href="http://docs.jquery.com/Downloading_jQuery"&gt;jQuery&lt;/a&gt; with SharePoint.&lt;br /&gt;If you want to learn more about jQuery, I highly recommend: &lt;a href="http://www.amazon.com/gp/redirect.html?ie=UTF8&amp;amp;location=http://www.amazon.com/jQuery-Action-Bear-Bibeault/dp/1933988355%3Fie%3DUTF8%26s%3Dbooks%26qid%3D1245011048%26sr%3D8-1&amp;amp;tag=httppaulgalvi-20&amp;amp;linkCode=ur2&amp;amp;camp=1789&amp;amp;creative=9325"&gt;&lt;em&gt;jQuery in Action&lt;/em&gt;&lt;/a&gt;&lt;img style="border-bottom-style:none !important;border-right-style:none !important;margin:0px;border-top-style:none !important;border-left-style:none !important" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=httppaulgalvi-20&amp;amp;l=ur2&amp;amp;o=1" width="1" height="1" /&gt; by Bear Bibeault and Yehuda Katz.&lt;/p&gt;
&lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
&lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=kY06ozBzd98:afL9lZcma2k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=kY06ozBzd98:afL9lZcma2k:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=kY06ozBzd98:afL9lZcma2k:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=kY06ozBzd98:afL9lZcma2k:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=kY06ozBzd98:afL9lZcma2k:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=kY06ozBzd98:afL9lZcma2k:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=kY06ozBzd98:afL9lZcma2k:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=kY06ozBzd98:afL9lZcma2k:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=kY06ozBzd98:afL9lZcma2k:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=kY06ozBzd98:afL9lZcma2k:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/kY06ozBzd98" height="1" width="1"/&gt;</description><pubDate>Wed, 28 Oct 2009 15:56:28 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/kY06ozBzd98/cns!1CC1EDB3DAA9B8AA!5010.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!5010.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!5010')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-28T15:56:28.0770000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!5010.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4937</guid><category>Public Speaking</category><title>SharePoint Shop Talk Thursday 10/29 at 12:30 PM EDT</title><description>&lt;p&gt;The next SharePoint Shop Talk takes place this Thursday at 12:30PM EDT.&lt;/p&gt; &lt;p&gt;We’ve taken two weeks off (due to SharePoint Conference last week) and as a result, we have a number of questions in queue, not to mention all kinds of cool stuff to talk about regarding SharePoint 2010.  All of the panel members attended SPC, so bring your SP 2010 questions to the call or email them to &lt;a href="mailto:questions@sharepointshoptalk.com"&gt;questions@sharepointshoptalk.com&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Aside from a good part of the call set aside to talk about some SP 2010 goodness, we’ll also discuss:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Why SharePoint shows different navigation options under site settings (this varies based on features and site configuration)  &lt;li&gt;Modifying versions.aspx – problems, difficulties doing so (I”m not surprised :) ).  &lt;li&gt;Embedding RSS feeds into a site when the source is authenticated.  &lt;li&gt;Using stsadm to manage logging.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Register here: &lt;a href="https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=p663256djrrflfdw"&gt;https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=p663256djrrflfdw&lt;/a&gt;&lt;/p&gt; &lt;p&gt;As usual, send any questions or discussion topics to &lt;a href="mailto:questions@sharepointshoptalk.com"&gt;questions@sharepointshoptalk.com&lt;/a&gt;, email me directly or twitter to @pagalvin.&lt;/p&gt; &lt;p&gt;We hope to see you there!&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8_PuSMXW-D8:b9Km1Wz-Jkc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8_PuSMXW-D8:b9Km1Wz-Jkc:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8_PuSMXW-D8:b9Km1Wz-Jkc:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8_PuSMXW-D8:b9Km1Wz-Jkc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8_PuSMXW-D8:b9Km1Wz-Jkc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8_PuSMXW-D8:b9Km1Wz-Jkc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8_PuSMXW-D8:b9Km1Wz-Jkc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8_PuSMXW-D8:b9Km1Wz-Jkc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8_PuSMXW-D8:b9Km1Wz-Jkc:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8_PuSMXW-D8:b9Km1Wz-Jkc:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/8_PuSMXW-D8" height="1" width="1"/&gt;</description><pubDate>Tue, 27 Oct 2009 14:03:49 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/8_PuSMXW-D8/cns!1CC1EDB3DAA9B8AA!4937.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4937.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4937')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-27T14:03:49.3170000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4937.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4936</guid><category>InfoPath 2007 // Forms Server</category><title>Quick Hit: Reading InfoPath XML Directly From an SPListItem in SharePoint</title><description>&lt;p&gt;I’m been working on a project where I need to extract attachments from an InfoPath form.  There are some good resources for parsing InfoPath forms (which are just XML files, so it’s actually quite easy).  &lt;/p&gt; &lt;p&gt;While I was building up the project, I started by downloading an InfoPath form and saving it to my local hard drive.  My c# code was reading directly from that instance.  However, the InfoPath forms are really living inside a SharePoint forms library.  I did a little half hearted searching to find out how to read it directly from the library and almost gave up, in which case I would have saved the form to a local temp directory and read it from there.  However, there’s no need to go through those hoops as you can read it directly from the library.  This little snippet shows how:&lt;/p&gt; &lt;table border="1" cellspacing="0" cellpadding="2" width="400" bgcolor="white"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="400"&gt;&lt;pre&gt;&lt;span style="color:green"&gt;/// Class definition stuff here, including:&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color:blue"&gt;private &lt;/span&gt;&lt;span style="color:#2b91af"&gt;SPFile &lt;/span&gt;mySharePointFile; /* Part of an SPList */&lt;/pre&gt;&lt;pre&gt;&lt;span style="color:green"&gt;// More code goes here and inside a method of the class we have:&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#2b91af"&gt;XmlTextReader &lt;/span&gt;textReader;&lt;/pre&gt;&lt;pre&gt;textReader = &lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;XmlTextReader&lt;/span&gt;(mySharePointFile.OpenBinaryStream());

textReader.WhitespaceHandling = &lt;span style="color:#2b91af"&gt;WhitespaceHandling&lt;/span&gt;.None;

textReader.Read();

&lt;span style="color:green"&gt;// If the node has value

&lt;/span&gt;&lt;span style="color:blue"&gt;while &lt;/span&gt;(textReader.Read())
{
&lt;/pre&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;  … and so on and so forth …&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;They key bit above is that we can read the InfoPath directly via the OpenBinaryStream() method call on the SPFile as a parameter to the constructor on XmlTextReader.  It works great.&lt;/p&gt;
&lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt;
&lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/InfoPath" rel="tag"&gt;InfoPath&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mdIPeKLSiTc:R97OsiJpz4I:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mdIPeKLSiTc:R97OsiJpz4I:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mdIPeKLSiTc:R97OsiJpz4I:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mdIPeKLSiTc:R97OsiJpz4I:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mdIPeKLSiTc:R97OsiJpz4I:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mdIPeKLSiTc:R97OsiJpz4I:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mdIPeKLSiTc:R97OsiJpz4I:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mdIPeKLSiTc:R97OsiJpz4I:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mdIPeKLSiTc:R97OsiJpz4I:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mdIPeKLSiTc:R97OsiJpz4I:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/mdIPeKLSiTc" height="1" width="1"/&gt;</description><pubDate>Tue, 27 Oct 2009 13:49:03 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/mdIPeKLSiTc/cns!1CC1EDB3DAA9B8AA!4936.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4936.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4936')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-27T13:49:03.5230000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4936.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4935</guid><category>SharePoint Development</category><title>Quick and Easy: Send Email Using Gmail SMTP Server in .NET C#</title><description>&lt;p&gt;This isn’t exactly a new topic, but when I needed to do it, I found a lot of “why won’t this work for me” and not too many direct answers.  I hope someone finds this useful.&lt;/p&gt; &lt;p&gt;The following bit of code will send an email using my own gmail account to do it, including attachments:&lt;/p&gt; &lt;table border="1" cellspacing="0" cellpadding="2" width="400" bgcolor="white"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="400"&gt;&lt;pre&gt;&lt;span style="color:blue"&gt;using &lt;/span&gt;System.Net.Mail;
&lt;span style="color:blue"&gt;using &lt;/span&gt;System.Net;&lt;/pre&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;&lt;pre&gt;&lt;span style="color:#2b91af"&gt;NetworkCredential &lt;/span&gt;loginInfo = &lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;NetworkCredential&lt;/span&gt;(&lt;span style="color:#a31515"&gt;&amp;quot;[My Gmail ID]&amp;quot;&lt;/span&gt;, &lt;span style="color:#a31515"&gt;&amp;quot;[My Gmail Password]&amp;quot;&lt;/span&gt;);
&lt;span style="color:#2b91af"&gt;MailMessage &lt;/span&gt;msg = &lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;MailMessage&lt;/span&gt;();
msg.From = &lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;MailAddress&lt;/span&gt;(&lt;span style="color:#a31515"&gt;&amp;quot;[M Gmail Id]@gmail.com&amp;quot;&lt;/span&gt;);
msg.To.Add(&lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;MailAddress&lt;/span&gt;(&lt;span style="color:#a31515"&gt;&amp;quot;paul.galvin@arcovis.com&amp;quot;&lt;/span&gt;));
msg.Subject = &lt;span style="color:#a31515"&gt;&amp;quot;Test infopath dev subject&amp;quot;&lt;/span&gt;;
msg.Body = &lt;span style="color:#a31515"&gt;&amp;quot;&amp;lt;html&amp;gt;&amp;lt;body&amp;gt;&amp;lt;strong&amp;gt;A strong message.&amp;lt;/strong&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;quot;&lt;/span&gt;;
msg.IsBodyHtml = &lt;span style="color:blue"&gt;true&lt;/span&gt;;

&lt;span style="color:blue"&gt;foreach &lt;/span&gt;(&lt;span style="color:blue"&gt;string &lt;/span&gt;aFile &lt;span style="color:blue"&gt;in &lt;/span&gt;NIPFD.GetAttachmentNamesAndLocations())
{
    msg.Attachments.Add(&lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;Attachment&lt;/span&gt;(aFile));
} &lt;span style="color:green"&gt;// Adding attachments.

&lt;/span&gt;&lt;span style="color:#2b91af"&gt;SmtpClient &lt;/span&gt;client = &lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;SmtpClient&lt;/span&gt;(&lt;span style="color:#a31515"&gt;&amp;quot;smtp.gmail.com&amp;quot;&lt;/span&gt;);
client.EnableSsl = &lt;span style="color:blue"&gt;true&lt;/span&gt;;
client.UseDefaultCredentials = &lt;span style="color:blue"&gt;false&lt;/span&gt;;
client.Credentials = loginInfo;
client.Port = 587;
client.EnableSsl = &lt;span style="color:blue"&gt;true&lt;/span&gt;;
client.Send(msg);&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;A few key bits that slowed me down and other observations / notes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The first line that creates the loginInfo object needs to use the gmail ID stripped of &lt;a href="mailto:“@gmail.com"&gt;“@gmail.com&lt;/a&gt;”.  So, if my gmail email address is &lt;a href="mailto:“sharepoint@gmail.com"&gt;“sharepoint@gmail.com&lt;/a&gt;” and my password is “xyzzy” then the line would look like:&lt;/li&gt;&lt;/ul&gt;
&lt;blockquote&gt;&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;span style="color:#2b91af"&gt;NetworkCredential &lt;/span&gt;loginInfo = &lt;span style="color:blue"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af"&gt;NetworkCredential&lt;/span&gt;(&lt;span style="color:#a31515"&gt;&amp;quot;sharepoint&amp;quot;&lt;/span&gt;, &lt;span style="color:#a31515"&gt;&amp;quot;xyzzy&amp;quot;&lt;/span&gt;); &lt;/p&gt;&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;My gmail account is set up to use SSL and that wasn’t a problem.&lt;br /&gt;
&lt;li&gt;There is some conflicting information out there on what port to use.  I used port 587 and it worked fine for me.&lt;br /&gt;
&lt;li&gt;In my case, I also needed to send attachments.  That NIPFD object has a method that knows where my attachments are.  It’s returning a fully path (e.g. “c:\temp\attachment1.jpg”.  In my test, I had two attachments and they both worked fine.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;I used visual studio 2008 to write this code.&lt;/p&gt;
&lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt;
&lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/gmail" rel="tag"&gt;gmail&lt;/a&gt;,&lt;a href="http://technorati.com/tags/c%23" rel="tag"&gt;c#&lt;/a&gt;,&lt;a href="http://technorati.com/tags/.NET" rel="tag"&gt;.NET&lt;/a&gt;,&lt;a href="http://technorati.com/tags/smtp" rel="tag"&gt;smtp&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=JI2SvoNa0rs:SnUs-xUewJ4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=JI2SvoNa0rs:SnUs-xUewJ4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=JI2SvoNa0rs:SnUs-xUewJ4:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=JI2SvoNa0rs:SnUs-xUewJ4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=JI2SvoNa0rs:SnUs-xUewJ4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=JI2SvoNa0rs:SnUs-xUewJ4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=JI2SvoNa0rs:SnUs-xUewJ4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=JI2SvoNa0rs:SnUs-xUewJ4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=JI2SvoNa0rs:SnUs-xUewJ4:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=JI2SvoNa0rs:SnUs-xUewJ4:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/JI2SvoNa0rs" height="1" width="1"/&gt;</description><pubDate>Tue, 27 Oct 2009 13:22:26 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/JI2SvoNa0rs/cns!1CC1EDB3DAA9B8AA!4935.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4935.entry#comment</comments><slash:comments>1</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4935')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-27T13:22:26.9270000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4935.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4803</guid><category>Public Speaking</category><title>SharePoint Conference 2009 – Get Your Real Time Raw Data From Twitter</title><description>&lt;p&gt;I expect that nearly everyone knows this anyway, but I thought I’d toss out a quick note that there’s a tremendous amount of very interesting information available via twitter.  The hash tag #SPC09 seems to be the most popular.  Like always, there’s a lot of silliness and “in” jokes, but if you can get past that, check it out.  I do my best to respond to comments or questions directed to me and I know that a lot of others do as well, so it’s not just a one-way flow of information.&lt;/p&gt; &lt;p&gt;New sessions start in just under two hours and continue up until about 3pm EDT this Thursday.  It will start to pick up then.&lt;/p&gt; &lt;p&gt;Check out the twitter feed here: &lt;a title="http://twitter.com/#search?q=%23spc09" href="http://twitter.com/#search?q=%23spc09"&gt;http://twitter.com/#search?q=%23spc09&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePont+Conference+2009" rel="tag"&gt;SharePont Conference 2009&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8PDvXDlbv9c:FrmbseNH3CU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8PDvXDlbv9c:FrmbseNH3CU:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8PDvXDlbv9c:FrmbseNH3CU:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8PDvXDlbv9c:FrmbseNH3CU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8PDvXDlbv9c:FrmbseNH3CU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8PDvXDlbv9c:FrmbseNH3CU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8PDvXDlbv9c:FrmbseNH3CU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8PDvXDlbv9c:FrmbseNH3CU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=8PDvXDlbv9c:FrmbseNH3CU:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=8PDvXDlbv9c:FrmbseNH3CU:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/8PDvXDlbv9c" height="1" width="1"/&gt;</description><pubDate>Tue, 20 Oct 2009 14:09:44 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/8PDvXDlbv9c/cns!1CC1EDB3DAA9B8AA!4803.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4803.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4803')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-20T14:09:44.3630000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4803.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4794</guid><category>InfoPath 2007 // Forms Server</category><title>Programmatically Extracting Attachments From InfoPath Forms (Including Their Names!)</title><description>&lt;p&gt;I have an expense entry solution for a client that leverages InfoPath and workflow.  At one point during the approval process, I need to generate an email that has all of that good InfoPath data as well as the attachments themselves so that (sigh) someone can take that data and manually re-key it into an Oracle database application.&lt;/p&gt; &lt;p&gt;It’s not very difficult to get at or parse the InfoPath form.  I didn’t know how to handle the attachments, however.  After an hour or two of poking around the Internets (an eternity!) I found this article: &lt;a title="http://support.microsoft.com/kb/892730" href="http://support.microsoft.com/kb/892730"&gt;http://support.microsoft.com/kb/892730&lt;/a&gt;&lt;/p&gt; &lt;p&gt;It provide some handy code to extract the attachment from a node in the form.  (You still need to find the node and all that, but that’s just XML parsing).&lt;/p&gt; &lt;p&gt;I know that the attachment is base64-encoded and I originally went down the path of just extracting the the base64 data, decoding it and saving it.  However, I quickly realized I didn’t know how to get the file name itself until I found the aforementioned article.&lt;/p&gt; &lt;p&gt;I had actually found that quite early, but I was put off by its split personality. On the one hand, the article *says* it’s good for InfoPath 2007.  Yet, the code and instructions are all about Visual Studio 2003 and references to InfoPath 2003.&lt;/p&gt; &lt;p&gt;Bottom line, the code that article provided is working well for me (so far).  I can get my InfoPath form, I can parse it, I can find and decode the attachment and I know its name.  What more can one ask of one’s life?&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/InfoPath" rel="tag"&gt;InfoPath&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SharePoint" rel="tag"&gt;SharePoint&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Arcovis" rel="tag"&gt;Arcovis&lt;/a&gt;&lt;/div&gt;&lt;/p&gt; &lt;p&gt;If you’re worried that your SharePoint environment may be a tad unhealthy, &lt;a href="http://www.issgroup.net/healthcheck.html"&gt;let me help you fix that&lt;/a&gt; with a health check.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pl8gI-bSvPI:u-zh7Rdp5hA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pl8gI-bSvPI:u-zh7Rdp5hA:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pl8gI-bSvPI:u-zh7Rdp5hA:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pl8gI-bSvPI:u-zh7Rdp5hA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pl8gI-bSvPI:u-zh7Rdp5hA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pl8gI-bSvPI:u-zh7Rdp5hA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pl8gI-bSvPI:u-zh7Rdp5hA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pl8gI-bSvPI:u-zh7Rdp5hA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pl8gI-bSvPI:u-zh7Rdp5hA:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pl8gI-bSvPI:u-zh7Rdp5hA:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/pl8gI-bSvPI" height="1" width="1"/&gt;</description><pubDate>Fri, 16 Oct 2009 15:51:51 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/pl8gI-bSvPI/cns!1CC1EDB3DAA9B8AA!4794.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4794.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4794')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-16T15:51:51.8070000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4794.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4725</guid><category>Public Speaking</category><title>SharePoint Shop Talk Recap for 10-08-2009</title><description>&lt;p&gt;Today’s SharePoint Shop Talk covered its usual wide range of topics:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;We discussed the issues around opening up parts of a SharePoint site collection to your trading partners.  It’s not the most complicated thing in the world, but when you start talking about out loud, you realize there are a lot of small individual things that need to be done to do this correctly.  You have to consider the firewall, licensing (your intranet SharePoint license may not be, and probably won’t be, sufficient), SharePoint configuration (AAM, extending web applications to zones that probably have HTTPS enabled), etc.  If anyone has a checklist of what to do and the sequence, I’d love to see it in comments.  This question wins the “Most Discussed Question” aware of the year (so far). &lt;br /&gt; &lt;li&gt;I got to ask a question about the image library functionality that generates those thumb nail images.  I speculated that an event receiver on the image library is generating the thumb nail.  I’m probably way off base, but it does seem like there’s an entirely separate image on the web server for the thumb nail itself.  Vamshi, a SharePoint Shop Talk regular, points out this blog entry: &lt;a title="http://pathtosharepoint.wordpress.com/2009/08/23/picture-libraries-take-advantage-of-web-friendly-formats/" href="http://pathtosharepoint.wordpress.com/2009/08/23/picture-libraries-take-advantage-of-web-friendly-formats/."&gt;http://pathtosharepoint.wordpress.com/2009/08/23/picture-libraries-take-advantage-of-web-friendly-formats/.&lt;/a&gt;  That’s a pretty interesting post about images in SharePoint if you’re interested in it.&lt;br /&gt; &lt;li&gt;We discussed custom edit forms (that you create via SPD) and the fact that you lose the attachment functionality when you do that.  Laura Rogers has blogged on that subject here: &lt;a title="http://sharepoint911.com/blogs/laura/archive/2009/09/10/fix-for-the-custom-form-attachments-issue.aspx" href="http://sharepoint911.com/blogs/laura/archive/2009/09/10/fix-for-the-custom-form-attachments-issue.aspx"&gt;http://sharepoint911.com/blogs/laura/archive/2009/09/10/fix-for-the-custom-form-attachments-issue.aspx&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;This week, we introduced a new feature where we spent about 10 minutes demonstrating an interesting tip/trick in a SharePoint environment.  This week, we showed how to added a content editor web part (and actually any web part) to a newitem.aspx page.  In this case, the objective was to show some extensive online help for that newitem.aspx page.  This is also one of the usual starting points for integrating jQuery into your environment.  Next week, we do plan to show a jQuery tip/trick.  We hope to see you there.  &lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4jMN37Q7EMY:lD37L8xFrR4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4jMN37Q7EMY:lD37L8xFrR4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=4jMN37Q7EMY:lD37L8xFrR4:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4jMN37Q7EMY:lD37L8xFrR4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=4jMN37Q7EMY:lD37L8xFrR4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4jMN37Q7EMY:lD37L8xFrR4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4jMN37Q7EMY:lD37L8xFrR4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=4jMN37Q7EMY:lD37L8xFrR4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4jMN37Q7EMY:lD37L8xFrR4:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=4jMN37Q7EMY:lD37L8xFrR4:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/4jMN37Q7EMY" height="1" width="1"/&gt;</description><pubDate>Thu, 08 Oct 2009 21:08:32 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/4jMN37Q7EMY/cns!1CC1EDB3DAA9B8AA!4725.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4725.entry#comment</comments><slash:comments>6</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4725')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-08T21:08:32.5600000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4725.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4698</guid><category>Public Speaking</category><title>SharePoint Shop Talk 10/08/08 at 12:30 PM EDT</title><description>&lt;p&gt;We’re hosting our next weekly SharePoint Shop Talk session tomorrow at 12:30 PM EDT.&lt;/p&gt; &lt;p&gt;This is an open Q&amp;amp;A and general kibitzing session on all topics SharePoint related.  &lt;/p&gt; &lt;p&gt;You can read various recaps of prior sessions here to get a sense of what we do on these calls here: &lt;a title="http://paulgalvin.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dPublic%2520Speaking" href="http://paulgalvin.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dPublic%2520Speaking"&gt;http://paulgalvin.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dPublic%2520Speaking&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Registration is up and ready right here: &lt;a href="https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=0z40kg9nb0t0842f"&gt;https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=0z40kg9nb0t0842f&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Twitter your questions to me, @pagalvin.&lt;/p&gt; &lt;p&gt;Email them to &lt;a href="mailto:questions@sharepointshoptalk.com"&gt;questions@sharepointshoptalk.com&lt;/a&gt; or just show up on the line and ask them out loud.  &lt;/p&gt; &lt;p&gt;We hope to see you then!&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pe1kFqsGbXg:ruavkFnseEM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pe1kFqsGbXg:ruavkFnseEM:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pe1kFqsGbXg:ruavkFnseEM:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pe1kFqsGbXg:ruavkFnseEM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pe1kFqsGbXg:ruavkFnseEM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pe1kFqsGbXg:ruavkFnseEM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pe1kFqsGbXg:ruavkFnseEM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pe1kFqsGbXg:ruavkFnseEM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=pe1kFqsGbXg:ruavkFnseEM:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=pe1kFqsGbXg:ruavkFnseEM:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/pe1kFqsGbXg" height="1" width="1"/&gt;</description><pubDate>Wed, 07 Oct 2009 16:01:36 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/pe1kFqsGbXg/cns!1CC1EDB3DAA9B8AA!4698.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4698.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4698')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-07T16:01:36.1300000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4698.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4695</guid><category>Blogging</category><title>To Blog or Not to Blog – That is the Question (to Blog About)</title><description>&lt;p&gt;&lt;em&gt;Note: This was originally posted to &lt;a href="http://www.endusersharepoint.com/2009/10/02/sharepoint-to-blog-or-not-to-blog-%e2%80%93-that-is-the-question-to-blog-about/"&gt;www.endusersharepoint.com&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt; &lt;p&gt;A few weeks ago I had the chance to speak at SharePoint Saturday in New York.  Once again, a tremendous event.   This time, I spoke about “learning SharePoint” – a very broad topic.  During the presentation (&lt;a href="http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!4467.entry"&gt;which you can get here&lt;/a&gt;), I talked about a variety of techniques for “learning” SharePoint, including stuff like book learning, class room training, creating your own VM and most importantly (to me), community participation.  One way to participate in the SharePoint community is via blogging.  Someone asked me about blogging in particular and asked my opinion on a few concerns he had that I’ve heard others mention before.  It’s been itching at the back of my head for a few weeks so in my usual fashion, I’m scratching that itch by blogging about it.&lt;/p&gt; &lt;p&gt;Some people seem to think that there are so many quality bloggers out there on the scene today and that so many quality blog entries have been written that in a sense, there’s nothing new to write about.  Or, the “new” thing is so narrowly focused that it’s not going to be interesting to anyone.  I don’t agree with those sentiments or the underlying assumption about them.&lt;/p&gt; &lt;p&gt;For starters, if you’re blogging because it’s part of your personal attempt at learning SharePoint well, it’s really irrelevant if someone has written on your topic or not.  One of the drivers behind community participation, whether it’s for personal learning or not, is that you &lt;em&gt;need to get it right&lt;/em&gt;.  No one wants to put up some weak blog entry and look silly in front of the world.  In the course of getting it right, you’re going to think the subject through more carefully, etc.  Thus, you’re thinking, studying and considering this topic from all kinds of angles, left to right, up to down, inside and out (or at least you should be).  That’s a very valuable exercise.  In fact, it’s almost beside the point of pushing the “post” button by the time you finish writing it since you’ve already derived much of the benefit by now.  Of course, you do want to push the post button anyway for a variety of reasons, but I digress.  The bottom line is that blogging is a valuable learning exercise in and of itself, period. &lt;/p&gt; &lt;p&gt;I also reject the “it’s already been done” argument.  So what if it was?  The terrible consequence is that people who are looking up your topic via bing will now find two or five or a dozen articles.  Who cares?  I always prefer to find several articles on the same topic when I go searching the tubes for stuff.   Different points of view, different writing styles, different approaches to the same problem – they all help me understand what I need.  In my opinion, the community is no where close to reaching a saturation point on good quality blog articles on any topic in the SharePoint world.&lt;/p&gt; &lt;p&gt;So, blog away!  You won’t hear me complaining about it.  I guarantee it :)&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Blogging" rel="tag"&gt;Blogging&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SharePoint" rel="tag"&gt;SharePoint&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3qDVzMbbsiU:Mq2-YlNY9OI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3qDVzMbbsiU:Mq2-YlNY9OI:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3qDVzMbbsiU:Mq2-YlNY9OI:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3qDVzMbbsiU:Mq2-YlNY9OI:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3qDVzMbbsiU:Mq2-YlNY9OI:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3qDVzMbbsiU:Mq2-YlNY9OI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3qDVzMbbsiU:Mq2-YlNY9OI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3qDVzMbbsiU:Mq2-YlNY9OI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3qDVzMbbsiU:Mq2-YlNY9OI:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3qDVzMbbsiU:Mq2-YlNY9OI:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/3qDVzMbbsiU" height="1" width="1"/&gt;</description><pubDate>Tue, 06 Oct 2009 14:43:59 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/3qDVzMbbsiU/cns!1CC1EDB3DAA9B8AA!4695.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4695.entry#comment</comments><slash:comments>1</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4695')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-06T14:43:59.5000000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4695.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4694</guid><category>Consulting</category><title>Don’t Be a Bull in the China Shop</title><description>&lt;h1&gt;A Brief History of SharePoint (From a Relative Newcomer’s Perspective)&lt;/h1&gt; &lt;p&gt;&lt;em&gt;Note: This article was originally posted to &lt;/em&gt;&lt;a href="http://www.endusersharepoint.com/2009/09/18/a-brief-history-of-sharepoint-from-a-relative-newcomer%e2%80%99s-perspective/"&gt;www.endusersharepoint.com&lt;/a&gt;&lt;em&gt;&lt;/em&gt;&lt;em&gt;.  I forgot to post it to my own blog :)&lt;/em&gt;&lt;/p&gt; &lt;p&gt;SharePoint has evolved a great deal since its early days as sort of an incubation technology at Microsoft --it’s evolved almost like a horror movie, where the mad scientist’s creation takes on a life of its own, breaking free of its creator’s expectations and rules.  The technical evolution is obvious – the WSS 3.0 object model is richer and more complex than WSS 2.0, which was itself an improvement over earlier versions.  The next version will no doubt show tremendous improvement over 3.0.  From an End User’s perspective, however, SharePoint’s evolution is even more significant.&lt;/p&gt; &lt;p&gt;In the early days, SharePoint didn’t offer much to End Users.  They would have their usual functionality requirements, work with IT to define them well and implement a solution.  IT would use SharePoint to solve the problem.  The product wasn’t very accessible to End Users.  I’ve thought threw a few analogies, but I decided to stick Venn Diagrams to show what I mean.  When Microsoft first released SharePoint to the world as a commercial offering, it followed a relatively traditional pattern of End User &amp;lt;-&amp;gt; IT relationship.  A lot of End Users, communicating and working with a very small number of It people to deliver solutions that solve business problems:&lt;/p&gt; &lt;p&gt;&lt;a href="https://uptyvw.blu.livefilestore.com/y1mvrcmYNrE3aWfsQRP5rMlY1cXsbAQ16BxZHjbT-8OpOlH7wf5jN02-PTBWQN-2xaOvOr8p1YUC0waneGsNX7ZVI8r9m_dsbMbFXfIrk0C9xT0nYDO700cl3fVNMek5GRgUkxn6uXxO4Qjd69oeKTXBA/image3 5E526F67.png" rel="WLPP"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="https://uptyvw.blu.livefilestore.com/y1mISTeOx1RPP_wcD_Ma39pK2nfjyWkVhVt77vq_wsF2Y7WbZq3ODnVbYMJl3tEXPHV3VGL9PjHqR1t0SDf6Jfz3VqCI8avxnISf3xg92mERXe6KIdbrA844LxmveYHnHbol25YVFfnV3cHQCSIaoj8hA/image_thumb1 329E5313.png" width="281" height="222" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;The overall problem domain for which SharePoint is a suitable delivery platform is small (especially compared to today’s SharePoint.  End Users and IT worked in a more classic arrangement with IT: define requirements to IT, wait for IT do their work behind the curtain and take delivery of the final product.&lt;/p&gt; &lt;p&gt;As SharePoint evolved to the 2.0 world (WSS 2.0 and SharePoint Portal Server), several things happened.  First, the “problem domain” increased in size.  By problem domain, I mean the kinds of business problems for which SharePoint could be a viable solution.  For instance, you wouldn’t think too hard about implementing a serious search solution in a SharePoint environment until SPS (and even then, it wasn’t as good as it needed to be).  At the same time, End Users have an unprecedented ability to not only define, but also implement their own solutions with little or no IT support.  &lt;/p&gt; &lt;p&gt;The 3.0 platform (WSS and MOSS) maintained and increased that momentum.  The problem domain is enormous as compared to the 2.0 platform.  Virtually every department in a company, ranging from manufacturing health and safety departments to marketing, from sales to quality control – they can find a good use for SharePoint (and it’s not a case of mashing a round peg into a square hole).  At the same time, the platform empowers even more End Users to implement their own business solutions.  I try to capture that with this diagram:&lt;/p&gt; &lt;p&gt;&lt;a href="https://uptyvw.blu.livefilestore.com/y1mJHjv6xKpScV1IWRKYKKeQ_jlemsxygpguw8o_TxCetYHuFsByUTJNPQCwwv_StpCBqoe9iXiF1LhEytGVACmE7J3DKiDHiqDmusqC46z3KxKBVEA-t_KZykN7GTlBTwmRfksohkp6mKpDKymWXXs8A/image7 6C011770.png" rel="WLPP"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="https://uptyvw.blu.livefilestore.com/y1mvOB-6y6S0lnbKdTh5nelaUy4LY_IoNU-GdO7wNPefL05ffpJohEG4DgSY6wEmLlNE8n0DxRcqH-ZHUXqCVyPLoVs-wqGlWTZpou1JMz1sF5KIbZHiENeo5aZnzBdrc9yR0fZm5PtP9EdjXYd_tYuaA/image_thumb3 5CC9ECFC.png" width="472" height="312" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This has proven to be both a potent and frustrating mixture.  The 3.0 platform turns previously stable roles on their heads.  Suddenly, End Users are effectively &lt;strike&gt;judge, jury and executioner &lt;/strike&gt;business analyst, application architect and developer for their own business solutions.  This gets to the heart of the problem I’m writing about.  But before I dive into that, let’s consider the elephant in the room.&lt;/p&gt; &lt;h1&gt;Peering into the Crystal Ball&lt;/h1&gt; &lt;p&gt;How will SharePoint 2010 affect this pattern?  Will it be incremental or revolutionary?  Will more, fewer or about the same number of End users find themselves empowered to build solutions in SharePoint 2010?  Will SharePoint 2010’s problem domain expand even further or will it just refine and streamline what it already offers in WSS 3.0 / MOSS?&lt;/p&gt; &lt;p&gt;There’s enough information “out there” to safely say that the general answer is:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;The problem domain is going to dramatically expand.  &lt;li&gt;End Users will find themselves even more empowered than before.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The Venn Diagram would be larger than this page and cause some IT Pros and CxO’s to reach for their Pepto.  &lt;/p&gt; &lt;p&gt;I believe it’s going to be a tremendous opportunity for companies to do some truly transformational things.  &lt;/p&gt; &lt;h1&gt;No Bulls in My China Shop!&lt;/h1&gt; &lt;p&gt;This sounds great, but from my point of view as a SharePoint consultant and putting myself into the shoes of an IT manager, I see this vision.  I own a China shop with beautiful plates, crystal, etc (my SharePoint environment).  I’ve rented a space, I’ve purchased my inventory and laid it all out the way I like it.  I’m not quite ready to open, but in anticipation, I look at the door to see if my customers are lining up and I notice an actual bull out there.  I look more closely and I actually see &lt;em&gt;two&lt;/em&gt; bulls and even a wolf.  Then I notice that there are some sheep.  Sheep are &lt;em&gt;so&lt;/em&gt; bad, but are they maybe disguised wolves?  I don’t want bulls in my china shop!&lt;/p&gt; &lt;p&gt;It gets worse!  When I rented the space, I couldn’t believe how nice it was.  Wide and open, terrific amenities, very reasonable price.  However, now I’m realizing that the wide open spaces and the huge door is just perfectly sized for a bull to come wandering in and lay waste to my china. &lt;/p&gt; &lt;p&gt;I’m pushing this analogy too far, of course.  End Users are not bulls (most of them, anyway) and IT departments don’t (or surely should not) view their user community with that kind of suspicion.  However, there is this sort of perfect collision taking place already in the the 3.0 platform that I expect will only get worse in SP 2010.  SharePoint already empowers and encourages End Users to define and implement their own solutions. &lt;/p&gt; &lt;p&gt;That’s great and all, but the fact is that it’s still a very technical product and still calls for the kind of vigorous business requirements analysis, design and general planning and management that technical projects require to be successful.  These are not the kind of skills that a lot of End Users have in their bag of tricks, especially when the focus is on a technical product like SharePoint.  &lt;/p&gt; &lt;p&gt;I’ve given this a lot of thought over the last year or so and I don’t see any easy answer.  It really boils down to education and training.  I think that SP 2010 is going to change the game a bit and it’s going to play out differently and in slow motion as companies roll out their SP 2010 solutions over 2010 and beyond.  In order to succeed, End Users will need to transform themselves and get a little IT religion.  They’ll need to learn a little bit about proper requirements analysis.  They will need some design documentation that clearly identifies business process workflow, for instance.  They need to understand fundamental concepts like CRUD (create, update and delete), dev/test/qa/prod environments and how to use that infrastructure to properly deploy solutions that live a nice long time and bend (not break) in response to changes in an organization.&lt;/p&gt; &lt;p&gt;In the coming weeks, I plan to try and provide some of my own new ideas, as well as link to the great work done by many other authors (on &lt;a href="http://www.endusersharepoint.com"&gt;www.endusersharepoint.com&lt;/a&gt; and elsewhere) so that interested End Users can learn that old time IT religion.  Keep tuned.&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint" rel="tag"&gt;SharePoint&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Consulting" rel="tag"&gt;Consulting&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mrw_vvTnaDw:c2yev5ukjWU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mrw_vvTnaDw:c2yev5ukjWU:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mrw_vvTnaDw:c2yev5ukjWU:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mrw_vvTnaDw:c2yev5ukjWU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mrw_vvTnaDw:c2yev5ukjWU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mrw_vvTnaDw:c2yev5ukjWU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mrw_vvTnaDw:c2yev5ukjWU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mrw_vvTnaDw:c2yev5ukjWU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=mrw_vvTnaDw:c2yev5ukjWU:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=mrw_vvTnaDw:c2yev5ukjWU:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/mrw_vvTnaDw" height="1" width="1"/&gt;</description><pubDate>Mon, 05 Oct 2009 17:00:11 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/mrw_vvTnaDw/cns!1CC1EDB3DAA9B8AA!4694.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4694.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4694')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-05T17:00:11.7870000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4694.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4689</guid><category>Public Speaking</category><title>SharePoint Shop Talk Recap for Thursday 10/01/09</title><description>&lt;p&gt;I’ve noticed that people seem to be waiting until the last minute to register for SharePoint Shop Talk sessions.  Last Thursday, at about 11:45AM, we had nine people register, which is a very small number.  However, at one point, we had 18 or 20 people signed in, so at least nine people signed up for it 45 minutes or less before the call.  I’m not complaining, just observing.&lt;/p&gt; &lt;p&gt;We had a full schedule of questions and discussion topics and couldn’t get to all of them.  As usual, we’ll pick up where we left off this coming Thursday.&lt;/p&gt; &lt;p&gt;Here’s the recap:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Vamshi asked about building a WSS environment that has SP1 and not SP2.  You can download that configuration here:  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=4191A531-A2E9-45E4-B71E-5B0B17108BD2&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=4191A531-A2E9-45E4-B71E-5B0B17108BD2&amp;amp;displaylang=en&lt;/a&gt;.  And someone else suggested looking here: &lt;a href="http://technet.microsoft.com/en-us/windowsserver/sharepoint/bb400747.aspx"&gt;http://technet.microsoft.com/en-us/windowsserver/sharepoint/bb400747.aspx&lt;/a&gt;. &lt;/p&gt; &lt;li&gt;We had a (welcome) surprise return visitor.  A few weeks previous, Blue had asked us a question that left everyone on the call a little sad because we couldn’t help.  His problem and solution are really fairly complicated, but it boils down to creating a data view web part with a range of filtered dates (not just one single filtered date, which is easier).  He may write up a blog entry on this and if does, I’ll link to it.  In the course of the discussion, he referred everyone to these two links: &lt;/li&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://blogs.msdn.com/sharepointdesigner/archive/2008/09/05/sharepoint-conference-building-a-sharepoint-designer-mashup-part-deux.aspx"&gt;http://blogs.msdn.com/sharepointdesigner/archive/2008/09/05/sharepoint-conference-building-a-sharepoint-designer-mashup-part-deux.aspx&lt;/a&gt; and&lt;/li&gt; &lt;li&gt;&lt;a title="http://social.msdn.microsoft.com/Forums/en-US/sharepointcustomization/thread/01d61148-84fd-40dd-8b28-2476db3c9b4d?prof=required" href="http://social.msdn.microsoft.com/Forums/en-US/sharepointcustomization/thread/01d61148-84fd-40dd-8b28-2476db3c9b4d?prof=required"&gt;http://social.msdn.microsoft.com/Forums/en-US/sharepointcustomization/thread/01d61148-84fd-40dd-8b28-2476db3c9b4d?prof=required&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Looping in SharePoint designer – can it be done?  The answer is “yes” in some narrow cirumstances.  However, to do it, you need to do some tricky stuff that is hard to conceptualize, hard to implement, hard to debug … it’s just plain hard.  The panel’s consensus – don’t do this if you can help it.  If you need looping, create custom actions or drop down into visual studio.  Of course, if you’re using SPD, you prob can’t easily drop down into VS, but it is what is is, sadly.&lt;br /&gt; &lt;li&gt;Speaking of sad, Nancy wins the “Make the Panel Sad” award by (futilely) asking about drag and drop from a data view web part.  The scenario is very interesting and if anyone has a clever solution, please let me know.  Here’s the problem: she has a DVWP that is doing some necessary filtering on a document library that returns back dozens or more documents.  This works great.  However, her users need to take those documents and burn them to CD.  This is doable using a windows explorer type view, but how to do it from DVWP?  We couldn’t think of a good answer.  Can you?&lt;br /&gt; &lt;li&gt;Laura Rogers, followed by Lori Gowan of &lt;a href="http://www.endusersharepoint.com"&gt;www.endusersharepoint.com&lt;/a&gt; fame (and elsewhere) made us aware of the fact that attachments to InfoPath forms can be submitted via a web service to an image library in SharePoint.  Out of the box!  That is a very interesting fact with some very interesting implications. &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;That’s pretty much it.  I probably missed something, but hopefully you get the gist of it.&lt;/p&gt; &lt;p&gt;Even though I know you won’t actually sign up until noon, Thursday, here’s the registration link for the next session, Thursday 10/08 from 12:30 to 1:30 PM EDT: &lt;a href="https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=0z40kg9nb0t0842f"&gt;https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=0z40kg9nb0t0842f&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=bjhPcyk4TUI:ROejejQN1e4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=bjhPcyk4TUI:ROejejQN1e4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=bjhPcyk4TUI:ROejejQN1e4:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=bjhPcyk4TUI:ROejejQN1e4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=bjhPcyk4TUI:ROejejQN1e4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=bjhPcyk4TUI:ROejejQN1e4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=bjhPcyk4TUI:ROejejQN1e4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=bjhPcyk4TUI:ROejejQN1e4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=bjhPcyk4TUI:ROejejQN1e4:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=bjhPcyk4TUI:ROejejQN1e4:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/bjhPcyk4TUI" height="1" width="1"/&gt;</description><pubDate>Sun, 04 Oct 2009 21:02:17 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/bjhPcyk4TUI/cns!1CC1EDB3DAA9B8AA!4689.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4689.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4689')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-10-04T21:02:17.8130000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4689.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4685</guid><category>Public Speaking</category><title>SharePoint Shop Talk Thursday 10/01 @ 12:30 PM EDT (tomorrow!)</title><description>&lt;p&gt;SharePoint Shop Talk registration is up and ready for tomorrow.&lt;/p&gt; &lt;p&gt;We have a few questions teed up that address some management issues (dev/test/prod and syncing up service packs), email notifications (how to select people to email based on metadata of a document) and some discussion around using InfoPath forms services in an FBA environment.&lt;/p&gt; &lt;p&gt;As always, if you want to talk about a topic:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Send an email to &lt;a href="mailto:questions@sharepointshoptalk.com"&gt;questions@sharepointshoptalk.com&lt;/a&gt;  &lt;li&gt;Twitter me (@pagalvin)  &lt;li&gt;Leave a comment here. &lt;li&gt;Just show up on the call and ask it there.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;You can read about past SharePoint Shop Talks on my blog here: &lt;a title="http://paulgalvin.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dPublic%2520Speaking" href="http://paulgalvin.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dPublic%2520Speaking"&gt;http://paulgalvin.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dPublic%2520Speaking&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Register for the session here: &lt;a href="https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=h6hm9ptg8zt7302t"&gt;https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=h6hm9ptg8zt7302t&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=00UcqE3auTE:JnRzm0t8RqM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=00UcqE3auTE:JnRzm0t8RqM:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=00UcqE3auTE:JnRzm0t8RqM:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=00UcqE3auTE:JnRzm0t8RqM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=00UcqE3auTE:JnRzm0t8RqM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=00UcqE3auTE:JnRzm0t8RqM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=00UcqE3auTE:JnRzm0t8RqM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=00UcqE3auTE:JnRzm0t8RqM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=00UcqE3auTE:JnRzm0t8RqM:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=00UcqE3auTE:JnRzm0t8RqM:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/00UcqE3auTE" height="1" width="1"/&gt;</description><pubDate>Wed, 30 Sep 2009 12:31:45 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/00UcqE3auTE/cns!1CC1EDB3DAA9B8AA!4685.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4685.entry#comment</comments><slash:comments>1</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4685')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-09-30T12:31:45.7470000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4685.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4683</guid><category>Blogging</category><title>Windows Live Spaces and Twitter Counter</title><description>&lt;p&gt;I was DM’d a message from twitter today and thought I’d blog the answer.&lt;/p&gt; &lt;p&gt;The question is: “Hey Paul, quick one for you,how did you get the twitter counter into your live space as the script code is blocked when saved Thx”&lt;/p&gt; &lt;p&gt;I did this by adding a custom html widget to my live spaces page and using the little code snippet:&lt;/p&gt; &lt;table border="1" cellspacing="0" cellpadding="2" width="591"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="589"&gt; &lt;div&gt; &lt;div&gt;&lt;pre&gt;&lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;a&lt;/span&gt; &lt;span&gt;href&lt;/span&gt;&lt;span&gt;=&amp;quot;http://twittercounter.com/?username=pagalvin&amp;quot;&lt;/span&gt;   &lt;/pre&gt;&lt;pre&gt;   &lt;span&gt;title&lt;/span&gt;&lt;span&gt;=&amp;quot;TwitterCounter for @pagalvin&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;   &lt;/pre&gt;&lt;pre&gt;   &lt;span&gt;&amp;lt;&lt;/span&gt;&lt;span&gt;img&lt;/span&gt; &lt;span&gt;src&lt;/span&gt;&lt;span&gt;=&amp;quot;http://twittercounter.com/counter/?username=pagalvin&amp;quot;&lt;/span&gt;     &lt;/pre&gt;&lt;pre&gt;        &lt;span&gt;width&lt;/span&gt;=&lt;span&gt;88&lt;/span&gt;     &lt;/pre&gt;&lt;pre&gt;        &lt;span&gt;height&lt;/span&gt;=&lt;span&gt;26&lt;/span&gt;    &lt;/pre&gt;&lt;pre&gt;        &lt;span&gt;style&lt;/span&gt;&lt;span&gt;=&amp;quot;border:none&amp;quot;&lt;/span&gt;       &lt;/pre&gt;&lt;pre&gt;        &lt;span&gt;alt&lt;/span&gt;&lt;span&gt;=&amp;quot;TwitterCounter for @pagalvin&amp;quot;&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span&gt;&amp;lt;/&lt;/span&gt;&lt;span&gt;a&lt;/span&gt;&lt;span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;p&gt;This uses a version of the twitter counter widget interface that gets past the windows live censor thing that we all hate so much and wish would get a bad case of poison ivy.&lt;/p&gt;
&lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt;
&lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Twitter" rel="tag"&gt;Twitter&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=6qwx3_6zLao:Kh8C-Veu6kg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=6qwx3_6zLao:Kh8C-Veu6kg:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=6qwx3_6zLao:Kh8C-Veu6kg:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=6qwx3_6zLao:Kh8C-Veu6kg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=6qwx3_6zLao:Kh8C-Veu6kg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=6qwx3_6zLao:Kh8C-Veu6kg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=6qwx3_6zLao:Kh8C-Veu6kg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=6qwx3_6zLao:Kh8C-Veu6kg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=6qwx3_6zLao:Kh8C-Veu6kg:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=6qwx3_6zLao:Kh8C-Veu6kg:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/6qwx3_6zLao" height="1" width="1"/&gt;</description><pubDate>Wed, 30 Sep 2009 11:40:17 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/6qwx3_6zLao/cns!1CC1EDB3DAA9B8AA!4683.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4683.entry#comment</comments><slash:comments>1</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4683')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-09-30T11:40:17.9130000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4683.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4679</guid><category>InfoPath 2007 // Forms Server</category><title>Managing Approval Groups with InfoPath in an FBA Environment</title><description>&lt;p&gt;I have an expense approval process that I need to implement using InfoPath in a forms based authentication (FBA) environment using forms services (web based InfoPath).&lt;/p&gt; &lt;p&gt;There are two approval groups and the process works like this:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;User fills out an expense report and submits it for approval.  &lt;li&gt;That triggers an email to first level approver group.  &lt;li&gt;First level approver reviews and approves or denies the report.  &lt;li&gt;If first level person approves it, system notifies second level approver.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;On the InfoPath side of things, I have different sections that hide/appear based on whether the user is a member of one of those approval groups.&lt;/p&gt; &lt;p&gt;In an FBA environment the username() function always returns blank, sadly.  What I’ve done is set up a a custom list called “Approval Groups”.&lt;/p&gt; &lt;p&gt;I don’t add any additional columns to the list.&lt;/p&gt; &lt;p&gt;When the form opens up, it has a rule like this:&lt;/p&gt; &lt;p&gt;&lt;a href="https://uptyvw.blu.livefilestore.com/y1mK6PBw5eu-PMokfaChD6Z6WqvTDpgGDp0inWXu7ERneuPN4QI7w4Z9edZT8sM0AIEYT2T0Z88or48BTJKa2WvdfX7oEaByOOGp1BU38TXj09awXwGygxg3WSL26n2AyBAlzcTAWDCXs-TtE6R7zKEcQ/image[3] 7DD1AD65.png" rel="WLPP"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="https://uptyvw.blu.livefilestore.com/y1mznu5-_5-G-UKPLReuMw9b9E-SniAdfSho8YUgyAxavVlTBPbFgZOuxsr5Fv55lMocWmgO58S5AwgiEGXAHS5ILyYTcH4cG52ehzsp_x9ugdhBJVgt4tLIOQ5yuFrkP4wV3r_2RaZ9NfcPO4CVcHMYA/image_thumb[1] 14903348.png" width="446" height="347" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The “set a field’s value” is here:&lt;/p&gt; &lt;p&gt;&lt;a href="https://uptyvw.blu.livefilestore.com/y1mIemi_4SvHJxdirAWFiyWR6MhQWR9dY0xQ-V3RNuMlrPIay-GFp40vkyoVLixNWR3Ob_yRIBcwiEtjFN5n2_z3G6zQGZpjg9et333x2llPU6kmYkLVeXupsgaBDLCcsvELakq1SJa_Z5BfSjlsJUXHQ/image[7].png" rel="WLPP"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="https://uptyvw.blu.livefilestore.com/y1mFi78iZwC_IiSytmci9IGFGhyOLO7m_0YupvPbHMHJD1_DoOJ4zW0eIF5CkIw5O3QSXXx1jGCgAnTD0WkTfXAn7dfwgaFyK35qSwXKuGioUoUyNW9n-SaCQyBCHMw29Gyf_uDv0CUqyd25G2Zc9R2EA/image_thumb[3] 6491F394.png" width="393" height="314" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;This is basically saying: Query the approval group custom list and filter that query by looking for any row where Title’s value = “NORDIC”.&lt;/p&gt; &lt;p&gt;If that returns any value, then the current user is a member of that group.  I know it contains that value because the string length is greater than zero.&lt;/p&gt; &lt;p&gt;Close the loop by securing the individual items in the Approval Group list.  At run-time, if the current user doesn’t have appropriate security access to that item then the query won’t return it, string-length will be zero and now you know the current user is not part of that group.  You can use that fact as needed in the form.&lt;/p&gt; &lt;p&gt;This is a super brief write-up.  I’m pressed for time or I’d provide more detail.&lt;/p&gt; &lt;p&gt;I don’t know how relevant it is that I’m in an FBA environment.  This would probably work well in a non-FBA environment but I can imagine cases where this would be useful.&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/InfoPath" rel="tag"&gt;InfoPath&lt;/a&gt;,&lt;a href="http://technorati.com/tags/FBA" rel="tag"&gt;FBA&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=x7vEwNeiZDg:M9KEDk8eAow:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=x7vEwNeiZDg:M9KEDk8eAow:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=x7vEwNeiZDg:M9KEDk8eAow:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=x7vEwNeiZDg:M9KEDk8eAow:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=x7vEwNeiZDg:M9KEDk8eAow:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=x7vEwNeiZDg:M9KEDk8eAow:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=x7vEwNeiZDg:M9KEDk8eAow:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=x7vEwNeiZDg:M9KEDk8eAow:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=x7vEwNeiZDg:M9KEDk8eAow:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=x7vEwNeiZDg:M9KEDk8eAow:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/x7vEwNeiZDg" height="1" width="1"/&gt;</description><pubDate>Tue, 29 Sep 2009 22:03:47 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/x7vEwNeiZDg/cns!1CC1EDB3DAA9B8AA!4679.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4679.entry#comment</comments><slash:comments>1</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4679')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-09-29T22:03:47.4570000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4679.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4672</guid><category>Public Speaking</category><title>SharePoint Shop Talk Recap (09/24/09 edition)</title><description>&lt;p&gt;We finished our 8th SharePoint Shop Talk open Q&amp;amp;A session yesterday.  During that session, we covered the following topics:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;How to send out a highly formatted email from a workflow created using SharePoint Designer.  &lt;ul&gt; &lt;li&gt;Check out this link for a treasure trove of great SPD info and email: &lt;a href="http://tinyurl.com/cssworkflow"&gt;http://tinyurl.com/cssworkflow&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Where to find information on the differences between SharePoint 2010 and especially Windows SharePoint Services 3.0 (the free version of SharePoint).  &lt;br /&gt; &lt;li&gt;We discussed jQuery maintenance and management.  More specifically, “where should the jQuery go?”  We had a great discussion around this topic and one interesting new ideas (to me) is the idea of a content delivery network.   This bing search pulls up a lot of interesting data on the subject: &lt;a title="http://www.bing.com/search?q=microsoft+content+delivery+network&amp;amp;FORM=DLSDF7&amp;amp;pc=MDDS&amp;amp;src=IE-SearchBox" href="http://www.bing.com/search?q=microsoft+content+delivery+network&amp;amp;FORM=DLSDF7&amp;amp;pc=MDDS&amp;amp;src=IE-SearchBox"&gt;http://www.bing.com/search?q=microsoft+content+delivery+network&amp;amp;FORM=DLSDF7&amp;amp;pc=MDDS&amp;amp;src=IE-SearchBox&lt;/a&gt;  &lt;ul&gt; &lt;li&gt;Special mention to Jan Tielens’ CodePlex project on installing jQuery to an internal network as a feature that can be managed like any other feature in a SharePoint environment.  Look it up and consider using it if you’re leveraging a lot of jQuery in your environment: &lt;a title="http://www.codeplex.com/smarttools" href="http://www.codeplex.com/smarttools"&gt;http://www.codeplex.com/smarttools&lt;/a&gt; &lt;li&gt;While you’re at, check out Marc Anderson’s jQuery work as well: &lt;a title="http://mdasblog.wordpress.com/2009/09/15/jquery-library-for-sharepoint-web-services-v0-2-10-released/" href="http://mdasblog.wordpress.com/2009/09/15/jquery-library-for-sharepoint-web-services-v0-2-10-released/"&gt;http://mdasblog.wordpress.com/2009/09/15/jquery-library-for-sharepoint-web-services-v0-2-10-released/&lt;/a&gt;.  He’s very responsive to comments from the community.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Someone mentioned that parts (or maybe even all) of the up-coming mega conference in Las Vegas in October will be broadcast over the internets.  Check out this site for more information: &lt;a href="http://www.week3.org/Events/default.aspx"&gt;http://www.week3.org/Events/default.aspx&lt;/a&gt; &lt;br /&gt; &lt;li&gt;We talked about RSS.  That discussion covered a lot of ground.  There’s a CodePlex project that does better RSS than what you get out of the box and &lt;a href="http://www.endusersharepoint.com"&gt;www.endusersharepoint.com&lt;/a&gt; has some good articles up by Laura Rogers on how to use DVWP to build really good RSS sessions.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;That about covers it.  People seem to be getting a lot of help from these so we’ll keep them going.&lt;/p&gt; &lt;p&gt;In a burst of efficiency, I’ve already set up next week’s SharePoint Shop Talk session.  You can register here: &lt;a href="https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=h6hm9ptg8zt7302t"&gt;https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=h6hm9ptg8zt7302t&lt;/a&gt;&lt;/p&gt; &lt;p&gt;If you want to participate, fire off an email to &lt;a href="mailto:questions@sharepointshoptalk.com"&gt;questions@sharepointshoptalk.com&lt;/a&gt;, hit me up on twitter (@pagalvin) or leave a comment here.&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3KFL4Kd1uVA:HACPB4EQz0s:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3KFL4Kd1uVA:HACPB4EQz0s:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3KFL4Kd1uVA:HACPB4EQz0s:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3KFL4Kd1uVA:HACPB4EQz0s:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3KFL4Kd1uVA:HACPB4EQz0s:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3KFL4Kd1uVA:HACPB4EQz0s:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3KFL4Kd1uVA:HACPB4EQz0s:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3KFL4Kd1uVA:HACPB4EQz0s:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=3KFL4Kd1uVA:HACPB4EQz0s:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=3KFL4Kd1uVA:HACPB4EQz0s:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/3KFL4Kd1uVA" height="1" width="1"/&gt;</description><pubDate>Fri, 25 Sep 2009 15:23:04 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/3KFL4Kd1uVA/cns!1CC1EDB3DAA9B8AA!4672.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4672.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4672')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-09-25T15:23:04.6400000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4672.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4476</guid><category>Public Speaking</category><title>SharePoint Shop Talk Thursday 09/24 @ 12:30 PM EDT</title><description>&lt;p&gt;Registration is up and ready for tomorrow’s SharePoint Shop Talk at 12:30 PM.&lt;/p&gt; &lt;p&gt;During these conference calls, a panel of experienced SharePoint pro’s take your questions via email, via live meeting or directly over the phone.  We do our best to provide independent expert advice on all topics related to SharePoint.&lt;/p&gt; &lt;p&gt;Email your questions to &lt;a href="mailto:“questions@sharepointshoptalk.com"&gt;“questions@sharepointshoptalk.com&lt;/a&gt;”, twitter them to me, leave a comment here or just show up on the call and ask.&lt;/p&gt; &lt;p&gt;We also welcome and seek insight from audience members.&lt;/p&gt; &lt;p&gt;You can read some recaps on previous SharePoint Shop Talk sessions on my blog.&lt;/p&gt; &lt;p&gt;This week we already know we’ll be addressing questions relating to workflow (a constant favorite) and search to name a few.&lt;/p&gt; &lt;p&gt;Register here: &lt;a href="https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=dv3m7cl30sxkq2n1"&gt;https://www.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=dv3m7cl30sxkq2n1&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=ytci6Vryx_w:0FKV7P5gAPU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=ytci6Vryx_w:0FKV7P5gAPU:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=ytci6Vryx_w:0FKV7P5gAPU:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=ytci6Vryx_w:0FKV7P5gAPU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=ytci6Vryx_w:0FKV7P5gAPU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=ytci6Vryx_w:0FKV7P5gAPU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=ytci6Vryx_w:0FKV7P5gAPU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=ytci6Vryx_w:0FKV7P5gAPU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=ytci6Vryx_w:0FKV7P5gAPU:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=ytci6Vryx_w:0FKV7P5gAPU:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/ytci6Vryx_w" height="1" width="1"/&gt;</description><pubDate>Wed, 23 Sep 2009 14:20:54 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/ytci6Vryx_w/cns!1CC1EDB3DAA9B8AA!4476.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4476.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4476')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-09-23T14:20:54.3400000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4476.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4469</guid><category>Public Speaking</category><title>SharePoint Shop Talk this Thursday 09/17/09 12:30 PM EDT to 1:30 PM EDT</title><description>&lt;p&gt;The next SharePoint Shop Talk takes place this Thursday, 09/17 at 12:30PM EDT.&lt;/p&gt; &lt;p&gt;What is SharePoint Shop Talk?  It’s a one hour conference call where a panel of SharePoint pro’s answer questions.  Send your questions to &lt;a href="mailto:“questions@sharepointshoptalk.com"&gt;“questions@sharepointshoptalk.com&lt;/a&gt;”, leave a comment on my blog here or just ask them out loud on the call.  The panel tries to offer several different approaches to solving the underlying problem behind the question and just generally provide unbiased expert advice.&lt;/p&gt; &lt;p&gt;This week we continue with the same panel, including myself, my two Arcovis partners Harry Jones and Natalya Voskresenskaya and Laura Rogers of SharePoint911.&lt;/p&gt; &lt;p&gt;Briefly recapping last week – we had more questions than we could answer, so this week, we’ll start off with those.  We had 34 registrants and I think 25 people actually joined the call.  We covered a wide variety of subjects that I would say were 75% end user oriented, including:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Strategies for rolling up content from sub-sites to top level sites inside and across site collections.  &lt;li&gt;The impact of customizing editform.aspx using SharePoint Designer.  &lt;li&gt;Dealing with the famous “collect data from a user” SharePoint Designer workflow action.  &lt;li&gt;Using jQuery to solve some common user interface problems.  &lt;li&gt;Time zone questions (for a geographically distributed environment)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;We covered several other items as well, but the details escaped me.&lt;/p&gt; &lt;p&gt;I promised to do follow up with a live meeting to dig into one of the questions and still need to do that.  &lt;/p&gt; &lt;p&gt;Register for this week’s session here: &lt;a title="https://www323.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=bhj8dbrswhv1hv8r" href="https://www323.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=bhj8dbrswhv1hv8r"&gt;https://www323.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=bhj8dbrswhv1hv8r&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This week, we’re going to talk about at least:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Strategies for managing and getting at version history for documents&lt;/li&gt; &lt;li&gt;Suitability and ideas around using SharePoint as a front end that allows your customers to view some financial data.&lt;/li&gt; &lt;li&gt;Workflow questions (as usual).&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;We’ll see and hear you there!&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint+Shop+Talk" rel="tag"&gt;SharePoint Shop Talk&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SharePoint" rel="tag"&gt;SharePoint&lt;/a&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=7llp-rJJXlw:sdLJ9o6Lvv4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=7llp-rJJXlw:sdLJ9o6Lvv4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=7llp-rJJXlw:sdLJ9o6Lvv4:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=7llp-rJJXlw:sdLJ9o6Lvv4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=7llp-rJJXlw:sdLJ9o6Lvv4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=7llp-rJJXlw:sdLJ9o6Lvv4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=7llp-rJJXlw:sdLJ9o6Lvv4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=7llp-rJJXlw:sdLJ9o6Lvv4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=7llp-rJJXlw:sdLJ9o6Lvv4:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=7llp-rJJXlw:sdLJ9o6Lvv4:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/7llp-rJJXlw" height="1" width="1"/&gt;</description><pubDate>Tue, 15 Sep 2009 14:58:33 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/7llp-rJJXlw/cns!1CC1EDB3DAA9B8AA!4469.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4469.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4469')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-09-15T14:58:33.5030000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4469.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!4467</guid><category>Public Speaking</category><title>SharePoint Saturday New York</title><description>&lt;p&gt;I’ve uploaded my presentation for the New York SharePoint Saturday here: &lt;a title="http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/Follow%20the%20Yellow%20Brick%20Road%20to%20SharePoint%20Mastery.pptx" href="http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/Follow the Yellow Brick Road to SharePoint Mastery.pptx"&gt;http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/Follow%20the%20Yellow%20Brick%20Road%20to%20SharePoint%20Mastery.pptx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;It’s not terribly useful if you don’t go to the presentation, but I do hope to add a lot of notes between now and Tampa, when I present it again.  That would give it more legs and context and be more generally useful.&lt;/p&gt; &lt;p&gt;&amp;lt;/end&amp;gt;&lt;/p&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;&lt;img style="border-right-width:0px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" alt="" src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" /&gt;&lt;/a&gt;&lt;a title="Subscribe to my feed" href="http://feeds.feedburner.com/PaulGalvinsSharepointSpace" rel="alternate"&gt;Subscribe to my blog.&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Follow me on Twitter at &lt;a href="http://www.twitter.com/pagalvin"&gt;http://www.twitter.com/pagalvin&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=e0QYG-IOrng:nXfgayDyzXA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=e0QYG-IOrng:nXfgayDyzXA:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=e0QYG-IOrng:nXfgayDyzXA:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=e0QYG-IOrng:nXfgayDyzXA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=e0QYG-IOrng:nXfgayDyzXA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=e0QYG-IOrng:nXfgayDyzXA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=e0QYG-IOrng:nXfgayDyzXA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=e0QYG-IOrng:nXfgayDyzXA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=e0QYG-IOrng:nXfgayDyzXA:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=e0QYG-IOrng:nXfgayDyzXA:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/e0QYG-IOrng" height="1" width="1"/&gt;</description><pubDate>Sat, 12 Sep 2009 11:07:44 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/e0QYG-IOrng/cns!1CC1EDB3DAA9B8AA!4467.entry</link><comments>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4467.entry#comment</comments><slash:comments>0</slash:comments><live:type>blogentry</live:type><live:typelabel>Blog Entry</live:typelabel><wfw:commentRss>http://cid-1cc1edb3daa9b8aa.users.api.live.net/Users(2072198660290623658)/Blogs('1CC1EDB3DAA9B8AA!113')/Entries('1CC1EDB3DAA9B8AA!4467')/Comments?$format=application%2frss%2bxml</wfw:commentRss><dcterms:modified>2009-09-12T11:07:44.2970000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!4467.entry</feedburner:origLink></item><item><guid isPermaLink="false">1CC1EDB3DAA9B8AA!203</guid><title>Recommended Books</title><description>&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4rSu9OTjJUc:4NWDZTIfMzQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4rSu9OTjJUc:4NWDZTIfMzQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=4rSu9OTjJUc:4NWDZTIfMzQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4rSu9OTjJUc:4NWDZTIfMzQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4rSu9OTjJUc:4NWDZTIfMzQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=4rSu9OTjJUc:4NWDZTIfMzQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?a=4rSu9OTjJUc:4NWDZTIfMzQ:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PaulGalvinsSharepointSpace?i=4rSu9OTjJUc:4NWDZTIfMzQ:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PaulGalvinsSharepointSpace/~4/4rSu9OTjJUc" height="1" width="1"/&gt;</description><pubDate>Thu, 04 Oct 2007 10:52:43 Z</pubDate><link>http://feedproxy.google.com/~r/PaulGalvinsSharepointSpace/~3/4rSu9OTjJUc/cns!1CC1EDB3DAA9B8AA!203</link><live:type>customlist</live:type><live:typelabel>Custom List</live:typelabel><dcterms:modified>2008-11-04T00:24:02.3530000Z</dcterms:modified><feedburner:origLink>http://paulgalvin.spaces.live.com/Lists/cns!1CC1EDB3DAA9B8AA!203</feedburner:origLink></item></channel></rss>
