Nick Hadlee's Blog on SharePoint and Other Occasional Rants…


Mostly Free Screencasts
May 31, 2009, 1:41 pm
Filed under: SharePoint, Training

This looks like a great free resource for some SharePoint screencasts. Some of the content is subscriber only but there is heaps that isn’t, I haven’t checked them out yet but intend to.

I usually add all the useful resources I find to a knowledge base of helpful SharePoint links. Do you know of any other good online resources?



When an Index Server Can’t Stop ‘Stopping’
May 27, 2009, 11:10 pm
Filed under: Administration, SharePoint, SQL, Troubleshooting

Due to some erratic behavior with a farms index server it was necessary to uninstall the indexing role and then re-provision it. The problem was during the uninstall the index service got stuck in a stopping state. A quick check in the error logs pointed to the SQL server. The SQL server logs were a little more descriptive with a 17310 event and even included the words ‘fatal’:

Event Type:    Error
Event Source:    MSSQLSERVER
Event Category:    (2)
Event ID:    17310
Date:        M/dd/yyyy
Time:        h:mm:ss yy
User:        N/A
Computer:    xxxx
Description: A user request from the session with SPID XXX generated a fatal exception. SQLServer is terminating this session. Contact Product Support Services with the dump produced in the log directory.

I have found when troubleshooting Google can either be a savior or a massive run-around, usually it depends on the reliability of the source and how good your searching skills are. In this situation what appeared to be a Chernobyl-esq problem had been encountered by a few people and ensuring that service pack 2 was installed on the SQL Server was the recommended fix. After applying the service pack the SQL logs were clear and the index service was able to be uninstalled and re-provisioned.

Unresolved Questions

The biggest question in the aftermath was why was a production SQL server not running the latest service packs? Surely someone has neglected their duties?

The infrastructure guy responsible for the SQL server has an interesting theory, especially if you like the implausible, the current blame for this issue was the installation of the SQL business intelligence studio onto the server which downgraded the SQL dll’s back to the RTM version. This will make a interesting test and would represent a massive bug if it was the case. Has anyone come across this or something similar before? It wouldn’t be the first software bug and it won’t be the last…



Service Pack 2 and SharePoint Kaboom!
May 23, 2009, 2:26 pm
Filed under: SharePoint

It looks like the SharePoint team have accidentally introduced a small bug into SharePoint with the release of service pack 2. Basically if you installed service pack 2 your SharePoint installation is on a 180 day countdown to expiry. Seriously!

Sometimes it is good not to be an early adopter…

Read more about it and the fix at the SharePoint Team Blog.



Customise Breadcrumbs with jQuery the SharePoint Swiss-Army Knife
May 23, 2009, 2:22 pm
Filed under: Development, jQuery, SharePoint, WCM

Breadcrumbs in SharePoint seem to be a pet hate for many people, but they are a necessary evil as they provide a fundamental part of the SharePoint navigation. The stock standard SiteMapProvider SPContentMapProvider is good from within libraries and lists but is lousy for pages as described by Heather Solomon:

The main issue with the WSS site map provider is it will show directories you don’t want it to (mainly the Pages library) in the breadcrumb, and on some pages it will show ".aspx" on the end of the page name. The MOSS site map provider is more graceful, it just doesn’t show the list or library name in the breadcrumb.

So using the WSS breadcrumb we would get the following breadcrumb from within a library or list:

Site Name > Library or List Name > Folder Name

That is pretty useful for users, especially if they have a habit (I’m tempted to say bad habit!) of using folders to manage their content. The problem is what you see when viewing a page:

Site Name > Pages > PageName.aspx

What we really want to see is a very stripped down breadcrumb more like what the CurrentNavSiteMapProviderNoEncode provides:

Site Name

The best approach is to modify the relevant page layouts so we are using the CurrentNavSiteMapProviderNoEncode for our page level breadcrumbs. Then we have the SPContentMapProvider in the master page as the default breadcrumb provider and the nicer page level breadcrumb coming from CurrentNavSiteMapProviderNoEncode. The problem is what if we have lots of page layouts or even worse we don’t have any page layouts at our disposal – WSS or non publishing MOSS sites? Using a bit of jQuery we can mimic what the we could get with the CurrentNavSiteMapProviderNoEncode by using only the SPContentMapProvider breadcrumbs:

