Wednesday, December 16, 2009

Last chance to register for BIWUG on SharePoint 2010

Today is the last chance to register for the BIWUG session about SharePoint 2010 – with 90 people registered there are only 10 seats available….

PS I will do the Introduction to SharePoint 2010 …

Solving ThreadOptions error in the SharePoint 2010 Management Shell

I noticed that when I tried to open the SharePoint 2010 Management Shell on my machine I got an error stating:

Exception setting "ThreadOptions": "This property cannot be changed after the Runspace has been opened." At C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\CONFIG\POWERSHELL\Registration\SharePoint.ps1:2 char:48
+ if ($ver.Version.Major -gt 1)  {$Host.Runspace. <<<< ThreadOptions = "ReuseThread"}    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException    + FullyQualifiedErrorId : PropertyAssignmentException

Thanks to Bill Baer for providing me with a solution in the SharePoint 2010 forums –installing Update KB968930 which contains the Windows Management Framework Core package fixed the error.

Monday, December 14, 2009

SharePoint 2010 – Client Object Model

The SharePoint 2010 Client Object Model feature is definitely in my top 10 list of SharePoint developer enhancements. It basically provides an abstraction layer so that client apps can interact with SharePoint – there are basically 3 flavors of Client Object Models:

  1. For .Net managed clients – uses the Microsoft.SharePoint.Client.dll in the “14\ISAPI” folder
  2. For Silverlight clients – uses the Microsoft.SharePoint.Client.Silverlight.dll from the “14\LAYOUTS\ClientBin” folder.
  3. For Javascript client code – using the SP.js file from the “14\LAYOUTS” folder.

These 3 client models all talk with SharePoint through the client.svc WCF service and all provide complete access to SharePoint artifacts such as site collections, sites, lists, items, files, folders, webparts, security, content types, etc …

If you need to retrieve data you will typically have 3 steps you need to perform:

  1. Create a connection using the ClientContext object
  2. Create a select statement and provide it to the ClientContext.Load method – you might want to take a look at how to create LINQ queries with Lambda expressions since you will need this in more advanced scenarios e.g. ctx.Load(w.Lists, lists => lists.Include(prop => prop.Title, prop => prop.Id, prop => prop.Hidden));
  3. Execute the query using ClientContext.ExecuteQuery

There is a great series of blog postings from Steve Peschka about practical use of the Client OM:

Saturday, December 12, 2009

SharePoint 2010 development – don’t forget to change the target platform

This is something which will probably bite you in the **s, when you start developing against SharePoint 2010. Don't forget to change the “Platform target” to x64 or AnyCPU
SharePoint 2010 only support 64-bit OS so your apps should do the same. So if you don't change it you will see some strange errors – even something as simple as creating a new SPSite object will throw an error stating:

"The Web application at http://intranet.contoso.com could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application."

So the error message is not very helpfull in this case ...

Friday, December 11, 2009

Solving UI problems with Visual Studio 2010 Beta2 in VMWare

I’m using VS2010 Beta2 on Windows Server 2008 R2 within VMWare Workstation and noticed that some parts of Visual Studio were not rendering or rendered in the wrong location – see for example the “New project dialog” which seemed to be missing some stuff.

This KB provided the solution for these issues – Disable SVGA drivers installed with VMWare Tools on Windows 7 and Windows 2008 R2

Installing SharePoint Server 2010 Dev Box

I finished installing my new SharePoint Server 2010 Dev box a couple of weeks ago … and forgot to publish this post. So here it goes. Installing a SharePoint Server 2010 is not that difficult since there is a lot of guidance out there. It’s really amazing how detailed the documentation is – especially since we are only at Beta 2. So what documentation did I use:

So here’s my software configuration:

All the above prerequisites are the same for SharePoint Server 2010 and SharePoint Foundation 2010 (except for the ADOMD.NET which is used for Excel Services and PerformancePoint Services – thanks Spence for the clarification). So if you plan to create both – this is the moment to create a snapshot. Next just follow the steps as outlined in Deploy a single server with SQL Server (SharePoint 2010)

On to the installation of language packs – I definitely want to check out the new MUI experience. For documentation take a look at Deploy language packs (SharePoint Server 2010) – same applies as for SharePoint Server 2007 - you must first install the SharePoint Foundation 2010 language packs before you install the SharePoint Server 2010 language packs. However I did not see the step with “On the Modify Server Farm Settings page, click Do not disconnect from this server farm, and then click Next.”

