14 December, 2006
09 November, 2006
MOSS 2007 comes with a number of filter web parts that makes it really easy to filter your SharePoint lists by connecting filter web parts with list view web parts. Out of the box, there are 10 filter web parts available.
There's one new filter web part in particular I find very powerful, the Current User Filter. With the Current User Filter you can filter the contents of web parts by using any property of the current user.
As an example of its use, imagine you build a corporate asset register based on a custom list. One of the columns, 'Asset Location', records which office the asset is located at. You also create a number of views to ease the management of the asset register (e.g. group by asset type, sort by purchase date, etc.).
For each local office, you nominate a person to look after the asset register for the local office. That person is only ever going to be concerned with the assets in the local office, so to make life easier for that person, you want to hide asset records from other offices.
Providing that the users have their Office property set in their user profile (imported from AD), you can use the Current User Filter web part to filter the asset register. Because all list views in SharePoint 2007 are proper web part pages, you can add the Current User Filter to all the views you have created for the asset register.
In the web part properties for the Current User Filter you can specify which user profile property to use (in this case 'Office'). You then simply connect the two web parts by sending the filter value from the Current User Filter to the appropriate column (in this case 'Asset Location') in the list view web part.
What you end up with is a central corporate asset register easing aggregated reporting. However, for the local asset manager at each office, it appears to be a local asset register only showing local assets.
Considering you can define your own user profile properties, there are unlimited opportunities for personalising list views. And because all list views now are web part pages, you can extend that personalisation to all the views of a list.
06 November, 2006
So it seems that the products will be available to businesses late November as planned. And it means that I probably won't need to configure another MOSS 2007 Beta 2 TR server.
Also, the final cut of the .NET Framework 3.0 has just been released. Click here for links to downloads for the runtime, the SDK and the Visual Studio extensions.
05 November, 2006
I came across this list of Criticisms of SharePoint 2007. I'm not trying to ruin the party right here before the official launch of SharePoint 2007 but like all technologies, the product does have some shortcomings.
No doubt that SharePoint 2007 is a big step forward from the previous version and unquestionably the product will continue its immense growth rate. However, as it has been the case with WSS 2.0 and SPS 2003, there will be a growing list of annoying things with WSS 3.0 and MOSS 2007 as we're getting further into the nuts and bolts of it. This is to be expected and it isn't a big worry if we can manage it with workarounds and tools or simply understand the limitations of the product.
31 October, 2006
SharePoint has always been good for basic business forms. A custom SharePoint list can be configured to collect any type of data and SharePoint automatically generates the forms for adding new items, editing items and viewing items. In SharePoint 2007, the workflow capabilities make SharePoint lists an even more attractive foundation for basic business forms.
In order to manage the data you collect from the form submitters, you will often have a few extra columns (e.g. status, notes, etc.) that you don't want the user to fill in when submitting the form. Using SharePoint Designer you can create a customised version of the form for adding new items that does not have your extra management columns on it.
- Open your site in SharePoint Designer.
- Browse to your list and open the 'NewForm.aspx' web form.
- Go File > Save As... and give the form a new name such as 'NewForm2.aspx'.
- Delete the default List Form Web Part from the page.
- Go Insert > SharePoint Controls > Custom List Form.
- In the List or Document Library Form dialog, select the appropriate list, content type and type of form.
- Click OK and a new Data Form Web Part is added with controls representing all the fields from the list (in my environment all the controls show "Error Rendering Control" but this does not affect the final result).
- In the newly added Data Form Web Part, delete the rows containing fields not to be shown to the user (ensure that fields being removed are not required fields without default values as this would prevent the user from submitting the form).
- At this point, you can do other customisation such as rearranging the fields if you wish.
- Save the site.
To give users access to your new form, publish a link to the NewForm2.aspx page. By using the Source query string parameter you can direct users back to where they came from after submitting the form. For example, if you publish the link on 'http://portal.example.com' then the URL to the form would be 'http://portal.example.com/Lists/YourList/NewForm2.aspx?Source=http://portal.example.com'.
14 October, 2006
There is a much improved solution for this in Office 2007. For any application based around data tracking and where offline support is a requirement, SharePoint 2007 and Access 2007 plays together very well. Access can be bound to SharePoint lists. This gives you the server-based benefits of SharePoint and provides you with a rich UI and offline support.
To start exploring this functionality try the following:
- Create an Issues Tracking list in SharePoint.
- Add some sample data to it.
- From the Actions menu, select Open with Microsoft Office Access.
- An Open in Microsoft Office Access dialog pops up. Make sure Link to data on the SharePoint site is selected and click OK.
The data is still linked to the SharePoint list. To take the data offline click Take All Offline on the External Data ribbon. You now have a local copy of the issues list including a rich interface to interact with it. The data is saved locally only.
At any point in time, you can hit the Synchronize button on the External Data ribbon which will synchronise the data with the SharePoint list on the server. If there are any conflicts, a Resolve Conflicts dialog will allow you to resolve them.
All in all, SharePoint and Access together provide a powerful and simple solution for data tracking. SharePoint enables proper sharing and backup of the data and Access provides a rich UI and offline support.
12 October, 2006
Update: The above link is broken. Try this post instead.
Update: For Adobe PDF iFilter 9 on 64-bit platforms, follow the guidelines provided by Adobe.
19 September, 2006
14 September, 2006
A growing number of organisations look to the international standard, ISO 15489, for guidance on records management. The question is whether a records management solution based on SharePoint 2007 and the rest of the Office 2007 suite of products is compliant with this standard. Other eDRM products like Meridio use their compliance with ISO 15489 as one of their main selling points.
Although not officially being fully compliant with ISO 15489, features of Office 2007 have been designed with this standard in mind. Microsoft has a Records Management Team that works across the different Office products to incorporate records management capabilities. Their blog is a must read if you are working with using SharePoint 2007 for records management.
What I would like to know is whether it is possible to build a records management solution with SharePoint 2007 (and the rest of Office) that is 100% compliant with ISO 15489. My initial assessment is that we are not far off. I would be very interested in hearing from anyone who can identify parts of ISO 15489 where SharePoint 2007 will have compliance issues and how these issues can be addressed.
13 September, 2006
I assume that will include a new build of WSS 3.0 and MOSS 2007. The SharePoint Team Blog has published some important upgrade instructions if you wish to have a crack at the new build.
22 June, 2006
From my experience, most users prefer to have the documents launch in the host application and thereby retaining the web page they opened it from behind it. The setting that controls this behaviour is located in Windows Explorer (not Internet Explorer) on the user's machine.
- Open Windows Explorer.
- Select Tools -> Folder Options... from the menu.
- Go to the File Types tab.
- In the Registered file types list, select the file you want to change the setting for (e.g. DOC).
- Click the Advanced button to open the Edit File Type dialog.
- At the bottom of the dialog there is a checkbox, Browse in same window, where you can specify whether the selected file type should be opened within the browser or launched in its host application when clicked on a web page.
You can either let the individual users choose their preferred setting or push it out with a policy. Remember to change the setting for all of the Office file types for consistency.
06 June, 2006
It's a neat little transparent desktop client that also allows you to specify an RSS feed for a news ticker at the bottom of the window. A good feed to add is the news feed from the official World Cup site.
Also along those lines, not long ago the Dutch company Tam Tam released free SharePoint web parts for the World Cup. You can use them to manage your internal tipping competition through your corporate intranet and the results will automatically be calculated from their public website.
28 May, 2006
The first question that comes to mind is how to go about the migration of existing implementations. To address this, Microsoft has set up a SharePoint Server Migration Centre with lots of whitepapers and links to webcasts and tools.
21 May, 2006
You can use Word to either create new posts or edit existing ones and then hit a publish button. They promise it will produce clean HTML rather verbose Word HTML. Beta 2 will support MSN Spaces, SharePoint 2007, Community Server and Blogger but more providers will be added before the final product ships.
Refer to Joe Friend's post for more details about Word's blog support including screen captures.
02 May, 2006
The current versions of WSS and MCMS have introduced their own API's that you need to learn in order to master the products. For example, WSS brought on web parts and MCMS added page templates to the mix.
With the release of ASP.NET 2.0, these concepts have been built into the underlying platform on which the new version of SharePoint (including WSS and what used to be MCMS) is based. I see two important positive implications of this.
Firstly, the skills required to master the products are no longer specific to the products and good solid base skills in ASP.NET 2.0 can be utilised for a wide range of applications and products.
Secondly, the features such as web parts and page templates are no longer purely of value to solutions based on the respective products. With ASP.NET 2.0 you can take advantage of these great technologies in your own custom applications.
The upshot is: Become a champion of ASP.NET 2.0 and its extended API and you will be able to leverage those skills in a much wider space than previously. All this, of course, is only looking at the world from the technical point of view. The business problems that the different products are designed to address will continue to differ fundamentally.
05 April, 2006
- 7 April 2006 1.30 am (AEST)
Developing Office 2007 Client Solutions
- 12 April 2006 1.30 am (AEST)
WSS v.3 Architecture
- 14 April 2006 1.30 am (AEST)
- 19 April 2006 1.30 am (AEST)
Developing and Deploying WSS Applications
- 21 April 2006 1.30 am (AEST)
Building InfoPath 2007 Solutions
- 26 April 2006 1.30 am (AEST)
Windows Workflow Foundation and Office 2007
- 28 April 2006 1.30 am (AEST)
Web Content Management in Office 2007 Servers
- 3 May 2006 1.30 am (AEST)
Business Intelligence in Office 2007 Servers
- 5 May 2006 1.30 am (AEST)
Portals in Office 2007 Servers
20 March, 2006
Now Todd Bleeker has released a CEWP that will add a section to your Quick Launch bar with a list of subsites underneath the current site. This is a very sought after feature and this is a great solution for it. It works perfectly and it is highly customisable.
The beauty of using a CEWP is that no assemblies need to be installed. All you need to do to install the web part on a virtual server is to drop the .dwp file in the 'wpcatalog' folder. The Sub Webs On Quick Launch web part can now be added to any web part page from the Virtual Server Gallery. I do recommend to change the defualt heading from Subwebs to Subsites to be consistent with the terminology used in the SharePoint UI.
13 March, 2006
The SharePoint Team Blog has released some information on new rollup web parts to be included in SharePoint 2007. This is great news as the current version of SharePoint has practically no out-of-the-box options in terms of aggregating content from various team sites.
The new web parts allow you to roll up all the documents created, modified or checked-out to you as well as including all the tasks assigned to you. It is not quite clear from the post how configurable these web parts will be but it appears that they are limited to documents and tasks and based only on content relating to the current user.
I agree with Robert te Kaat's post that more flexible rollup web parts are desirable. For example, it would be nice if a parent site could display a list of all tasks aggregated from all the child sites or an aggregated list of high priorty issues. This is currently achievable with FrontPage and the data view web part, but a standard web part for this would allow numerous quick wins when SharePoint is used as a project management tool.
09 March, 2006
After messing around for a while I realised I had forgotten to install SPS Service Pack 2 which solved the problem.
Have a look here for an overview of the performance gains when using SQL Server 2005 with SPS 2003.
01 March, 2006
If SharePoint is used as an internal productivity tool only, you should seriously consider to go with the standard look and feel. Just like you do with the other Office applications. You wouldn't even consider skinning Word or Excel to reflect your corporate brand. The focus is entirely on functionality and usability, not aesthetics.
There are some drawbacks of customising the SharePoint UI extensively. You end up with a non-standard implementation that is harder to maintain and support and there are also unknowns about how well a heavily customised implementation will come across to future versions of SharePoint. I'm not saying that branding SharePoint is a bad idea, but you should only engage in considerable customisation of the UI if the branding is really important. It might not always be worth it.
Using SharePoint as a productivity tool in internal teams should be seen as an extension to the other Office applications. It behaves like Office and it looks like Office. Yes, it does look boring if you've spend a lot of time with out-of-the-box SharePoint installations, but so does Word, Excel and the rest of Office. Like with any other deviation away from standard configuration, have a good reason before you do it.
23 February, 2006
To accomplish this, create a calculated field that returns a single line of text and has the following formula:
=YEAR([Due Date])&"-"&CHOOSE(MONTH(DATEVALUE("1/"&MONTH([Due Date])&"/"&YEAR([Due Date]))),"01. January","02. February","03. March","04. April","05. May","06. June","07. July","08. August","09. September","10. October","11. November","12. December")
Then select this field under Group By when customising your view. It can also be used for filtering and a similar calculated field can be used to group by week or by year.
Thanks to Ivan Wilson's post, I realised I don't need an unmanageable long nested if-statement to accomplish this. The CHOOSE function is very useful.
21 February, 2006
The custom templates are the ones you create by customising a site through the UI and then saving it as a template. This is straight forward to do, but the biggest drawback is that sites created from custom templates have no link to the template once they have been created. As a consequence, you cannot modify existing sites by making changes to the template.
Site defitions, which are sitting on the file system of the front-end web servers, solves the problem of being able to make changes that affect all existing sites. The trade off with site definitions though is that they are complex and time consuming to build. It requires lots of CAML editing and even simple layout changes have to be carried out in potentially hundreds of different HTML files. The site definition for the default team site contains 97 HTML pages with lots of duplicated HTML across most of the files.
The next version of SharePoint, which is included in the 2007 Microsoft Office release towards the end of this year, will be build on ASP.NET 2.0 master pages. This fact alone will ease customisation substantially. The master page will typically contain the branding, header, footer and navigation for the site. You will be able to redesign an entire family of sites, by modifying the master page.
Apart from master pages, SharePoint 2007 will have other improvements that will ease customisation of the look and feel. These include new and improved web parts and web part zones as well as the page layouts adopted from MCMS 2002. The SharePoint Team Blog has a good post on how the new SharePoint pages will be composed. The upshot is that it will become more realistic to train up creative designers to build SharePoint layouts and I believe we will see some very sexy SharePoint implementations in the future.
19 February, 2006
Dustin Miller has a comprehensive list of features in Office SharePoint Server 2007. Each feature has a link to more details on a blog, in a slide show or on a Channel 9 video.
14 February, 2006
Recently, I have come across a number of DBAs that religiously refuse to have any BLOBs stored in their databases. This obviously limits how custom applications handling images and other documents can be designed. In addition, Windows SharePoint Services is not a popular technology with those DBAs.
There are a number of significant benefits of having your BLOBs stored in the database. First of all, you gain all the ACID properties of your transactions. Trying to obtain that in an architecture with data in the database and BLOBs on the file system is certainly not a trivial challenge. Secondly, BLOB data is backed up with the database easing administration. Another benefit is that SQL Server Full Text Search operations can be performed against formatted text-based data contained within BLOBs (eg. Word docs, PDF docs, etc.).
SharePoint takes fully advantage of all these benefits. The benefits do however come with a cost. Because SQL Server breaks BLOBs up into chunks that fit on database pages, there is a performance overhead when reassembling the BLOBs on retrieval compared to if they were stored on a file system.
In summary, there is no one right answer to where you should store your BLOBs. It all depends on the context. You need to consider the performance issues in the database and hold them up against the benefits of having your BLOBs stored in the database. A good example of resources that are better stored on the file system rather than in the database is images that are typically referenced via HTTP HREF.
For SharePoint, where BLOBs (mainly Office docs) are not extraordinary large files, the benefits definitely outweighs the slight performance overhead. Images that are referenced from within the HTML in the SharePoint site definitions are stored on the file system. These scnerios are good to keep in mind when considering BLOB storage strategy for your own custom applications.
07 February, 2006
- MSDN gives a good introduction to site definitions and custom templates including pros and cons with the two approaches.
- Heather Solomon gives a comprehensive walkthrough of how to create a site definition including how to create a list template.
- MSDN has an introduction to CAML followed by a complete reference on all the elements and attributes.
- Todd Bleeker has a post on how to use the AlternateCSS attribute in CAML to apply a custom style sheet to a site definition.
Thanks to James Milne for an excellent presentation on customising SharePoint forms with FrontPage. Drop by his website and check out his great tools including the SharePoint Style Designer he showed us briefly today.
02 February, 2006
The browser-based forms should eliminate the need for having the InfoPath Windows client rolled out to every single user which is often a strong argument against leveraging InfoPath for electronic forms.
31 January, 2006
When you're adding web parts to a web part page in SharePoint you first open the web part browser pane (eg. via 'Modify Shared Page' -> 'Add Web Parts' -> 'Browse'). At this point there is a long delay before the web part browser comes up. This is really annoying when you're designing a page and need to open this gallery frequently.
This delay is caused by SharePoint populating the Online Gallery by going to Microsoft's servers (btw, in the Web.config file you can change that to point to your own online gallery). In many deployments, however, the web parts in the Online Gallery are never used. The good news is that you can easily turn this off.
- Go to the SharePoint Central Administration site on the server.
- Click Configure virtual server settings and select the relevant virtual server.
- Click Manage security settings for Web Part Pages under Security Settings.
- Disable the Online Web Part Gallery and press OK.
Now try and add web parts to a web part page again and see how quick the web part browser opens up.
22 January, 2006
One of the most notable of these conflicts is the one between the people in the business defining the requirements and the development team trying to satisfy these requirements. Too many technical people still believe they can expect a signed off set of predictable requirements they can work after. The biggest problem with a signed off set of requirements is that project quality is measured by conformance to the plan rather than how well the software meets the true (ever changing) business requirements.
In today's economy, the fundamental business forces are changing the value of software features rapidly. Hence, in most cases it's practically impossible to define a stable set of requirements. Furthermore, I think most people have noticed that it's very difficult for business people to really understand what they need from software. As the entire software development project depends strongly on the requirements, you cannot work after a predictable plan.
Rather than trying to apply (misuse) all sorts of processes to software development that all aim to predict outcomes, realise the unpredictable nature of solution development and learn to deal with it! Letting go of predictability doesn't mean you have to revert to uncontrollable chaos. Instead you need a process that can give you control over unpredictability. This is where the agile approach comes in.
Following the agile approach, one of the key aspects of dealing with the unpredictability of requirements is to have continuous and effective communication between the development team and the people in the business. In other words, stop working in silos.
On his website, Martin Fowler is keeping an article up to date on The New Methodology for software development. It is very well written and he does an excellent job in explaining why you cannot treat software development as a highly preditable engineering project.
02 January, 2006
Martyn A. Ould's "Business Process Management: A Rigorous Approach" gives you all the essentials in the space of BPM. The theory behind BPM is explained rigorously and lots of practical examples and guidelines are presented.
The book examines BPM and approaches to identifying IT solutions involving BPM without reference to particular products or technologies (such as BizTalk).
If you've worked with BizTalk for a while and been occupied with the technical challenges of designing and implementing solutions, this book is an excellent opportunity to take a step back and get a good understanding of an area where BizTalk is being leveraged more and more.