<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.0.5" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Pat's .Net and Sharepoint Blog</title>
	<link>http://blog.12thwave.com</link>
	<description>In the Microsoft Sharepoint and .Net Trenches</description>
	<pubDate>Wed, 18 Feb 2009 00:50:17 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.5</generator>
	<language>en</language>
			<item>
		<title>XSLT Code to output a hyperlink column in Sharepoint Designer</title>
		<link>http://blog.12thwave.com/?p=27</link>
		<comments>http://blog.12thwave.com/?p=27#comments</comments>
		<pubDate>Thu, 11 Dec 2008 18:31:49 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=27</guid>
		<description><![CDATA[ 
&#60;td class=&#8221;ms-vb&#8221;&#62;
    &#60;a class=&#8221;ms-toolbar&#8221;&#62;
              &#60;xsl:attribute name=&#8221;href&#8221;&#62;
              &#60;xsl:text&#62;/_layouts/FormServer.aspx?&#60;/xsl:text&#62;
              &#60;xsl:text&#62;XmlLocation=&#60;/xsl:text&#62;
              &#60;xsl:value-of select=&#8221;@FileRef&#8221;&#62;&#60;/xsl:value-of&#62;
              &#60;xsl:text&#62;&#38;&#60;/xsl:text&#62;
              &#60;xsl:text&#62;OpenIn=Client&#60;/xsl:text&#62;�
              &#60;/xsl:attribute&#62;
              &#60;xsl:value-of select=&#8221;@FileLeafRef&#8221;&#62;&#60;/xsl:value-of&#62;
         &#60;/a&#62;
   &#60;/td&#62;

]]></description>
			<content:encoded><![CDATA[<td class="ms-vb"> </td>
<p>&lt;td class=&#8221;ms-vb&#8221;&gt;<br />
    &lt;a class=&#8221;ms-toolbar&#8221;&gt;<br />
              &lt;xsl:attribute name=&#8221;href&#8221;&gt;<br />
              &lt;xsl:text&gt;/_layouts/FormServer.aspx?&lt;/xsl:text&gt;<br />
              &lt;xsl:text&gt;XmlLocation=&lt;/xsl:text&gt;<br />
              &lt;xsl:value-of select=&#8221;@FileRef&#8221;&gt;&lt;/xsl:value-of&gt;<br />
              &lt;xsl:text&gt;&amp;&lt;/xsl:text&gt;<br />
              &lt;xsl:text&gt;OpenIn=Client&lt;/xsl:text&gt;�<br />
              &lt;/xsl:attribute&gt;<br />
              &lt;xsl:value-of select=&#8221;@FileLeafRef&#8221;&gt;&lt;/xsl:value-of&gt;<br />
         &lt;/a&gt;<br />
   &lt;/td&gt;
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=27</wfw:commentRss>
		</item>
		<item>
		<title>Using a Replace Web Service in a Sharepoint Web Based InfoPath form</title>
		<link>http://blog.12thwave.com/?p=26</link>
		<comments>http://blog.12thwave.com/?p=26#comments</comments>
		<pubDate>Wed, 10 Dec 2008 21:24:23 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<category>Infopath</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=26</guid>
		<description><![CDATA[


Due to the lack of an easy way to do a find and replace in InfoPath, I developed a simple web service with a web method called replace that uses managed code to call the replace method of the string data type. Here&#8217;s how I call the web method in a browser-based Sharepoint InfoPath form.
First [...]]]></description>
			<content:encoded><![CDATA[<table width="400">
<tr>
<td>
Due to the lack of an easy way to do a find and replace in InfoPath, I developed a simple web service with a web method called replace that uses managed code to call the replace method of the string data type. Here&#8217;s how I call the web method in a browser-based Sharepoint InfoPath form.</p>
<p>First create a form like so..</p>
<p><img src="http://blog.12thwave.com/wp-content/images/Infopath1.gif" /></p>
<p>With fields txtFind, txtReplace and txtText</p>
<p>The idea in this sample form is to replace mother with sister in the text &#8220;Don&#8217;t forget to call your mother today!&#8221;<br />
The next thing you must to is create a new data connection.</p>
<p><img src="http://blog.12thwave.com/wp-content/images/infopath2.gif" /></p>
<p>You should first see if your Sharepoint server already has a data connection to the Replace web method</p>
<p><img src="http://blog.12thwave.com/wp-content/images/infopath3.gif" /></p>
<p>Enter the URL of the site like in the above image and then expand the data connections.</p>
<p>Select the Replace.udcx data connection. If you do not see this data connection you must create a new data connection to receive data and then select the web service</p>
<p>Once you have created the web service data connection you must convert it to a data connection file that you must store in a data connection library in your Sharepoint site.</p>
<p>Now you will be presented with the data connection wizard</p>
<p><img src="http://blog.12thwave.com/wp-content/images/infopath4.gif" /></p>
<p>The web method requires three parameters:</p>
<p>Text: the text you want to do the search and replace on<br />
stringToFind: the text you want to replace ie mother<br />
stringToReplace: the text you want to replace it to ie daughter<br />
escapeSpaces: If you are having difficulty with spaces in your strings and need to use %20 then set this to true otherwise default it to false</p>
<p>For now don&#8217;t set default values and click on next, next deselect Automatically retrieve data when form is opened and then click on finish<br />
Your data connection has now been created</p>
<p>So the next thing we need to do is create some rules for our button</p>
<p>The rule will have the following actions - set each of the parameters of the data connection , then query the data connection and then set the txtText value to the result of the data connection query<br />
<img src="http://blog.12thwave.com/wp-content/images/infopath5.gif" /><br />
For the first rule we set the text parameter of the Replace datasource to the value of the txtText field. (make sure to select the Replace data source and not the main data source)</p>
<p>Then create the following actions so that it looks something like this:</p>
<p><img src="http://blog.12thwave.com/wp-content/images/infopath6.gif" /></p>
<p>Now test out your rule by previewing the form</p>
<p><img src="http://blog.12thwave.com/wp-content/images/infopath7.gif" /></p>
<p>Click on the Replace button and the text shoudl read Don&#8217;t forget to call your daughter today!</p>
<p><img src="http://blog.12thwave.com/wp-content/images/infopath8.gif" /></p>
<p>Here&#8217;s the code for my web method:</p>
<p><font size="2">_ </p>
<p><font color="#0000ff" size="2"><font color="#0000ff" size="2">_<br />
Public</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">Function</font></font><font size="2"> Replace(</font><font color="#0000ff" size="2"><font color="#0000ff" size="2">ByVal</font></font><font size="2"> text </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">As</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">String</font></font><font size="2">, </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">ByVal</font></font><font size="2"> stringToFind </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">As</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">String</font></font><font size="2">, </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">ByVal</font></font><font size="2"> stringToReplace </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">As</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">String</font></font><font size="2">, </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">ByVal</font></font><font size="2"> escapeSpaces </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">As</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">String</font></font><font size="2">) </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">As</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">String</font></font></p>
<p></font><font size="2"><font color="#0000ff" size="2"><font color="#0000ff" size="2">If</font></font><font size="2"> escapeSpaces.ToUpper = </font><font color="#a31515" size="2"><font color="#a31515" size="2">&#8220;TRUE&#8221;</font></font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">Then</font></font></font><font size="2"><font size="2">stringToFind = stringToFind.Replace(</font><font color="#a31515" size="2"><font color="#a31515" size="2">&#8221; &#8220;</font></font><font size="2">, </font><font color="#a31515" size="2"><font color="#a31515" size="2">&#8220;%20&#8243;</font></font><font size="2">)</font></p>
<p><font color="#0000ff" size="2">End</font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">If</font></font></p>
<p></font><font size="2"><font color="#0000ff" size="2"><font color="#0000ff" size="2">Return</font></font><font size="2"> text.Replace(stringToFind, stringToReplace)<br />
<font color="#0000ff" size="2"><br />
End</font><font size="2"> </font><font color="#0000ff" size="2"><font color="#0000ff" size="2">Function</font></font></font></font><font size="2"><font size="2"> </p>
<p></font></font></td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=26</wfw:commentRss>
		</item>
		<item>
		<title>Replace XSLT Template for Sharepoint Designer</title>
		<link>http://blog.12thwave.com/?p=24</link>
		<comments>http://blog.12thwave.com/?p=24#comments</comments>
		<pubDate>Wed, 03 Dec 2008 20:00:48 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<category>MOSS</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=24</guid>
		<description><![CDATA[If you need to do a find and replace when outputting a column in a data view you can use the following:
�
&#60;xsl:template name=&#8221;stringreplace&#8221;&#62;
  &#60;xsl:param name=&#8221;stringvalue&#8221; /&#62;
  &#60;xsl:param name=&#8221;from&#8221; /&#62;
  &#60;xsl:param name=&#8221;to&#8221; /&#62;
  &#60;xsl:choose&#62;
   &#60;xsl:when test=&#8221;contains($stringvalue, $from)&#8221;&#62;&#60;xsl:value-of select=&#8221;substring-before($stringvalue, $from)&#8221; /&#62;
    &#60;xsl:if test=&#8221;contains(substring($stringvalue, 1, string-length($stringvalue) - 1), $from)&#8221;&#62;&#60;xsl:value-of select=&#8221;$to&#8221; /&#62;
     &#60;xsl:call-template name=&#8221;stringreplace&#8221;&#62;
      &#60;xsl:with-param name=&#8221;stringvalue&#8221; select=&#8221;substring-after($stringvalue, $from)&#8221; /&#62;
      [...]]]></description>
			<content:encoded><![CDATA[<p>If you need to do a find and replace when outputting a column in a data view you can use the following:<br />
�<br />
&lt;xsl:template name=&#8221;stringreplace&#8221;&gt;<br />
  &lt;xsl:param name=&#8221;stringvalue&#8221; /&gt;<br />
  &lt;xsl:param name=&#8221;from&#8221; /&gt;<br />
  &lt;xsl:param name=&#8221;to&#8221; /&gt;<br />
  &lt;xsl:choose&gt;<br />
   &lt;xsl:when test=&#8221;contains($stringvalue, $from)&#8221;&gt;&lt;xsl:value-of select=&#8221;substring-before($stringvalue, $from)&#8221; /&gt;<br />
    &lt;xsl:if test=&#8221;contains(substring($stringvalue, 1, string-length($stringvalue) - 1), $from)&#8221;&gt;&lt;xsl:value-of select=&#8221;$to&#8221; /&gt;<br />
     &lt;xsl:call-template name=&#8221;stringreplace&#8221;&gt;<br />
      &lt;xsl:with-param name=&#8221;stringvalue&#8221; select=&#8221;substring-after($stringvalue, $from)&#8221; /&gt;<br />
      &lt;xsl:with-param name=&#8221;from&#8221; select=&#8221;$from&#8221; /&gt;<br />
      &lt;xsl:with-param name=&#8221;to&#8221; select=&#8221;$to&#8221; /&gt;<br />
     &lt;/xsl:call-template&gt;<br />
    &lt;/xsl:if&gt;<br />
   &lt;/xsl:when&gt;<br />
   &lt;xsl:otherwise&gt;&lt;xsl:value-of select=&#8221;$stringvalue&#8221; /&gt;&lt;/xsl:otherwise&gt;<br />
  &lt;/xsl:choose&gt;<br />
 &lt;/xsl:template&gt;<br />
�<br />
Call the template code:<br />
Say you have a column named ColumnName and you want to replace all occurrences of True and set them to False&#8230;..</p>
<p> &lt;xsl:call-template name=&#8221;stringreplace&#8221;&gt;<br />
 &lt;xsl:with-param name=&#8221;stringvalue&#8221; select=&#8221;@ColumnName&#8221; /&gt;<br />
 &lt;xsl:with-param name=&#8221;from&#8221; select=&#8221;True&#8221; /&gt;<br />
 &lt;xsl:with-param name=&#8221;to&#8221; select=&#8221;False&#8221; /&gt;<br />
 &lt;/xsl:call-template&gt;</p>
<p>�
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=24</wfw:commentRss>
		</item>
		<item>
		<title>Line feeds / Line breaks Sharepoint Dataviews</title>
		<link>http://blog.12thwave.com/?p=22</link>
		<comments>http://blog.12thwave.com/?p=22#comments</comments>
		<pubDate>Tue, 02 Dec 2008 20:24:37 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Uncategorized</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=22</guid>
		<description><![CDATA[After having published an Infopath form with a rich textbox field to a document library, I created a dataview of the list.
The column that came from the rich textbox control (Comments) lost it&#8217;s linebreaks. In order to fix the problem I used the following code:
 &#60;xsl:value-of select=&#34;ddwrt:AutoNewLine(string(@Comments))&#34; disable-output-escaping=&#34;yes&#34; /&#62;


]]></description>
			<content:encoded><![CDATA[<p>After having published an Infopath form with a rich textbox field to a document library, I created a dataview of the list.</p>
<p>The column that came from the rich textbox control (Comments) lost it&#8217;s linebreaks. In order to fix the problem I used the following code:</p>
<p> &lt;xsl:value-of select=&quot;ddwrt:AutoNewLine(string(@Comments))&quot; disable-output-escaping=&quot;yes&quot; /&gt;</p>
<p>
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=22</wfw:commentRss>
		</item>
		<item>
		<title>Infopath Forms Services Form opens in browser but as XML</title>
		<link>http://blog.12thwave.com/?p=14</link>
		<comments>http://blog.12thwave.com/?p=14#comments</comments>
		<pubDate>Sun, 26 Oct 2008 19:13:58 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<category>MOSS</category>

		<category>Infopath</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=14</guid>
		<description><![CDATA[When opening an infopath form the XML code appears in the browser.
Open Infopath go into Tools / Options
Check – Check whether Microsoft Office is the default program for opening and editing .xml files
�

]]></description>
			<content:encoded><![CDATA[<p>When opening an infopath form the XML code appears in the browser.<br />
Open Infopath go into Tools / Options<br />
Check – Check whether Microsoft Office is the default program for opening and editing .xml files</p>
<p><img title="Infopath Options" alt="Infopath Options" src="http://blog.12thwave.com/wp-content/uploads/InfoPathOptions.GIF" />�
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=14</wfw:commentRss>
		</item>
		<item>
		<title>Updating Sharepoint 2003 Infopath Forms to 2007</title>
		<link>http://blog.12thwave.com/?p=15</link>
		<comments>http://blog.12thwave.com/?p=15#comments</comments>
		<pubDate>Fri, 26 Sep 2008 19:36:31 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<category>MOSS</category>

		<category>Infopath</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=15</guid>
		<description><![CDATA[When you migrate a form library from Sharepoint 2003 to Sharepoint 2007 references to the Form template will still point to the 2003 form library.
If you need to update the reference Sharepoint has a relink documents feature to individually re-link the xml forms to the appropriate template.
Unfortunately this process can be rather cumbersome especially if [...]]]></description>
			<content:encoded><![CDATA[<p>When you migrate a form library from Sharepoint 2003 to Sharepoint 2007 references to the Form template will still point to the 2003 form library.<br />
If you need to update the reference Sharepoint has a relink documents feature to individually re-link the xml forms to the appropriate template.<br />
Unfortunately this process can be rather cumbersome especially if the form library contains sub folders. To alleviate this painful process<br />
I developed a tool that with go through an entire directory structure recursively and do a find and replace on the template (.XSN) file.<br />
What you will need to do is go into the explorer view of the form library, copy all files and folders to a location on your local hard drive.<br />
Then open up the “UpdateInfopathTemplate” utility and update all the xml forms. Then copy all the forms back to the destination form library in 2007.</p>
<p><img src="http://blog.12thwave.com/wp-content\uploads\InfoPathTemplateConverter.gif" /></p>
<p><a href="http://blog.12thwave.com/wp-content\uploads\UpdateInfopathTemplate.zip">Click here to download the utility</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=15</wfw:commentRss>
		</item>
		<item>
		<title>Toronto Stock Exchange (TSE) Stock Quote Sharepoint Web Part</title>
		<link>http://blog.12thwave.com/?p=16</link>
		<comments>http://blog.12thwave.com/?p=16#comments</comments>
		<pubDate>Tue, 26 Aug 2008 20:00:38 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<category>WSS</category>

		<category>MOSS</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=16</guid>
		<description><![CDATA[The Stock Quote Web Part is a custom web part that displays stock information from Yahoo Finance. It allows users to lookup stocks on either the TSE or NYSE

Click here to dowload the Web Part 
�

]]></description>
			<content:encoded><![CDATA[<p>The Stock Quote Web Part is a custom web part that displays stock information from Yahoo Finance. It allows users to lookup stocks on either the TSE or NYSE</p>
<p><img src="http://blog.12thwave.com/wp-content\uploads\StockQuote.gif" /></p>
<p><a href="http://blog.12thwave.com/wp-content/uploads/StockQuote%20WebPart.zip">Click here to dowload the Web Part</a> </p>
<p>�
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=16</wfw:commentRss>
		</item>
		<item>
		<title>Minimal Sharepoint Application Page Code</title>
		<link>http://blog.12thwave.com/?p=17</link>
		<comments>http://blog.12thwave.com/?p=17#comments</comments>
		<pubDate>Sat, 26 Jul 2008 20:05:20 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<category>WSS</category>

		<category>MOSS</category>

		<category>Visual Studio</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=17</guid>
		<description><![CDATA[Below is some code to get you started on creating your own Sharepoint Application Page so that it looks just like the built in ones!
&#60;%@ Assembly Name=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221;%&#62;
&#60;%@ Assembly Name=&#8221;CheckInAll, Version=1.0.0.0, Culture=neutral, PublicKeyToken=70b886b56e89f448&#8243;  %&#62;
&#60;%@ Page Language=&#8221;VB&#8221; MasterPageFile=&#8221;~/_layouts/application.master&#8221; Inherits=&#8221;VSeWSS.CheckInAll.CheckIn&#8221; %&#62;
&#60;asp:Content ID=&#8221;PageTitle&#8221; contentplaceholderid=&#8221;PlaceHolderPageTitle&#8221; runat=&#8221;server&#8221;&#62;
 Check-In: All Documents
&#60;/asp:Content&#62;
&#60;asp:Content ID=&#8221;PageTitleInTitleArea&#8221; runat=&#8221;server&#8221;
             contentplaceholderid=&#8221;PlaceHolderPageTitleInTitleArea&#8221; &#62;
 Check-In: All Documents
&#60;/asp:Content&#62;
&#60;asp:Content ID=&#8221;Main&#8221; contentplaceholderid=&#8221;PlaceHolderMain&#8221; runat=&#8221;server&#8221;&#62;
&#60;table&#62;
&#60;tr&#62;
  [...]]]></description>
			<content:encoded><![CDATA[<p>Below is some code to get you started on creating your own Sharepoint Application Page so that it looks just like the built in ones!</p>
<p>&lt;%@ Assembly Name=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221;%&gt;<br />
&lt;%@ Assembly Name=&#8221;CheckInAll, Version=1.0.0.0, Culture=neutral, PublicKeyToken=70b886b56e89f448&#8243;  %&gt;<br />
&lt;%@ Page Language=&#8221;VB&#8221; MasterPageFile=&#8221;~/_layouts/application.master&#8221; Inherits=&#8221;VSeWSS.CheckInAll.CheckIn&#8221; %&gt;<br />
&lt;asp:Content ID=&#8221;PageTitle&#8221; contentplaceholderid=&#8221;PlaceHolderPageTitle&#8221; runat=&#8221;server&#8221;&gt;<br />
 Check-In: All Documents<br />
&lt;/asp:Content&gt;</p>
<p>&lt;asp:Content ID=&#8221;PageTitleInTitleArea&#8221; runat=&#8221;server&#8221;<br />
             contentplaceholderid=&#8221;PlaceHolderPageTitleInTitleArea&#8221; &gt;<br />
 Check-In: All Documents<br />
&lt;/asp:Content&gt;</p>
<p>&lt;asp:Content ID=&#8221;Main&#8221; contentplaceholderid=&#8221;PlaceHolderMain&#8221; runat=&#8221;server&#8221;&gt;<br />
&lt;table&gt;<br />
&lt;tr&gt;<br />
  &lt;td class=&#8221;ms-descriptiontext&#8221; valign=&#8221;top&#8221;&gt;<br />
    &lt;table border=&#8221;0&#8243; cellpadding=&#8221;1&#8243; cellspacing=&#8221;0&#8243; width=&#8221;100%&#8221;&gt;<br />
     &lt;tr&gt;<br />
      &lt;td class=&#8221;ms-sectionheader&#8221; style=&#8221;padding-top: 4px;&#8221; height=&#8221;22&#8243; valign=&#8221;top&#8221;&gt;<br />
        &lt;H3 class=&#8221;ms-standardheader&#8221;&gt;<br />
                                Check-In Document<br />
         &lt;/H3&gt;</p>
<p>      &lt;/td&gt;<br />
     &lt;/tr&gt;</p>
<p>     &lt;tr&gt;<br />
      &lt;td class=&#8221;ms-descriptiontext ms-inputformdescription&#8221;&gt;<br />
      �<br />
                   Add comments to all the documents you are checking in<br />
 �<br />
      &lt;/td&gt;<br />
      &lt;td&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=8 height=1 alt=&#8221;"&gt;&lt;/td&gt;<br />
     &lt;/tr&gt;</p>
<p>     &lt;tr&gt;<br />
      &lt;td&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=150 height=19 alt=&#8221;"&gt;&lt;/td&gt;<br />
     &lt;/tr&gt;</p>
<p>    &lt;/table&gt;<br />
   &lt;/td&gt;<br />
   &lt;td class=&#8221;ms-authoringcontrols ms-inputformcontrols&#8221; valign=&#8221;top&#8221;<br />
   align=&#8221;left&#8221; &gt;<br />
    &lt;table border=&#8221;0&#8243; width=&#8221;100%&#8221; cellspacing=&#8221;0&#8243; cellpadding=&#8221;0&#8243;&gt;<br />
     &lt;tr&gt;</p>
<p>      &lt;td width=&#8221;9px&#8221;&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=9 height=7 alt=&#8221;"&gt;&lt;/td&gt;</p>
<p>      &lt;td&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=150 height=7 alt=&#8221;"&gt;&lt;/td&gt;</p>
<p>      &lt;td width=&#8221;10px&#8221;&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=10 height=1 alt=&#8221;"&gt;&lt;/td&gt;</p>
<p>     &lt;/tr&gt;<br />
     &lt;tr&gt;<br />
      &lt;td /&gt;<br />
      &lt;td class=&#8221;ms-authoringcontrols&#8221;&gt;<br />
       &lt;table class=&#8221;ms-authoringcontrols&#8221; border=&#8221;0&#8243; width=&#8221;100%&#8221; cellspacing=&#8221;0&#8243; cellpadding=&#8221;0&#8243;&gt;<br />
       �<br />
  �<br />
     &lt;tr id=&#8221;ctl00_PlaceHolderMain_ctl01_ctl02_tablerow1&#8243;&gt;<br />
      &lt;td class=&#8221;ms-authoringcontrols&#8221; colspan=&#8221;2&#8243; nowrap&gt;<br />
       &lt;label for=&#8221;ctl00_PlaceHolderMain_ctl01_ctl02_InputFile&#8221; id=&#8221;ctl00_PlaceHolderMain_ctl01_ctl02_LiteralLabelText&#8221;&gt;Comments:&lt;/label&gt;<br />
      &lt;/td&gt;<br />
     &lt;/tr&gt;<br />
     &lt;tr id=&#8221;ctl00_PlaceHolderMain_ctl01_ctl02_tablerow2&#8243;&gt;<br />
      &lt;td&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=1 height=3 alt=&#8221;"&gt;&lt;/td&gt;<br />
     &lt;/tr&gt;<br />
     &lt;!&#8211; End Right_Text &#8211;&gt;<br />
     &lt;tr id=&#8221;ctl00_PlaceHolderMain_ctl01_ctl02_tablerow3&#8243;&gt;<br />
      &lt;td width=&#8221;11&#8243; &gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=11 height=1 alt=&#8221;"&gt;&lt;/td&gt;<br />
      &lt;td class=&#8221;ms-authoringcontrols&#8221; width=&#8221;99%&#8221;&gt;<br />
      �<br />
                      &lt;TABLE class=&#8221;ms-authoringcontrols&#8221; width=&#8221;100%&#8221;&gt;<br />
                    &lt;TR&gt;&lt;TD&gt;<br />
                      &lt;SPAN dir=&#8221;ltr&#8221;&gt;<br />
                      &lt;asp:TextBox runat=&#8221;server&#8221; Width=&#8221;350px&#8221; ID=&#8221;txtComments&#8221; TextMode=&#8221;MultiLine&#8221; Rows=&#8221;5&#8243;&gt;&lt;/asp:TextBox&gt;<br />
                      &lt;/SPAN&gt;<br />
                    &lt;/TD&gt;&lt;/TR&gt;<br />
                    &lt;/TABLE&gt;<br />
  �<br />
      &lt;/td&gt;<br />
     &lt;/tr&gt;<br />
    �<br />
     &lt;tr id=&#8221;ctl00_PlaceHolderMain_ctl01_ctl02_tablerow5&#8243;&gt;<br />
      &lt;td&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=1 height=6 alt=&#8221;"&gt;&lt;/td&gt;<br />
     &lt;/tr&gt;<br />
       &lt;/table&gt;<br />
      &lt;/td&gt;<br />
      &lt;td width=&#8221;10px&#8221;&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=10 height=1 alt=&#8221;"&gt;&lt;/td&gt;<br />
     &lt;/tr&gt;</p>
<p>     &lt;tr&gt;<br />
      &lt;td /&gt;<br />
      &lt;td&gt;&lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=150 height=13 alt=&#8221;"&gt;&lt;/td&gt;<br />
      &lt;td /&gt;<br />
     &lt;/tr&gt;</p>
<p>    &lt;/table&gt;<br />
   &lt;/td&gt;<br />
  &lt;/tr&gt;<br />
�<br />
  &lt;tr&gt;<br />
   &lt;td height=&#8221;2px&#8221; class=&#8221;ms-sectionline&#8221; colspan=&#8221;2&#8243;&gt;<br />
   &lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=1 height=1 alt=&#8221;"&gt;<br />
   &lt;/td&gt;<br />
  &lt;/tr&gt;<br />
 �<br />
  &lt;tr&gt;<br />
   &lt;td height=&#8221;10px&#8221; class=&#8221;ms-descriptiontext&#8221; colspan=&#8221;2&#8243;&gt;<br />
   &lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=1 height=10 alt=&#8221;"&gt;<br />
   &lt;/td&gt;<br />
  &lt;/tr&gt;<br />
  &lt;tr&gt;<br />
   &lt;td colspan=&#8221;2&#8243;&gt;<br />
    &lt;table cellpadding=&#8221;0&#8243; cellspacing=&#8221;0&#8243; width=&#8221;100%&#8221;&gt;<br />
     &lt;colgroup&gt;<br />
      &lt;col width=&#8221;99%&#8221;&gt;<br />
      &lt;col width=&#8221;1%&#8221;&gt;<br />
     &lt;/colgroup&gt;<br />
     &lt;tr&gt;<br />
      &lt;td&gt;<br />
        &lt;/td&gt;<br />
      &lt;td nowrap&gt;<br />
       &lt;asp:Button ID=&#8221;btnOK&#8221; Text=&#8221;OK&#8221; Width=&#8221;100px&#8221; runat=&#8221;server&#8221; /&gt;<br />
       &lt;asp:Button ID=&#8221;btnCancel&#8221; OnClientClick =&#8221;window.location=history.back();&#8221; Width=&#8221;100px&#8221; Text=&#8221;Cancel&#8221; runat=&#8221;server&#8221; /&gt;<br />
      &lt;/td&gt;<br />
     &lt;/tr&gt;<br />
    &lt;/table&gt;<br />
   &lt;/td&gt;<br />
  &lt;/tr&gt;<br />
 �<br />
  &lt;tr&gt;<br />
   &lt;td height=&#8221;40&#8243; class=&#8221;ms-descriptiontext&#8221; colspan=&#8221;2&#8243;&gt;<br />
   &lt;IMG SRC=&#8221;/_layouts/images/blank.gif&#8221; width=1 height=4 alt=&#8221;"&gt;<br />
   &lt;/td&gt;�<br />
     &lt;/tr&gt;<br />
   �<br />
  &lt;/td&gt;<br />
 &lt;/table&gt;<br />
&lt;/asp:Content&gt;
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=17</wfw:commentRss>
		</item>
		<item>
		<title>Using the Sharepoint SPSiteMapProvider to Populate a TreeView Control</title>
		<link>http://blog.12thwave.com/?p=10</link>
		<comments>http://blog.12thwave.com/?p=10#comments</comments>
		<pubDate>Wed, 25 Jun 2008 17:58:48 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Sharepoint</category>

		<category>ASP.Net</category>

		<category>WSS</category>

		<category>MOSS</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=10</guid>
		<description><![CDATA[Here&#8217;s a very simple way to populate a TreeView Control using the SPSiteMapProvider.
Just copy the code below, create an aspx page, name it what you want and then copy it to
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS
 
 
 
Code for the application page:
&#60;%@ Assembly Name=&#8221;Microsoft.SharePoint.ApplicationPages, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221;%&#62;
&#60;%@ Page language=&#8221;C#&#8221; MasterPageFile=&#8221;~/_layouts/application.master&#8221; %&#62;
&#60;%@ Import Namespace=&#8221;Microsoft.SharePoint.ApplicationPages&#8221; %&#62;
&#60;%@ Register Tagprefix=&#8221;SharePoint&#8221; Namespace=&#8221;Microsoft.SharePoint.WebControls&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a very simple way to populate a TreeView Control using the SPSiteMapProvider.</p>
<p>Just copy the code below, create an aspx page, name it what you want and then copy it to</p>
<p>C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS</p>
<p> </p>
<p><img title="Tree View" alt="Tree View" src="http://blog.12thwave.com/wp-content/images/treeview.gif" /> </p>
<p> </p>
<p>Code for the application page:</p>
<p>&lt;%@ Assembly Name=&#8221;Microsoft.SharePoint.ApplicationPages, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221;%&gt;<br />
&lt;%@ Page language=&#8221;C#&#8221; MasterPageFile=&#8221;~/_layouts/application.master&#8221; %&gt;<br />
&lt;%@ Import Namespace=&#8221;Microsoft.SharePoint.ApplicationPages&#8221; %&gt;<br />
&lt;%@ Register Tagprefix=&#8221;SharePoint&#8221; Namespace=&#8221;Microsoft.SharePoint.WebControls&#8221; Assembly=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221; %&gt;<br />
&lt;%@ Register Tagprefix=&#8221;Utilities&#8221; Namespace=&#8221;Microsoft.SharePoint.Utilities&#8221; Assembly=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221; %&gt;<br />
&lt;%@ Register Tagprefix=&#8221;WebPartPages&#8221; Namespace=&#8221;Microsoft.SharePoint.WebPartPages&#8221; Assembly=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221; %&gt;<br />
&lt;%@ Register Tagprefix=&#8221;wssawc&#8221; Namespace=&#8221;Microsoft.SharePoint.WebControls&#8221; Assembly=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221; %&gt;<br />
&lt;%@ Register Tagprefix=&#8221;SharePoint&#8221; Namespace=&#8221;Microsoft.SharePoint.WebControls&#8221; Assembly=&#8221;Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&#8221; %&gt;<br />
&lt;%@ Register TagPrefix=&#8221;wssuc&#8221; TagName=&#8221;ButtonSection&#8221; src=&#8221;~/_controltemplates/ButtonSection.ascx&#8221; mce_src=&#8221;~/_controltemplates/ButtonSection.ascx&#8221; %&gt;<br />
&lt;%@ Import Namespace=&#8221;Microsoft.SharePoint&#8221; %&gt;<br />
&lt;%@ Import Namespace=&#8221;Microsoft.SharePoint.Navigation&#8221; %&gt;<br />
&lt;%@ Import Namespace=&#8221;System.Net&#8221; %&gt;<br />
&lt;asp:Content ID=&#8221;Content1&#8243; ContentPlaceHolderId=&#8221;PlaceHolderPageTitle&#8221; runat=&#8221;server&#8221;&gt;<br />
&lt;asp:Literal id=&#8221;PageTitleLabel1&#8243; runat=&#8221;server&#8221; &gt;&lt;/asp:Literal&gt;<br />
&lt;/asp:Content&gt;<br />
&lt;asp:Content ID=&#8221;Content2&#8243; ContentPlaceHolderId=&#8221;PlaceHolderPageTitleInTitleArea&#8221; runat=&#8221;server&#8221;&gt;<br />
&lt;asp:Label id=&#8221;PageTitleLabel&#8221; runat=&#8221;server&#8221; &gt;&lt;/asp:Label&gt;<br />
&lt;/asp:Content&gt;<br />
&lt;asp:Content ID=&#8221;Content3&#8243; ContentPlaceHolderId=&#8221;PlaceHolderAdditionalPageHead&#8221; runat=&#8221;server&#8221;&gt;<br />
&lt;script runat=&#8221;server&#8221;&gt;<br />
    void Page_Load(object sender, System.EventArgs e)<br />
    {<br />
           SPSiteMapProvider sitemapProvider = (SPSiteMapProvider)SiteMap.Providers[&#8221;SPSiteMapProvider&#8221;];<br />
           SiteMapDataSource datasource = new SiteMapDataSource();<br />
           datasource.Provider = sitemapProvider;<br />
           this.TreeView1.DataSource = datasource;<br />
           this.TreeView1.ExpandDepth = 1;<br />
           this.TreeView1.DataBind();<br />
    }</p>
<p>&lt;/script&gt;<br />
&lt;/asp:Content&gt;<br />
&lt;asp:Content ID=&#8221;Content4&#8243; ContentPlaceHolderId=&#8221;PlaceHolderPageImage&#8221; runat=&#8221;server&#8221;&gt;<br />
&lt;img src=&#8221;/_layouts/images/blank.gif&#8221; mce_src=&#8221;/_layouts/images/blank.gif&#8221; width=1 height=1 alt=&#8221;" /&gt;<br />
&lt;/asp:Content&gt;<br />
&lt;asp:Content ID=&#8221;Content5&#8243; ContentPlaceHolderId=&#8221;PlaceHolderPageDescription&#8221; runat=&#8221;server&#8221;&gt;<br />
  �<br />
    &lt;table cellpadding=&#8221;2&#8243; cellspacing=&#8221;1&#8243; width=&#8221;100%&#8221; class=&#8221;ms-informationbar&#8221; style=&#8221;margin-bottom: 5px;&#8221; border=0&gt;<br />
                &lt;tr&gt;<br />
                    &lt;td width=&#8221;10&#8243; valign=&#8221;middle&#8221; style=&#8221;padding: 4px&#8221;&gt;<br />
                        &lt;img id=&#8221;Img1&#8243; src=&#8221;/_layouts/images/exclaim.gif&#8221; mce_src=&#8221;/_layouts/images/exclaim.gif&#8221; alt=&#8221;&lt;%$Resources:wss,exclaim_icon%&gt;&#8221; runat=&#8221;server&#8221;/&gt;<br />
                    &lt;/td&gt;<br />
                    &lt;td class=&#8221;ms-descriptiontext&#8221;&gt;<br />
                        &lt;SharePoint:EncodedLiteral ID=&#8221;EncodedLiteral1&#8243; runat=&#8221;server&#8221; text=&#8221;Please select the site you wish to visit&#8221; EncodeMethod=&#8217;HtmlEncode&#8217;/&gt;<br />
                    &lt;/td&gt;<br />
                &lt;/tr&gt;<br />
              �<br />
            &lt;/table&gt;</p>
<p>    &lt;asp:PlaceHolder id=&#8221;PublishDescription&#8221; Visible=&#8221;true&#8221; runat=&#8221;server&#8221;&gt;<br />
    &lt;tr&gt;<br />
        &lt;TD height=&#8221;8px&#8221;&gt;&lt;img src=&#8221;/_layouts/images/blank.gif&#8221; mce_src=&#8221;/_layouts/images/blank.gif&#8221; width=&#8221;1&#8243; height=&#8221;8&#8243; alt=&#8221;"&gt;&lt;/td&gt;<br />
    &lt;/tr&gt;<br />
  �<br />
    &lt;tr&gt;<br />
      �<br />
        &lt;td colspan=&#8221;2&#8243;&gt;<br />
          �<br />
            &lt;table width=&#8221;100%&#8221;&gt;<br />
                &lt;tr&gt;<br />
                    &lt;td class=&#8221;ms-formbody&#8221;&gt;<br />
                        &lt;asp:TreeView�<br />
                            ID=&#8221;TreeView1&#8243;<br />
                            ExpandDepth=&#8221;3&#8243;<br />
                            Font-Names= &#8220;Arial&#8221;<br />
                            Font-Size=&#8221;10pt&#8221;<br />
                            ForeColor=&#8221;Blue&#8221;<br />
                            NodeWrap=&#8221;true&#8221;<br />
                            runat=&#8221;server&#8221;<br />
                            &gt;<br />
                        &lt;/asp:treeview&gt;<br />
                    &lt;/td&gt;<br />
                &lt;/tr&gt;<br />
            &lt;/table&gt;<br />
        &lt;/td&gt;<br />
    &lt;/tr&gt;<br />
    &lt;/asp:PlaceHolder&gt;<br />
&lt;/asp:Content&gt;</p>
<p>
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=10</wfw:commentRss>
		</item>
		<item>
		<title>Ohh baby I found some goodies today!</title>
		<link>http://blog.12thwave.com/?p=9</link>
		<comments>http://blog.12thwave.com/?p=9#comments</comments>
		<pubDate>Tue, 10 Jun 2008 22:58:19 +0000</pubDate>
		<dc:creator>&#60;Patrick/&#62;</dc:creator>
		
		<category>Uncategorized</category>

		<guid isPermaLink="false">http://blog.12thwave.com/?p=9</guid>
		<description><![CDATA[Check out all these cool features you can install on your dev VPC&#8217;s&#8230;.
http://www.codeplex.com/features
I&#8217;ve installed the Debugger feature and it&#8217;s already saving me some time!
I must admit going into the Debug menu selecting the three or four worker processes and then clicking on the Attach button was getting pretty tedious.

]]></description>
			<content:encoded><![CDATA[<p>Check out all these cool features you can install on your dev VPC&#8217;s&#8230;.</p>
<p><a href="http://www.codeplex.com/features">http://www.codeplex.com/features</a></p>
<p>I&#8217;ve installed the Debugger feature and it&#8217;s already saving me some time!</p>
<p>I must admit going into the Debug menu selecting the three or four worker processes and then clicking on the Attach button was getting pretty tedious.
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.12thwave.com/?feed=rss2&amp;p=9</wfw:commentRss>
		</item>
	</channel>
</rss>