Afterwards I installed Visual Studio 2010 beta 2 as well as the Visual Studio 2010 SDK – this is something which you should probably install before installing SharePoint because the first time everything froze during install and I had to restart.

PS I’m using a Dell Precision M4400 with 8 GB RAM and SSD hard disk to run this stuff … works like a charm.

Thursday, December 10, 2009

Activating the SharePoint 2010 Developer Dashboard

The Developer Dashboard is a great feature for developers in SharePoint 2010 which enables us to troubleshoot and debug SharePoint pages – take a look at Using the Developer Dashboard in SharePoint 2010 for some great info.

So you can activate the Developer Dashboard in 3 ways:

  • Using stsadm: stsadm -o setproperty -pn developer-dashboard -pv On or stsadm –o setproperty –pn developerdashboard -pv  OnDemand. You should probably use the OnDemand mode which will add a VERY LITTLE icon in the top right corner of your pages where you can switch the Developer Dashboard on and off



  • Using Powershell
  • $snapin = Get-PSSnapin | Where-Object {$_.Name -eq 'Microsoft.SharePoint.Powershell'}
    if ($snapin -eq $null)
    {
        Write-Host "Loading Microsoft SharePoint Powershell Snapin"
        Add-PSSnapin "Microsoft.SharePoint.Powershell"
    }
    $dash = [Microsoft.SharePoint.Administration.SPWebService]::ContentService.DeveloperDashboardSettings;
    $dash.DisplayLevel = 'OnDemand';
    $dash.TraceEnabled = $true;
    $dash.Update()

  • Using the SharePoint Object Model

SPWebService.ContentService.DeveloperDashboardSettings.DisplayLevel = SPDeveloperDashboardLevel.Off;
       SPWebService.ContentService.DeveloperDashboardSettings.Update();

Tuesday, December 08, 2009

Office 2003 Service Pack3 fixes problem with SharePoint content types in combination with a central document library of templates

It is considered best practice to create a central document library with all of the document templates you are using in your different SharePoint content types in SharePoint Server 2007. This way you can easily update your document template without the need to redeploy or change your SharePoint content type. Unfortunately this caused problems with Office which did not seem to be able to find the centrally located template. Fortunately installing Office 2003 Service Pack 3 fixed the problem.

Sunday, December 06, 2009

Solution for converting virtual image files between Hyper-V and VMWare

I just converted a Hyper-V image back to a VMDK to use it in VMWare Workstation using StarWind V2V Convertor. Works like a charm and it is free …

Technorati Tags: ,,,

SharePoint 2010 Partner Ignite training for developers (Belgium)

I will be teaching the SharePoint 2010 Partner Ignite training for Developers from December 14th to December 16th. Topics I will be covering:

• SharePoint 2010 Developer Roadmap
• SharePoint Development with Visual Studio 10
• SharePoint UI Advancements
• Designing Lists and Schemas
• LINQ to SharePoint
• Client Object Model
• SharePoint 2010 Workflow
• The SharePoint 2010 Services Architecture
• External Data in SharePoint (BCS)
• Enterprise Content Management (ECM)
• Extending Search
• BI Solutions

This is a Classroom Training session for Microsoft Partners. You can subscribe for this event if you are as an individual associated to a Company registered in the Microsoft Partner Program. Go to the Phttps://training.partner.microsoft.com/learning/app/management/LMS_ActDetails.aspx?UserMode=0&ActivityId=559841artner Learning Center to register

Wednesday, December 02, 2009

BIWUG on SharePoint 2010