That might not be optimal jQuery (in fact I could almost guarantee its not so if anybody can suggest optimisations please let me know!) and this solution is not going to be very useful unless you can deploy it into your entire site via a web or site scoped feature. Jan Tielens provides a really good example on how to integrate jQuery into SharePoint using the AdditionalPageHead delegate control.

$(document).ready(function() {
	var pageIndex = -1;
	var offset = 2;
	var $spans = $("#ctl00_PlaceHolderTitleBreadcrumb_ContentMap > span");

	if($spans.eq($spans.length - 1).text().search(/\.aspx$/) > -1) {
		$spans.each(function(i) {
			if( $(this).text() == "Pages" ) {
				pageIndex = i;	
			}
		});	

		$spans.each(function(i) {
			if(i == (pageIndex - offset)) {
				$(this).addClass("ms-sitemapdirectional");
				var innerText = $(this).text();		
				$(this).empty();	
				$(this).text(innerText);
			} else if((pageIndex != -1) && (i > (pageIndex - offset))) {
				$(this).empty();
			}
		});
	}
});

Want to know more about jQuery? A simple google search on jQuery+SharePoint is a good start or take a look at what Jan Tielens or the guys and gals at End User SharePoint have got to say.



My SharePoint Saturday 16-05-09
May 16, 2009, 11:34 am
Filed under: Development, Search, SharePoint, WCM

I have so many posts in draft status and nothing ever getting published, therefore this is the super-quick-two-things-to-check-up-on-later post. As usual, at least of of late, the most interesting content I am finding is coming from twitter tweets. This just goes to show Joel Oleson’s post on the SharePoint community which talked about technologies like twitter is a fairly accurate reflection on the current state of things.

Via @harbars: Labs/samples for #SharePoint web content management on http://www.mssharepointdeveloper.com #WCM.

Via @SharePointMVPs: Matthew McDermott’s search session at Tech Ed OFC317 Search Challenges and Tricks

I must really get around to putting up those other posts!

[Updated 17-05-09]

A couple more interesting things from today:

Reza Alirezaei (@rezaal): Working with Structured Data in Microsoft Office SharePoint Server 2007 (Part 4): SharePoint Designer. Includes a nice demo on how to create a master/detail views on data with the incredibly useful Data Form Web Part.

Lars Fastrup: Microsoft SharePoint 2010 news from TechEd US 2009. Includes some interesting observations about new functionality/features in SharePoint 2010, like the office ribbon, gleaned by seeing it in action during some presentations.



SharePoint Saturday Mornings

Perhaps this is a bit unhealthy but Saturday morning seems to the time when I am catching up with the aggregated feeds and generally perusing the web. A few recent posts stood out as pretty useful so this is my online reminder to have a look in some further detail again next week. Emailing the links won’t have the same effect as a quick post.

1.) Ivan Wilson was talking about the Storage Space Allocation Reports that can be viewed by Site Collection administrators. Generally SharePoint has some pretty basic reporting out-of-the-box, and these set of stats on the physical storage being used by lists, libraries and documents in your site collection definitely help in getting some better information about your SharePoint environment from SharePoint itself. I didn’t see anything about the sub-sites though? I am hoping there is some site usage reporting too as this is a fairly fundamental statistic. Largest sites in the site collection would definitely be one of the things I would want to view from a storage allocation report. Ivan mentions these reports are only available if the site collection has been allocated a storage quota, which is generally good practice to keep the site collection storage within some defined limits, and apart from getting managable site collection databases by using storage quotas there is the added bonus of these reports.

2.) Adding some structure to Wikis via templates by Michael Hofer was mentioned by the the folks at Get the Point. They said this approach was recently used by Microsoft for a critical project. That’s a pretty good endorsement so I think I am going to look at this one a bit more closely as it will fit some upcoming requirements on a project.

3.) Gary Lapointe picked up on something posted by Stefan Goßner that moving site collections between farms is now a supported operation via Backup/Restore. Previously the only “supported” method was an Import/Export, which I have always found pretty slow and it can sometimes have its quirks, not to mention you can’t retain any of the object ID’s (GUID’s) of the sites, lists and libraries which is a real pain when webparts in your site stop working. A custom import method like one of Garys commands or the very useful Content Migration Wizard by Chis O’Brien is generally needed and almost a necessity for many content deployment scenarios.  Even though moving site collections using the command line hasn’t been problematic for me so far, its good to know it’s now a supported method to move content between farms.




%d bloggers like this: