<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><!--RSS generated by Windows SharePoint Services V3 RSS Generator on 13/05/2008 12:53:40--><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Liam Cleary [MVP SharePoint]</title><link>http://www.helloitsliam.com</link><description>RSS feed for the Posts list.</description><copyright>helloitsliam.com</copyright><managingEditor>Liam Cleary</managingEditor><webMaster>Liam Cleary</webMaster><lastBuildDate>Tue, 13 May 2008 11:53:40 GMT</lastBuildDate><generator>SharePoint CKS:EBE</generator><ttl>60</ttl><image><title>Liam Cleary [MVP SharePoint]</title><url>http://www.helloitsliam.com/_layouts/images/homepage.gif</url><link>http://www.helloitsliam.com</link></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/helloitsliam" type="application/rss+xml" /><item><title>CQWP HINTS – Windows Media Player</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/288728947/cqwp-hints-–-windows-media-player.aspx</link><guid isPermaLink="false">/archive/2008/05/12/cqwp-hints-–-windows-media-player.aspx</guid><description><![CDATA[<div class="ExternalClass247A8B860CE74BA188D5145BD7219715">
<p>In the last few posts I have given a few hints for when you need to use the CQWP. In this post we will again look at using the CQWP, but this time look at making it display a little Windows Media Player control that plays a video from our media streaming server. So firstly let's create a new Content Type called video clip. This content type will simply be of custom list type and will have the following fields: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi1.png"> </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi2.png"> </p>
<p>This content type will then be added to our custom list called &quot;Video Clips&quot; so it is available when adding content. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi3.png"> </p>
<p>The content type simply requires a filename, URL and description for the video clip. The video clips are stored on a Windows Media Streaming Server. I have created three publishing points that will each play different videos over and over again. The management console for Windows Media Streaming Server is shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi4.png"> </p>
<p>The &quot;Sample1&quot; publishing point is made up of a playlist which contains the actual reference to the &quot;WMV&quot; file. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi5.png"> </p>
<p>These publishing points have been published through IIS7, and appear within the &quot;INETPUB&quot; directory as listed below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi6.png"> </p>
<p>The following items have then been added to our new list which simply has links to the media publishing points outlined above. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi7.png"> </p>
<p>So now we have the core infrastructure setup let's use the CQWP. So to begin with add a CQWP to the page and configure as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi8.png"> </p>
<p>Notice that for this demonstration I have told it to use a specific list and the newly created content type we made earlier. In the real world you may not want to use a specific list. Once we have it configured we need to export the web part down to our workstation and make a few changes. The first change is to add the relevant fields we need to expose to the web part to the &quot;CommonViewFields&quot; section. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi9.png"> </p>
<p>The second change is to tell the CQWP to use a specific XSL Style Sheet. I could have used the standard &quot;ItemStyle.xsl&quot; or used the &quot;XSL:Import&quot; option as discussed earlier. However for this demonstration we will use a new XSL Style Sheet. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi10.png"> </p>
<p>Now before we import the web part back into the site we need to create the &quot;MediaPlayer.xsl&quot; file and store it in the &quot;Style Library&quot;. For this I copied the default XSL Style from the &quot;ItemStyle.xsl&quot; and then saved it as &quot;MediaPlayer.xsl&quot;. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi11.png"> </p>
<p>The following changes were then made: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi12.png"> </p>
<p>Notice how we are simply using the standard &quot;&lt;OBJECT&gt;&quot; tag from HTML and using it to load the Windows Media Player control. There are also a few parameters that have been configured. The key here is the new XSL variable that has been created; </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi13.png"> </p>
<p>This gets the URL that was specified in the list item which is in the following format: <a href="http://localhost/Sample1.asx">http://localhost/Sample1.asx</a> and changes it to the following: </p>
<p><a>mms://localhost/Sample1</a> </p>
<p>This means that our Media Player control can process the link and stream the video. Now we have completed the XSL Styles, we need to upload the file into the style library and then import our web part onto the site. Once we edit the properties of the web part we can see that the style will be set to the newly created style called &quot;MediaPlayer&quot;. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi14.png"> </p>
<p>As the Media Player control was set to not automatically play the CQWP should then render as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi15.png"> </p>
<p>The user then has the option to only play a specific video stream or play them as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051208_1430_CQWPHINTSWi16.png"> </p>
<p>As you can see the key to using the CQWP is to learn how to work with HTML, JavaScript, CSS and of course XSL. These core skills will mean that you can create some great effects within your sites.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Mon, 12 May 2008 15:32:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/05/12/cqwp-hints-–-windows-media-player.aspx</feedburner:origLink></item><item><title>CQWP HINTS – Import XSL Styles into “ItemStyle.xsl”</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/287715217/cqwp-hints-–-import-xsl-styles-into-“itemstyle-xsl”.aspx</link><guid isPermaLink="false">/archive/2008/05/10/cqwp-hints-–-import-xsl-styles-into-“itemstyle-xsl”.aspx</guid><description><![CDATA[<div class="ExternalClass375CFB77DECF47BA9B6D8FFDA73D00B0">
<p><strong><font color="#ff0000">NOTE: Brendon beat me too the next post!! :-)</font></strong></p>
<p><strong><font color="#ff0000">Check it here: </font></strong><a href="http://blogs.sharepointguys.com/brendon/sharepoint-2007/programming/connecting-the-cqwp-without-changing-itemstyle-xsl/">http://blogs.sharepointguys.com/brendon/sharepoint-2007/programming/connecting-the-cqwp-without-changing-itemstyle-xsl/</a></p>
<p>One of the problems with using the CQWP in SharePoint is that if you want to try and style the content it renders you, have to add the new styles into the &quot;ItemStyle.xsl&quot; file. This is great but also means that you have to manage the modification of these styles very closely as this is the only file that is referenced. What we can do however to remedy this is to create different XSL style sheets and reference these within the &quot;ItemStyle.xsl&quot;. This means that the styles can be modified without actually messing with the &quot;ItemStyle.xsl&quot; and you are also able to set permissions for editing the specific files. So enough about talking about it lets look at how we do it. Firstly I have taken a copy of the &quot;ItemStyle.xsl&quot; so I can work offline and then upload when ready. I am also using Visual Studio 2008 as my XSL editor. So let's open up the &quot;ItemStyle.xsl&quot; file and copy the default style: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm1.png"> </p>
<p>We will now need to create a new XSL Style sheet; mine is called &quot;Imported.xsl&quot;. We need to add this code block to the new XSL style sheet and make the following changes: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm2.png"> </p>
<p>The name in this example has also been changed to the following: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm3.png"> </p>
<p>Now we have the new XSL Style Sheet completed lets simply modify the &quot;ItemStyle.xsl&quot; to not only import the new style sheet but also create a new style that calls the template we added to the new XSL Style Sheet. </p>
<p><strong>Import Statement:<img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm4.png"></strong> </p>
<p><strong>Custom Style:<img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm5.png"></strong> </p>
<p>Now we have our new style sheet completed we need to upload them to the &quot;Style Library&quot;. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm6.png"> </p>
<p><span style="color:red"><strong>NOTE: Make sure these files are checked in </strong></span></p>
<p>Once the files are checked in you should be now be able to select the style from the presentation section of the CQWP. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm7.png"> </p>
<p>Using our demonstration XSL Style Sheet it should render as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/051008_2145_CQWPHINTSIm8.png"> </p>
<p>As you can see this approach gives you a better option when creating XSL Styles that are to be used by the CQWP. This allows for easier management of changes of the styles, as well as controlling the overall changes being made to the &quot;ItemStyle.xsl&quot;.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Sat, 10 May 2008 22:49:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/05/10/cqwp-hints-–-import-xsl-styles-into-“itemstyle-xsl”.aspx</feedburner:origLink></item><item><title>My Personal Web Part Project</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/282065111/my-personal-web-part-project.aspx</link><guid isPermaLink="false">/archive/2008/05/02/my-personal-web-part-project.aspx</guid><description><![CDATA[<div class="ExternalClass5750A34A399E4FDCB5D6BA21681D42B9">
<p>Over the past week or so I have started to build a web part that I have been meaning to build for a while. This web part will do the following: </p>
<ol>
<li>Connect to a site collection </li>
<li>Connect to a site </li>
<li>Connect to a list or library </li>
<li>Connect to a specific view within the list or library </li>
<li>Apply a custom XSL to the returned results </li>
<li>Apply a custom CSS to the returned results </li>
<li>Render a nice looking aggregation web part </li></ol>
<p>This has been a personal project of mine for a while now, it originally started as a CQWP replacement which another version I am working on will become. This version is more about aggregating specific content from views. The reason for this is that over the past year or longer I have noticed that business users are after a simple approach of aggregating content into a page. They like the CQWP but also like &quot;hand-crafting&quot; views on lists and libraries to get the desired results that they need. This web part aims to assist with this not only be allowing users to select the views that they spent ages building but also allow for develops to style the outputted XML by using custom XSL and CSS. So let me show you what it looks like: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW1.png"> </p>
<p>Once the web part is added to the page you will need to configure it via the tool pane as you would normally with any web part. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW2.png"> </p>
<p>When the tool pane opens the first configuration section simply is the about bit but also allows you to set the title that you want to appear on the web part once it is rendered on the page. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW3.png"> </p>
<p>Now we have our title set we need to set the data connections, i.e. the site collection etc that we wish to connect to. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW4.png"> </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW5.png"> </p>
<p>This list is populated once you add the web part to the page. Just ignore the empty dropdown lists not very user friendly but it is just the debug version <span style="font-family:Wingdings">J</span> </p>
<p>Once you have selected the site collection the list of sites is presented: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW6.png"> </p>
<p>Once you have selected the site or sub site the list of lists and libraries is then populated. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW7.png"> </p>
<p>At the moment it also shows any system lists and libraries, obviously this would be changed if it was finished. Now we need to select the lists and the view list will be populated: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW8.png"> </p>
<p>For this I am using a new view I created called &quot;NewsItems&quot;. Now we have our data connection and have enabled the &quot;Show Data&quot; option we only need to set the XSL and CSS styles that we will use. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW9.png"> </p>
<p>The list of XSL styles and CSS can come from a specific library or use the &quot;XSL Style Sheets&quot; location in the &quot;Style Library&quot; of the site collection. The lists are populated by reading the lists and loading the XSL filename or CSS filenames: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW10.png"> </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW11.png"> </p>
<p>Once we apply the following settings we are then presented with the following web part with the relevant data. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1157_MyPersonalW12.png"> </p>
<p>It is only in early development and needs improvements in the user interface and also the whole security thing needs sorting out, so nothing too much!! <span style="font-family:Wingdings">J</span> </p>
<p>Anyway just wanted to get peoples reaction if you like it or you think it is really rubbish let me know. All feedback welcome!! </p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Fri, 02 May 2008 12:58:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/General/default.aspx">General</category><category domain="http://www.helloitsliam.com/archive/tags/Personal Projects/default.aspx">Personal Projects</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://www.helloitsliam.com/archive/tags/WSS/default.aspx">WSS</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/05/02/my-personal-web-part-project.aspx</feedburner:origLink></item><item><title>Remember Everything - EVERNOTE</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/282065112/evernote.aspx</link><guid isPermaLink="false">/archive/2008/05/02/evernote.aspx</guid><description><![CDATA[<div class="ExternalClass7BB958FA3C724365BBB76C0B2A77FE44">Pop over to this site and see if you need this in your life!!</div>
<div class="ExternalClass7BB958FA3C724365BBB76C0B2A77FE44"> </div>
<div class="ExternalClass7BB958FA3C724365BBB76C0B2A77FE44"><a href="http://evernote.com/">http://evernote.com/</a></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Fri, 02 May 2008 12:53:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/General/default.aspx">General</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/05/02/evernote.aspx</feedburner:origLink></item><item><title>CQWP HINTS - Only show more link if needed</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/282057949/cqwp-hints-only-show-more-link-if-needed.aspx</link><guid isPermaLink="false">/archive/2008/05/02/cqwp-hints-only-show-more-link-if-needed.aspx</guid><description><![CDATA[<div class="ExternalClass127B31159B7C405B807D7EEBA7789B4C">
<p>In the last posts we looked at tweaking the XSL slightly to change the title URL. In this post we will continue with the CQWP and XSL. In one of my previous posts I showed how to add a &quot;[more]&quot; button and a short description that comes from the page. Someone recently emailed me and asked if there was a way of not showing the &quot;...[more]&quot; if there was no description or if the description was smaller than the sub string length that we apply within the XSL. So let's look at not showing the &quot;...[more]&quot; link if there is no value first. Firstly let's look at the issue itself. The XSL style when applied should look like this when the data is populated: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1148_CQWPHINTSOn1.png"> </p>
<p>Notice how the item that does not have a description or the value populated it still renders the &quot;...[more]&quot; option. This behaviour is expected based on the style that is being used, but is not the best looking for the users of the system. So let's modify our XSL slightly to fix this. The change is very simple and is similar to the previous post. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1148_CQWPHINTSOn2.png"> </p>
<p>This change when applied will then render the CQWP as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1148_CQWPHINTSOn3.png"> </p>
<p>Now this looks nicer and does not confuse the users with double links and links where there is no need. So now let's look at making the &quot;...[more]&quot; option only appear if it meets the substring value is bigger than the &quot;250&quot; characters we specified within our XSL style. The changes we need to make are as follows: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1148_CQWPHINTSOn4.png"> </p>
<p>We simply use the &quot;string-length&quot; comparison function within XSL to test its length before we render the link. The results are as shown: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1148_CQWPHINTSOn5.png"> </p>
<p>Notice how the XSL we have created will show the following: </p>
<ol>
<li>Title with no more button if there is no description </li>
<li>Title and Description with no more button if the length is less than the specified substring value </li>
<li>Title and Description plus the more button if the description is more than the specified substring value </li></ol>
<p>This can be applied to any field and any kind of code that you wish to display as part of the XSL for the CQWP.</p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Fri, 02 May 2008 12:50:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/05/02/cqwp-hints-only-show-more-link-if-needed.aspx</feedburner:origLink></item><item><title>CQWP HINTS – Swap the “title” URL from “$SafeLinkUrl” to a custom URL</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/282035042/cqwp-hints-–-swap-the-“title”-url-from-“safelinkurl”-to-a-custom-url.aspx</link><guid isPermaLink="false">/archive/2008/05/02/cqwp-hints-–-swap-the-“title”-url-from-“safelinkurl”-to-a-custom-url.aspx</guid><description><![CDATA[<div class="ExternalClass056D0791AD98406EBA26C577BC2834BD">
<p>Hopefully by now you may know that I am a great advocate of the Content Query Web Part within the SharePoint environment. Over the past few weeks I have had lots of requests for little style changes or just general questions on how to do things with the CQWP. This post will talk about a couple of them. The first one is I had a requirement to override the link that the title was using within the CQWP. So let me explain, let's say you have a CQWP that consumes various news items that are stored as pages within SharePoint. Within the content type that is used for the page layout there is a field that for this demonstration will be called &quot;CustomURL&quot;. The requirement is if the custom URL field is populated then change the link that normally goes to the news page to this instead, and obviously visa versa. So let's look at how this works. </p>
<p>If we add a normal CQWP to the site it will by default list pages that are show on the page: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw1.png"> </p>
<p>So this CQWP is simply listing two pages that exist within my publishing site. The page layout I am using is the standard article page however I have added an extra field to the content type: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw2.png"> </p>
<p>This custom URL field is then added to the page layout by using SharePoint Designer. If you edit the page layout within SPD you should see the fields on the right hand as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw3.png"> </p>
<p>Now you can simply drag and drop the control to the page as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw4.png"> </p>
<p>The page once saved and used should now show the control and you should be able to edit the field value when creating new pages. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw5.png"> </p>
<p>So now we have our new page layout we are ready to consume the required values using the CQWP. So firstly let's export the web part down and make sure that the web part is presenting the correct fields. We c an check this first by using the following XSL style that can be added to the item style XSL file, this style will simply render the fields that are already being pushed down through the CQWP. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw6.png"> </p>
<p>So if we use this style it should render as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw7.png"> </p>
<p>If the field does not show in the outputted raw XML then simply export the web part and make the following changes to the &quot;CommonViewFields&quot; line: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw8.png"> </p>
<p>The web part will then need to be uploaded into the site again; if you then apply the raw XML style it should now render the new field. So now we have the field being retrieved within the XML we can now create the relevant XSL style that we need. So let's remind ours self of the requirement, if the Custom URL field is blank then use the default URL that takes you to the page, if it contains a value then change the URL to that instead. For this I am going to copy the default style in the &quot;itemstyle.xsl&quot; file and change it slightly. In order to do the swapping out of the URL we need to use some &quot;&lt;xsl:if test&gt;&quot; statements. The following is the style I am using: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw9.png"> </p>
<p>The most important code here is the following: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw10.png"> </p>
<p>As you can see we are simply doing an if-statement comparison against the field value and then re-drawing the link as required. If I now access the CQWP without the custom URL populated it should render the actual page URL: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw11.png"> </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw12.png"> </p>
<p>If I now populate the custom URL field with a value such as <a href="http://www.sharepointpedia.com">http://www.sharepointpedia.com</a> it will now show that as the link and take you there instead of the direct page link: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/050208_1029_CQWPHINTSSw13.png"> </p>
<p>As you can see this can be very effective if you often have short pieces of news and then links direct to the external web site or actual content. </p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Fri, 02 May 2008 11:52:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/05/02/cqwp-hints-–-swap-the-“title”-url-from-“safelinkurl”-to-a-custom-url.aspx</feedburner:origLink></item><item><title>MOSS2007 – Visual Studio 2008 Testing (Load Test)</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/270191146/moss2007-–-visual-studio-2008-testing-load-test.aspx</link><guid isPermaLink="false">/archive/2008/04/14/moss2007-–-visual-studio-2008-testing-load-test.aspx</guid><description><![CDATA[<div class="ExternalClassA793C3A45DB941C483CCB83EED89ADF7">
<p>Hi again, in the last post we looked at testing the search functionality within SharePoint 2007 by using Visual Studio 2008 Team Suite Edition or you could use the testing edition. In this post we will look at creating a load test for the SharePoint Server that will simply have a batch of users access the homepage and then perform the search as we outlined it in the last post. So begin with as before we have our testing solution and we also have our testing project, to this project we are going to add the following: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis1.png"> </p>
<p>This template will load the following wizard: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis2.png"> </p>
<p>The first step in creating a load test is to give it a name: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis3.png"> </p>
<p>You will also notice the following options: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis4.png"> </p>
<p>The &quot;think time profile&quot; section is used to add a delay between each unit test. In the scenario of dong unit tests this is very useful. For our demonstration we will leave it set to the option shown above. The next option allows us to set the load of the test, such as the amount of users. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis5.png"> </p>
<p>If you take a closer look at the options here we can set either a constant load that would mimic a concurrency of 100% or change it to a staged approach where we can have a certain amount of users for so long then some more with a maximum load that we define. For the demonstration we will look at using the standard &quot;Constant Load&quot; and set this to 25 users. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis6.png"> </p>
<p>Once you have selected the amount of users there are various types of load we can apply to the server. There are three options: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis7.png"> </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis8.png"> </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis9.png"> </p>
<p>For our test we will use the first option. Once you have selected the test now we need to select the actual defined tests that we created earlier on. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis10.png"> </p>
<p>Press the &quot;Add&quot; button and then select the following tests: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis11.png"> </p>
<p>We could add more at this point but for our test this will do. In one of the following posts I will create a larger load test project which will include some of the tests you can see above. When the tests are loaded we can then set the priority of the tests, in the picture below, I have set them to 50% each but could if needed change this based on what kind of testing was needed and what work the user base would be doing daily. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis12.png"> </p>
<p>Next we are able to set the browser type that we can use, in our example we will use Internet Explorer 7, but it could be any from the list below. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis13.png"> </p>
<p>Now we get to select what bandwidth we wish to use, this is great as this will tailor the test and the results to which ever latency we set. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis14.png"> </p>
<p>Last but not least we need to set the duration of the test. On this screen we are able to either set duration or set test iteration instead. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis15.png"> </p>
<p>For our test I have left it as&quot;load test duration&quot; and then set it to five minutes only. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis16.png"> </p>
<p>Just like creating a normal web test upon completion you sent back to Visual Studio 2008 and presented with a very similar layout to a recorded web test. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis17.png"> </p>
<p>As part of this wizard the system will work out which test and performance counters should be monitored. If we expand the list of counter sets you can see the following: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis18.png"> </p>
<p>I will not go through each of these as there are quite a few, suffice to say it picks up all the key ones such as memory, CPU, page access and even down to disk read access. Now that we have a project ready and built we can simply run it. When it initially starts the screen will look something like below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis19.png"> </p>
<p>In my test the following happened, which I was assuming would happen. This is mainly as I am running everything on a single VM. The status bar here not only lists the status of the load test but also any errors and threshold violations. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis20.png"> </p>
<p>Each of the links above can be clicked which will then show the actual details of the errors. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis21.png"> </p>
<p>In this demonstration we are not too concerned about the errors as it is a demo. If we leave the test to run for a while the following should start to happen: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis22.png"> </p>
<p>You will notice that the graphs begin to populate and that the colour chart at the bottom starts to populate with test result data. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis23.png"> </p>
<p>Once the test is completed the following will appear on the left showing a small synopsis of the whole test. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1914_MOSS2007Vis24.png"> </p>
<p>As you can see a test performed within Visual Studio for SharePoint 2007 returned a wealth of information that can be used to see how the system is performing. </p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Mon, 14 Apr 2008 20:17:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://www.helloitsliam.com/archive/tags/Testing/default.aspx">Testing</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/04/14/moss2007-–-visual-studio-2008-testing-load-test.aspx</feedburner:origLink></item><item><title>MOSS2007 – Visual Studio 2008 Testing (Search)</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/270077254/moss2007-–-visual-studio-2008-testing-search.aspx</link><guid isPermaLink="false">/archive/2008/04/14/moss2007-–-visual-studio-2008-testing-search.aspx</guid><description><![CDATA[<div class="ExternalClassB827CBF247864F798E57FF1B33864598">
<p>In a couple of the past posts we have looked at using Visual Studio 2008 Team Edition to test our SharePoint 2007 installation. In this post we will look at how to test the search capabilities of SharePoint 2007. There's no need for any background here so let's just get straight into it. As before we have our demo testing solution and we have a demo web test project. To this project I am now going to select to add a new web test. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis1.png"> </p>
<p>Make sure that you select the &quot;Web Test&quot; template and set the name as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis2.png"> </p>
<p>So as before the web browser should open and be ready for recording. The recording facility is fantastic but as you get better at using it you may find it is easier to manually create the tests you require. Anyway let's begin by accessing the search centre home page. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis3.png"> </p>
<p>As before notice how the URL visited is listed in the recording pane. To show you how it works simply search for the term &quot;SharePoint&quot;, this should then load the search results on the right and also add this to the recording pane. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis4.png"> </p>
<p>Now we have our little web test simply press the &quot;Stop&quot; button and it should take you back to Visual Studio 2008. The web test should then be listed as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis5.png"> </p>
<p>As with the last few posts we will remove the following elements, for our demonstration we do not need them: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis6.png"> </p>
<p>Our web test should then show only the items that we wish to use. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis7.png"> </p>
<p>The purpose of this test is to not only test that search terms can be found but also to load test this process. To make this a true test we want to automate the search terms that are used. In the real world users would not search for the exact same word every time. To make it a real test we will set the web test to use four different words for the test. For this we will go back to our &quot;TestParamaters.xml&quot; file and add the following: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis8.png"> </p>
<p>We now need to connect our web test with a data source and select the correct values to use within the web test project. </p>
<div>
<table style="border-collapse:collapse" border="0">
<colgroup>
<col style="width:545px">
<col style="width:93px"></colgroup>
<tbody valign="top">
<tr>
<td style="border-right:black 0.5pt solid;padding-right:7px;border-top:black 0.5pt solid;padding-left:7px;border-left:black 0.5pt solid;border-bottom:black 0.5pt solid">
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis9.png"> </p></td>
<td style="border-right:black 0.5pt solid;padding-right:7px;border-top:black 0.5pt solid;padding-left:7px;border-left:medium none;border-bottom:black 0.5pt solid"> </td></tr>
<tr>
<td style="padding-right:7px;padding-left:7px">
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis10.png"> </p></td>
<td style="padding-right:7px;padding-left:7px"> </td></tr>
<tr>
<td style="padding-right:7px;padding-left:7px">
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis11.png"> </p></td>
<td style="padding-right:7px;padding-left:7px">
<p> </p>
<p> </p></td></tr>
<tr>
<td style="padding-right:7px;padding-left:7px">
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis12.png"> </p></td>
<td style="padding-right:7px;padding-left:7px"> </td></tr>
<tr>
<td style="padding-right:7px;padding-left:7px">
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis13.png"></p></td>
<td style="padding-right:7px;padding-left:7px"> </td></tr></tbody></table></div>
<p>Once our data source is connected it should be listed below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis14.png"> </p>
<p>Firstly we need to modify the &quot;Query String&quot; for the search term to be a data bound option. To do this select the item in the list and then modify the properties of the value field. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis15.png"> </p>
<p>Once we have set the query string value to the new value from the XML data source, we need to do the same as previously shown in the past blog post, the server URL needs to be read from the XML Data Source as well. This should then mean our web test looks as shown below: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis16.png"> </p>
<p>Now we have created our simple test we need to run the test. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis17.png"> </p>
<p>The results should then come back as you would expect, however notice that the web test only selected the top value from the XML data source and not the rest. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis18.png"> </p>
<p>To ensure it reads each search term and runs the test accordingly select the &quot;Edit run settings&quot; option. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis19.png"> </p>
<p>The current settings should be set to only run a single test: </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis20.png"> </p>
<p>Modify the settings as shown below, by selecting the &quot;One run per data source row&quot; option. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis21.png"> </p>
<p>Now when we save the web test and re-run it; it should run once for each value in the search terms. </p>
<p><img alt="" src="http://www.helloitsliam.com/Lists/Photos/041408_1537_MOSS2007Vis22.png"> </p>
<p>This means that we can now add more search terms to the XML data source and the test will adopt this. Search can be one of the best quick wins that you can give to a business that is why testing the performance should be just as important as uploading documents or creating team sites. In the next post we will create a full performance test that will use all the tests we have cone so far and run them for batches of users over a period of time. </p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Mon, 14 Apr 2008 16:39:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://www.helloitsliam.com/archive/tags/Testing/default.aspx">Testing</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/04/14/moss2007-–-visual-studio-2008-testing-search.aspx</feedburner:origLink></item><item><title>Lightning Conductor Web Part – Lightning Tools</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/267091134/lightning-conductor-web-part-–-lightning-tools.aspx</link><guid isPermaLink="false">/archive/2008/04/09/lightning-conductor-web-part-–-lightning-tools.aspx</guid><description><![CDATA[<div class="ExternalClassB4BBA4C696974B68B8369C40ADC74472"><p>Like most SharePoint people, I like to find tools that enhance WSS and MOSS over and above the out-of-the-box toolset. One of the companies that keep creating little web parts and applications is <a href="http://www.lightningtools.com/">Lightning Tools</a>. As well as all the Business Data Catalog tools and web parts they recently released the Lightning Conductor Web Part which pushes the statement: 
</p><h3><span style="color:red;font-size:10pt"><em>&quot;The Lightning Conductor Web Part allows you to aggregate data from Lists and Libraries throughout the current Site Collection, and across Multiple Site Collections.  If you want to see all of your Tasks in one Web Part, instead of navigating to lots of different sites to view your Tasks list, the Lightning Conductor Web Part can perform that for you. </em></span>
	</h3><p><strong><span style="color:red;font-size:10pt"><em>You can base the Lightning Conductor Web Part on List Types, or Content Types, Filter the data based on any column in the List or Library, and apply styles to the Web Part...............&quot; </em></span>
		</strong></p><p>As any good SharePoint person would do I decided to test it and see how easy it was to use and if it indeed did do all that it says on the tin. So let's begin. 
</p><p>Firstly you will need to install the solution package file that comes as part of the download. This is all outlined within the installation documentation that comes with the web part. So now we have installed it, you will need to make sure you activate the &quot;Site Collection&quot; feature. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo1.png" alt="">
	</p><p>Once it has been activated the web part will become active and show up in the list of web parts that you can use. In my demonstration I am going to use a demo team site and my system has the following site collections: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo2.png" alt="">
	</p><p>So now we need to access our demo team site and edit the page: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo3.png" alt="">
	</p><p>Now we can add the Lightning Conductor Web Part from the list. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo4.png" alt="">
	</p><p>The web part should be added to the page and should render as shown below, obviously I am using the trial version. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo5.png" alt="">
	</p><p>So let's begin at looking at the functionality of the web part. So when you access the tool pane you get presented with the following options: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo6.png" alt="">
	</p><p>You can choose to use items from the following: 
</p><ol><li>Multiple Site Collections 
</li><li>Single Site Collection 
</li><li>Specific Site and Sub sites 
</li><li>Specific List 
</li></ol><p>If we select the multiple site collections option we get a nice little checkbox list of the site collections that exist within the farm. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo7.png" alt="">
	</p><p>Notice if we go back to the &quot;show items from single site collection&quot; option you can select anyone of the site collections from the dropdown list. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo8.png" alt="">
	</p><p>If we decide instead to choose a specific site and its relative sub sites the following will be displayed: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo9.png" alt="">
	</p><p>When the browse button is pressed the tree view control is listed and shows the sites that exist within the site collection that is selected from the dropdown list shown earlier. If you decide instead to choose a specific list then the following be shown instead: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo10.png" alt="">
	</p><p>Notice the tree view is rendered showing all the lists and sub sites that exist within the current selected site collection. For this demonstration we will use the multiple site collections option as shown below: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo11.png" alt="">
	</p><p>Within each site collection I have created the following content type for documents that I add to the libraries. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo12.png" alt="">
	</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo13.png" alt="">
	</p><p>This content type exists in each of the site collections that are selected above. Now when we go back to our web part we can now select a list type, for this demonstration we will choose the &quot;Document Library&quot; option. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo14.png" alt="">
	</p><p>Once we have this selected we will then select a content type group and the relevant content type that we wish to use. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo15.png" alt="">
	</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo16.png" alt="">
	</p><p>Once we have these set we can now press apply on the web part tool pane and it should render as shown below: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo17.png" alt="">
	</p><p>Great it works and lists the items I asked for, but what about if we need to filter the results set by the new site column in the content type. In the content type is a field called &quot;Document Classification&quot; with the following items: 
</p><ol><li>Top Secret 
</li><li>Secret 
</li><li>Restricted 
</li><li>Confidential 
</li><li>Public 
</li></ol><p>So let's let say I wanted to only show documents that meet this content type criteria but filter down to &quot;Secret&quot; classification only. Well to do this go back to the web part and select the filter section. Select the following filter condition from the dropdown list. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo18.png" alt="">
	</p><p>We can then type our criteria as shown below. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo19.png" alt="">
	</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo20.png" alt="">
	</p><p>At the bottom of the filter options we have the ability to add more filter options by pressing the following icon: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo21.png" alt="">
	</p><p>So for this demonstration we will add another filter option using the &quot;OR&quot; operator and set it to find anything set to public as the classification. This should then return the results as before but only display the items that are classified as &quot;Secret&quot; and &quot;Public&quot;. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo22.png" alt="">
	</p><p><span style="color:red"><strong>NOTE: Whatever fields you wish to display in the web part rendered results, must exist within the default views for that list or library. To make the &quot;Document Classification&quot; field show up this is what I had to do. </strong></span>
	</p><p>We have a few other options such as using a custom XSL style sheet, this is great and allows for creation of your own layouts, but make sure you have all the correct fields that you need in the XSL or it will error. The last few features are great they are shown below: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo23.png" alt="">
	</p><p>This is useful when you have limited space on the page or you also have lots of files, items that you cannot possibly view in one go. I have configured this as shown below: 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo24.png" alt="">
	</p><p>Now when this is applied it should render as before but you will now notice where one of the item containers (lists or libraries) has multiple files over the maximum level added above it should be paged. 
</p><p><img src="http://www.helloitsliam.com/Lists/Photos/040908_1534_LightningCo25.png" alt="">
	</p><p>This means that you can navigate through the lists or libraries that have over the limit but those smaller ones will still be fine and rendered as normal. As the first incarnation of this web part I have to say that I am impressed with it and it does what it says on the &quot;tin&quot;. This is a very versatile web part and one that you should have with you when doing a SharePoint deployment. 
</p><p>Big shout to the &quot;Lightning Tools&quot; boys!! </p></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Wed, 09 Apr 2008 16:37:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/Development/default.aspx">Development</category><category domain="http://www.helloitsliam.com/archive/tags/Office System 2007/default.aspx">Office System 2007</category><category domain="http://www.helloitsliam.com/archive/tags/SharePoint/default.aspx">SharePoint</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/04/09/lightning-conductor-web-part-–-lightning-tools.aspx</feedburner:origLink></item><item><title>Very Happy - Re-Awarded MVP MOSS</title><link>http://feeds.feedburner.com/~r/helloitsliam/~3/262002247/very-happy-re-awarded-mvp-moss.aspx</link><guid isPermaLink="false">/archive/2008/04/01/very-happy-re-awarded-mvp-moss.aspx</guid><description><![CDATA[<div class="ExternalClass2D140D0E5BD646B08447E4DB73A6B179"><div>Just wanted to say a great big thank you to anyone who voted for me again for this years cycle of MVP Awards!! This will be my second year as an MVP!! Great Big thank you, hope I can make sure I share even more this year!! </div>
<div> </div>
<div>Thank you.</div></div>]]></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Liam Cleary</dc:creator><pubDate>Tue, 01 Apr 2008 15:34:00 GMT</pubDate><category domain="http://www.helloitsliam.com/archive/tags/All Me!! Baby!!/default.aspx">All Me!! Baby!!</category><category domain="http://www.helloitsliam.com/archive/tags/General/default.aspx">General</category><feedburner:origLink>http://www.helloitsliam.com/archive/2008/04/01/very-happy-re-awarded-mvp-moss.aspx</feedburner:origLink></item><feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetFeedData?uri=helloitsliam</feedburner:awareness></channel></rss>