BIWUG is back with our first session about SharePoint 2010. Our next session is the 17th of december in the new Ordina offices in Mechelen. We have a great line up amongst which 3 Belgian SharePoint MVPs presenting. Here’s the agenda:

  • 18:00 - 18:30: Welcome
  • 18:30 - 19:00: Introduction to SharePoint Server 2010 (Karine Bosch – SharePoint MVP)
  • 19:00 - 19:30: LINQ to SharePoint (Stephane Eyskens – SharePoint MVP)
  • 19:30 - 20:00: Client Object Model (Jan Tielens – SharePoint MVP)
  • 20:00 - 20:15: Break
  • 20:15 - 20:45: Business Connectivity Services (Frank Cleynen
  • 20:45 - 21:15: Workflow (Peter Plessers)

Please register on the BIWUG site.

Wednesday, November 25, 2009

Installation order for SharePoint Service Packs and Language packs

To get up to speed with the latest version of SharePoint Server 2007 (English version) including the Dutch language pack you should follow this installation order:

  1. Start with MOSS 2007 including SP1
  2. Install Service Pack 2 for WSS 3.0(English)
  3. Install Service Pack 2 for MOSS 2007(English)
  4. Install Language Pack Dutch for WSS 3.0
  5. Install Language Pack Dutch for MOSS 2007
  6. Install Language Pack Service Pack 2 for WSS
  7. Install Language Pack Service Pack 2 for MOSS 2007

Afterwards you need to start the SharePoint Configuration Wizard. It will probably ask you to run the Wizard a couple of times but you can cancel this and run the wizard after installing all the binaries.

PS I recommend going 64-bit for fresh installs of SharePoint Server 2007 given the fact that SharePoint Server 2010 will be  x64 only …

Wednesday, November 18, 2009

Office 2010 beta publicly available

Yep, Office 2010, SharePoint Server 2010, Project 2010, Visio 2010, Office Web Apps for businesses and Office Mobile 2010 – are all available for download from this start location - microsoft.com/2010 – for direct downloads:

MSDN subscribers already got their hands on the downloads a couple of days ago.

Troubleshooting .NET Framework 3.5 installation failure

When trying to install Visual Studio 2008 on a development SharePoint box yesterday, I got an error stating that the .NET 3.5 framework could not be installed - "Microsoft .NET Framework 3.0a: [2] Error: Installation failed for component Microsoft .NET Framework 3.0a. MSI returned error code 1603". But apparently this seems to be a very general error message - luckily I found out this post from Aaron Stebner - How to locate the cause of error 1603 in a verbose MSI log file - which showed me that there was an error when trying to install .Net 3.0 SP1 - apparently .NET 3.5 will install this first.

Next, I needed to check if there were some problems with .NET 3.0 - again Aaron Stebner to the rescue who has built a .NET framework Setup Verification Tool. Unfortunately this did not provide a lot of extra information - everything seemed OK.

Next my quest lead me to this post - Steps I use to diagnose .NET Framework 3.0 installation failures related to the ServiceModelReg.exe custom action and indeed in the application event logs there was an error regarding WCF. The suggested workaround about disabling the IISAdmin service(uninstalling IIS was not an option - since this is a complete sharepoint dev box and I did not want to rebuild it) did not work.

But the last tip did work - installing .NET 3.5 SP1 instead of .NET 3.5. : "The .NET Framework 3.5 SP1 installs the .NET Framework 3.0 SP2 as a prerequisite behind the scenes. The .NET Framework 3.0 SP2 setup is configured to allow installation to complete even if the ServiceModelReg custom action fails. That means that you won't see the errors described in this blog post if you install the .NET Framework 3.5 SP1 on your system."

 

Monday, November 16, 2009

Solving the “Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemTypeDeniedOrNotExitsException” error

A while ago – I got this interesting error when trying to add workitems in Visual Studio 2008 - “Could not load type Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemTypeDeniedOrNotExist"Exception from assembly Microsoft.TeamFoundation.WorkItemTracking.Client …”

Apparently I broke my Visual Studio 2008 by installing Team Explorer and Visual Studio 2008 SP1 in the wrong order – see Visual Studio 2008 with TFS Explorer broken with SP1 – reinstalling SP1 did the trick.

InfoPath Forms and attachments

In InfoPath, you can use a control called “File attachments” – this might be interesting to use when you want to allow a user to add files to a filled in InfoPath form. But beware when you store these file within an InfoPath form they will be stored as Base64 encoded strings within the  InfoPath form. This causes the included files not to be crawled by standard SharePoint search.

Here’s some sample code to extract these attachments and make them crawleable – InfoPath 2007 – Extracting those pesky binary attachments

Wednesday, November 11, 2009

Enterprise Content Types in SharePoint 2010

SharePoint Server 2010 supports the notion of Enterprise Content Types and Content Type syndication.

This concept allows for consistent content type schema’s across SharePoint over multiple site collections. Enterprise Content Types are basically content types which are published from a central Site Content Type gallery -called the Content Type Hub - to content type galleries on other site collections (even on other web applications or across farms).

This is implemented using a Managed Metadata Service Application. If you are new to the concept of Service Applications in SharePoint 2010 - take a look at these articles - SharePoint 2010: Service Applications Part One: Model Overview and The New Service Application Architecture in SharePoint 2010.

In the configuration options for the Managed Metadata Service you can specify a certain site collection to act as a central repository of content types. This central repository is called the Content Type hub. Other site collection can then consume the content types from this content type hub.  There is a maximum of 1 hub per Managed Metadata Application Service but it is possible to create multiple Managed Metadata Applications each with a corresponding site collection hub.

For content types which you define on the site collection content type hub - you get an extra configuration option - Manage publishing for this content type.



Here you can publish this content type to other site collections. You can also decide to unpublish a content type or republish it if you have made changes to the content type.


In the background this is actually accomplished using the Content Type Subscriber SharePoint Timer Job.

If you go to Site Settings on a top level site of a site collection level which does not act as a content type hub - you will notice an entry called Content Type Publishing where you get an overview of Enterprise Content Types you can consume as well as the Managed Metadata Service Application from which you consume them. The consumed content types will be marked as read-only. You will see in the screenshot that it is possible to define multiple managed metadata service applications and thus also multiple content type hubs.



Make sure that you design this carefully since it is not possible to change the content type hub location afterwards on the Managed Metadata Service application


Document Management features in SharePoint 2010 – the series

I will be publishing a number of postings about Document Management improvements in SharePoint 2010 in the coming weeks – here’s an outline – to get your appetite going:

  • Enterprise Content Types – central management of content types of  content types across multiple site collections.
  • Using Document Sets for multi-document work products
  • Enhanced metadata support with managed keywords and taxonomies
  • Creating unique DocumentIds using the DocID service

Tuesday, November 10, 2009

SharePoint List Features Framework

The SharePoint List Features Framework is an open source project driven by RealDolmen which will allow you to create features at SharePoint list level. Those familiar to SharePoint probably know that the SharePoint features framework provides a pluggable mechanism for adding or modifying functionality at site level, site collection level, web application or farm level.  The SharePoint List Features Framework extends this functionality by providing a mechanism to add features for one specific document library or list within a SharePoint site. For more information check out the new Codeplex site - http://listfeatures.codeplex.com/ .

The current build is targeted at SharePoint 2007 but we will be providing an update shortly after the release of the 2010 beta release.

Again congrats to Tom for building this great extension …

BIWUG 19th of november cancelled

Due to circumstances the BIWUG session of the 19th of november is cancelled – the next BIWUG session will be on the 17th of december.

SharePoint – Quick links reminder

With all the buzz about SharePoint 2010, you might forget that there are still are quite a lot SharePoint 2007 deployments out there. Here are some interesting links I recently picked up with regards to SharePoint 2007:

Thursday, November 05, 2009

SharePoint 2010 – Adding new buttons to the SharePoint 2010 ribbon

Update: I just found this excellent training video – Module 10: Creating Dialogs and Ribbon Controls for SharePoint 2010. Would have saved us some trouble if we saw it beforehand.

We had a blast today at the SharePoint Ignite training as Koen already blogged in– Howto: Add a button to the ribbon in SharePoint. Fortunately Wouter (the trainer at the Ignite training) provided excellent background info and put us on the right track to get a working button.

I’m not going to elaborate about the exact syntax for adding buttons to the Ribbon – since this might change from Tech Preview to Beta2 but would like to provide some additional background info about how the new Ribbon works in SharePoint 2010:

  • The ribbon is actually rendered by a http handler which you find at C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\commandui.ashx
  • This http handler picks up the C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\GLOBAL\XML\CMDUI.XML file up and merges it with the different features which define additional customactions.
  • The different portions of the ribbon are cached in your temporary internet files – so you will some files in there which look like this commandui.ashx?ver=881443720&id=Ribbon.DocLibListForm.Edit&lcid=1033&qt=ribbonvisibletabdeep. Especially the id is important to identify the relevant parts in CMDUI.xml to take a look at. If you are deploying new customactions it might be safe to delete your tempfiles…
  • The ribbon is divided in Tabs which contains Groups of controls. A Group is rendered using a GroupTemplate. A Group can contain a number of controls such as Buttons, ToggleButtons, etc … it is easiest to just take a look at CMDUI.xml
  • You will not be able to modify the Ribbon arbitrarily – some groups in the ribbon have fixed controls which you should not modify (and to which you will not be able to add additional controls)– other groups can be modified.  You can add controls to groups which are using a so called flexible layout – such as Ribbon.Templates.Flexible. It is also possible to add additional groups.
  • The logic for the Ribbon can be found in the Microsoft.Web.CommandUI dll within the GAC (notice that there is no SharePoint in the naming…it might be possible that we see this dll appearing in other platforms as well). It can be quite interesting to take a closer look at this assembly using Reflector.
  • You will probably also notice a Scaling section within CMDUI.xml for each tab – this defines how the tab will render when you resize your browser…

Tuesday, November 03, 2009

SharePoint Server 2010 – Getting Started link guide for developers

Updated 5/11/2009 – added some addditional links

SharePoint Developer – General info

 

SharePoint Developer – Specific topics

  • Web Content Management in SharePoint Server 2010
  • Part 1 - Improvements to the Core SharePoint Platform & How the Benefit SharePoint 2010 Web Content Management
  • Part 2 – What’s Improved with SharePoint Server 2010 Web Content Management
  • Part 3 – What’s New with SharePoint Server 2010 Web Content Management
  • SharePoint 2010 Sandboxed solutions

    Background info

  • Tuesday, October 20, 2009

    Random tweets on SharePoint 2010

    Some thinks I just picked up from Twitter:

    • SharePoint Online 2010 will allow Anonymous Access, so can be used for Internet solutions! Thats great! #spc09
    • Anyone planning a #SharePoint deployment for DM and RM should seriously consider going to Server 2008 R2 http://tinyurl.com/yghje9c #SPC09
    • SPC09 One key takeaway is that the "2,000" item limit is simply gone. We shall never speak of it again.
    • Resources & Links slide from Word Automation OpenXML session. #SPC09 SPC349 http://twitpic.com/m9kye
    • They just clarified. SharePoint Online Dedicated will be april 2010, Shared will be 2nd half of 2010
    • New content query web part finally allows choosing columns you want 2 display. (via @ToniFrankola) #spc09 --> woo hoo!
    • Word Automation services has built in conversion outputs including PDF. I wonder if Adobe had to license this
    • #SPC09 Speaker says (more or less), "Powershell is the future of SharePoint administration."
    • VERY cool 'employee morale' example data visualization #inetium #spc09 http://twitpic.com/m92kz
    • Viso Services: sales org chart/status report. COOL! #inetium #spc09 http://twitpic.com/m927n
    • @andrewconnell: If u're into ECM and u missed Ryan's "ECM for the Masses" session @SPConf, make sure u watch recording. GREAT overview
    • woutervugt First SharePoint 2010 developer session outside #sp09 is starting in one hour #sdc2009
    • Creating Custom SharePoint 2010 Cmdlets using Visua.. http://bit.ly/R9tyY
    • SharePoint 2010: STSADM and PowerShell: Tags: share.. http://bit.ly/3UtKjk
    • Part 1 - Improvements to the Core SharePoint Platform & How the Benefit Sh.. http://bit.ly/2A599Z
    • Part 2 – What’s Improved with SharePoint Server 2010 Web Content Managemen.. http://bit.ly/19MLri
    Technorati Tags: ,,

    Monday, October 05, 2009

    Moving PageFile.Sys to other drive in Windows Server 2008

    Open command prompt and use the following commands

  • wmic computersystem where name=”MyCoreServer” set AutomaticManagedPagefile=False
  • wmic pagefileset where name=”d:\\pagefile.sys” set InitialSize=2500,MaximumSize=10240
  • The second command creates a new pagefile.sys on d: drive with an initial size of 2,5 GB and a maximumsize of 10,24 GB

    Afterwards – reboot.

    Source: http://blog.mpecsinc.ca/2008/04/server-core-move-that-swappage-file-wmi.html

    [MVP] Congratulations ! You have received the Microsoft MVP Award

    5 in a row… yes my title as MVP Windows SharePoint Services is renewed again. Thanks to everyone who in one way or another contributed to my (re)nomination.

    Things you can expect in the coming months:

    • Lots of posts about SharePoint 2010 once the NDA gets lifted
    • A number of BIWUG sessions about SharePoint 2010
    • Information about integration scenario’s – the next coming months I will focus on integrating Microsoft CRM and SharePoint
    • Some more Codeplex goodies for SharePoint – both 2007 and 2010.

    Thanks again for all the support.

    Saturday, October 03, 2009

    BIWUG is back – SharePoint workflow and OCS.

    Update: description added for the OCS session

    BIWUG (Belux Information Worker User Group) is back with another series of sessions about information worker productivity. Our next session is on the 15th of october.

    • 18:00 – Welcome
    • 18:30-18:45: Introduction [Joris Poelmans]
    • 18:45-19:45: Demo Session - Enhanced productivity with Microsoft Office Communication Server (OCS) and  Polycom CX200/CX700[Orbit One] - See for yourself how Office Communicator 2007 R2 can replace your office phone system, and help you collaborate more effectively with your colleagues and customers. We will demo telephony, Instant Messaging, presence, conferencing, desktop sharing, call forwarding, videoconference, team-call groups, voicemail, Outlook integration, iPhone client, …
      You will have the opportunity to see different phones and devices optimized for OCS: Polycom CX series, Plantronics Savi Go.   
    • 19:45-20:00: Break
    • 20:00-21:00: Developing flexible workflows in SharePoint Server 2007 [Peter Plessers] - Besides adding custom workflows through SharePoint Designer, Microsoft Office SharePoint Server 2007 offers the possibility to host custom-developed workflows based on Windows Workflow Foundation to support a company’s business processes. It might however be a challenge to develop these workflows in such a way that they can be easily adapted to the evolving business processes it supports. This session presents a number of techniques to develop workflows that are easy to adapt. We start off with a simple workflow example and let it evolve into a flexible workflow that can even be changed at runtime.

    Please register on the BIWUG site. I would also like to thanks Combell for providing the location - Combell - Skaldenstraat 121 - 9042 Gent.

    You should also bookmark these dates in your calendar – the 19th of november and the 17th of december. You can expect some SharePoint 2010 sessions on the agenda by then …

    Wednesday, September 23, 2009

    Recovering files from blue screened Windows XP

    Today my Windows XP showed me a very unwelcome BSOD… booting in safe mode, last known configuration, nothing helped. Unfortunately I still had some files on the machine which I definitely needed to recover – Hirens Boot CD to the rescue – amazing tool… definitely a lifesaver.

    Sunday, September 13, 2009

    Wednesday, September 09, 2009

    Dynamics CRM and SharePoint – birds of a feather?

    Microsoft Dynamics CRM is increasingly becoming an application platform for decidedly non-marketing uses. In this way it is moving away from it’s core platform functionality – Customer Relationship Management. Microsoft likes to talk about xRM applications (check out Developing ISV applications using Microsoft Dynamics CRM ) which are basically line of business (LOB) applications that use the Dynamics CRM database, extend the basic CRM web interface and add in extra logic using CRM workflows.

    While Dynamics CRM and Microsoft SharePoint are definitely  complimentary platforms, this evolution allows you to probably build solutions on top of both SharePoint and MS CRM. Think about the following scenario’s:

    • Project management framework
    • Service desk and call follow up
    • Sales dashboards
    • Bid management – RFP process automation
    • Recruitment process automation
    • Citizen Service Platform (e-Government)

    You can probably start from both SharePoint and CRM as a foundation and from there on build in the required functionality for your solution. Interesting choices … but who is making this choice?

    From a development perspective you will also see some similarities.

      Dynamics CRM SharePoint
    Encapsulate data CRM entities  Content Types
    Adding business logic Plug in framework Event handlers
    Workflow development Builds upon Workflow Foundation Builds upon Workflow Foundation
    User interface extensions Embedded IFrames within CRM Forms Web Parts and SharePoint application pages

    Related links:

    Tags van Technorati: ,,,

    SharePoint and Http 400 error – Bad Request – header field too long

    After enabling Kerberos on our SharePoint Server 2007 acceptance environment I suddenly could not access the environment anymore. The only thing I got was an error stating “Bad Request – header field too long”. Since changing the authentication method to Kerberos was the only change it had to be related with this. Apparently the solution was making changes both on the client  and the server level:

    Related links:

    64bit iFilters for SharePoint Server 2007

    There are currently 2 PDF iFilters available for 64-bit SharePoint Server setups:

    So basically you have a choice free but slower …

    PS Foxit PDF IFilter can be used for free on desktop environment. However, users need to purchase licenses when they use Foxit PDF IFilter on server environments -http://www.foxitsoftware.com/pdf/ifilter/priceinfo.html

    Tags van Technorati: ,,,

    Usage analysis reports and SharePoint Server features

    Did you ever wonder why on some SharePoint sites you will see these rather limited usage statistics page (depicted below) when you click on Site Usage Reports reports in the Site Settings page


    While on other SharePoint sites you will get quite a lot more information in graphical format?


    If you have SharePoint Server installed you will be able to see the extensive statistics when you activate Office SharePoint Server Standard Site features or Office SharePoint Server Enterprise Site features. The feature responsible for updating the link is a CustomAction feature called AnalyticsLinks  (56DD7FE7-A155-4283-B5E6-6147560601EE).

    Wednesday, September 02, 2009

    SharePoint Governance and best practices, some thoughts

    I just finished a number of SharePoint governance workshops and so I wanted to share a number of thoughts on the subject.

    1. The terms SharePoint governance and best practices are hugely overhyped.

    I think this quote from Governance Man – has fallen into my trap ;-) sums it up quite nicely:

    I have had a couple of experiences now, where I have been called in by clients who have the typical SharePoint chaos. Things have gotten out of hand and as a result, key stakeholders started to lose faith, and the project team really felt the pressure from the powers to be. There were strong undercurrents of desperation to get things sorted, like… yesterday. Under these circumstances, they asked for help on “governance”. They needed “governance”, they must have “governance”  and they spoke about governance as if it was something that a pizza driver can deliver to their door (and if it was not there in 30 minutes, it was free).

    2. SharePoint is not a silver bullet and if you use it wrongly no governance plan can save you.

    Project managers which are assigned the task of managing a project implementation which uses SharePoint will typically ask questions like “What do you mean SharePoint is not a BPM platform?”, or “How do I integrate SAP and SharePoint?” or “How do I do contract management in SharePoint?”. As you see the questions can be quite diverse. And the problem is, that the are answers will be quite diverse as well. There are a lot of design decisions you need to make  - all with certain tradeoffs. You can start with out-of-the-box, add a layer of customization or even proceed to some serious SharePoint development. And then there is a huge amount of third party tools out there.

    SharePoint is not targetted at a specific vertical or horizontal and if your company’s strategy is to always choose for best of breed and is able to support an enormous variety of platforms and applications – SharePoint is probably not a good solution. If your business really needs a 99% percent match for all of their requirements and can’t live with trade-offs – there is no other choice then greenfield development.

    SharePoint is all about reuse and platform capabilities. Aim at leveraging the out-of-the-box functionality and when there is not match with the requirements try talking about the processes which created the requirement in the first place.

    3. When talking about SharePoint governance and best practices make sure that your audience has a basic (to intermediate) understanding of SharePoint fundamentals

    There is a lot of best practices regarding SharePoint infrastructure setup on TechNet and MSDN. So you can always point to those as a reference. It is however necessary that people understand concepts such as WFE’s, SharePoint web applications, site collections, etc … It is not that because you know SQL Server inside out that you also understand SharePoint inside out (allthough a thorough understanding of SQL is definitely a good thing). You really need adequate resources within your company which are sufficiently trained to support a SharePoint implementation.

    4. Yes, … you will probably need some third party tools

    People are always amazed by the fact that they will actually need some third party tools to make SharePoint meet the requirements of their users. Also when you look at SharePoint from a manageability and operations standpoint you will notice that there are some gaps that are filled in with third party tools (or other Microsoft products) – some questions you should probably ask yourself:

    • Did you think about antivirus when doing a SharePoint implementation?
    • What about backup and restore?
    • Did you take a look at the standard usage statistics. Are they sufficient for your needs? Remember that you need a feedback cycle to measure the success of your deployment so you will probably need some more elaborate statistics then the ones which are provided by SharePoint.
    • What about monitoring?

    5. Keep the organizational culture in mind when thinking about governance

    One of the best postings I read about this  is Make SharePoint governance plans plain and simple which talks about companies which are considered icons and examples within their industry (or even accross industries). In his posting he translated some internal guidelines from PCL Construction – called Pool’s rules into relevant SharePoint specific statements – here are my 2 favourites:

    • Give encouragement and show appreciation 
      …  Providing encouragement and showing appreciation is especially important for fledgling SharePoint environments; participation and adoption are paramount to success.  It’s also critical for ongoing success; consider your own population and develop a program that continuously provides encouragement and support to all communities involved.
      Make sure that you actually encourage Knowledge Sharing – for some thoughts on this topic – see Knowledge is power! So why share knowledge …
    • If you don’t have the funding, time, human resources or the budget to effectively create, deploy and maintain a SharePoint solution, don’t start one.

    And on that bombshell :-) …

    Related postings:

    Thursday, August 27, 2009

    4th release of the SharePoint administration kit

    A new release of the SharePoint administration kit is now available – some very cool new stuff in there:

    • Update to the SharePoint diagnostics tool – check out SharePoint Diagnostics Tool (SPDiag) details on Technet.
    • A number of Security Reporting tools added to report on broken security inheritance, check effective permissions and permission set inheritance
    • Updates to stsadm to enhance quota management
    • Security configuration wizard manifests for SharePoint Server 2007 and Windows SharePoint Services 3.0

    Downloads:

    SharePoint as a development platform - 7 reasons why I like it ...

    I already talked about why some people don't like SharePoint. Now let's talk about why I like it:

    1. 1. SharePoint is a great site templating engine - you can built a certain template once and next kick it off to your end users so that they can built thousands of sites/workspaces with it. Remember to take a look at SharePoint – it’s all about making the right design choices – when to use custom site definitions before you start clicking around creating templates though.
    2. 2. It's all about Features - Once you grasp the concept of SharePoint features you can go ahead and built whatever you want on SharePoint. SharePoint is both a product and an application platform. The modularity of these features and the possibility to activate them later on in a project make SharePoint an interesting platform for agile development. Check out Features in MOSS 2007 and WSS 3.0 for additional details.
    3. 3. SharePoint solutions to make your admin your friend – From time to time, you will see some friciton between developers and operations people. Developing something is not that hard but then you need to get it deployed. In custom development this is one of the tasks which is quite often hugely underestimated. For SharePoint developers it is kind of mandatory to think about how to deploy stuff since there are a lot of files going in a lot of different places on your server. Once you get the hang of building SharePoint solution file for your customizations, everything will get deployed quite nicely on your whole farm.  Take a look at the ten commandments for SharePoint development – SharePoint solution deployment is mentionned twice and not in vain.
    4. 4. InfoPath 2007 and Forms Services are great - it is amazing how easy it is to build electronic forms using InfoPath 2007 and then distribute them to your end users using browser-enabled forms. Quick warning though: deployment may be tricky and some manual steps will be required from your admin. Let’s hope that the story gets better in SharePoint 2010.
    5. 5. Strong integration with Office 2003/2007 - the things which you get for free in SharePoint are amazing. Integrated editing of Office documents, easy exports of SharePoint lists to Excel, taking documents offline in Outlook (2007 version only ...), two way sync of contacts and tasks in Outlook (again 2007 version only …). Remember Office is one of the most used applications worldwide so think about the integration story.
    6. 6. Easy branding and custom layouting  - yes, there are some obstacles with regards to SharePoint branding –the master pages built in are not a good starting point and the CSS files might seem a bit bloated. But still – changing the look&feel is still quite easy.  Learn to Know your master pages inside out.
    7. 7. I don’t have to write code for everything – when building something in SharePoint you don’t need write code for everything. This might seem shocking to some devs … take a look at Demo: a six-part series on getting the most out of SharePoint Designer. …  I expect quite a lot of improvement in this area with SharePoint Designer 2010.

    Tuesday, August 25, 2009

    Removing hiberfil.sys on Windows Server 2008

    One of the things I found out when using Spacesniffer was that there existed a big hidden file on my Windows Server 2008 system drive called hiberfil.sys. Apparently when you hibernate your computer, Windows saves the contents of the system's memory to the hiberfil.sys file. As a result, the size of the file is as big as the amount of physical memory present. Since I allocated 6 GB RAM to my virtual Windows Server 2008 – the file was a whopping 6GB big ….

    Now to remove it – open command prompt (remember to use the run as administrator option) and type powercfg.exe /h off.

    For some background info check out KB920730 – How to disable and re-enable hibernation on a computer that is running Windows Vista.

    Analyzing disk space with Spacesniffer

    Virtual disks seem to have a tendency to fill up faster then expected sometimes. So today I found myself without disk space on my system disk of one of my virtual machines. Since I was not really sure what was occupying so much space I searched the web for some analysis tool and I downloaded Spacesniffer – this is definitely the coolest little utility I have seen for quite a while…and it works like a charm even on Windows Server 2008. Completely free…

    Monday, August 24, 2009

    Changes in Workflow Foundation 4.0

    If you plan to start writing workflows using Workflow Foundation 3.5 (or 3.0 for that matter) definitely take a look at the following links. There are quite a few architectural changes in Workflow Foundation 4.0 so beware: