I'm really glad that we have managed to get a really nice release of the SharePoint Extensions Lib, SPExLib, out. This brand new release (184.108.40.206) has significantly been improved since the first release a couple of weeks ago.
By referencing the SPExLib.dll and include the namespaces you can easily write code like this (taken directly from one of my current projects):
As you can see the sample uses a number of extension methods; SPList.GetItems() can accept a CAML query directly, System.String has a FormatWith method, the SPListItemCollection has a ForEach method.
Download it and try it out, you will find yourself more productive!
Have a nice weekend.
This means that you now can use Visual Studio or SharePoint Designer (or any other tool that you like) to connect to the SharePoint Online web services and code away, instead of going to some local instance to get the descriptions.
Does anybody know where the Microsoft Online team posts all updates/changes to the BPOS? I got this information from Troy (from the BPOS team) commenting on my post.
Installing a new service pack onto a server product is not just firing up the installer and hit next->next->finish. You should carefully read through the documentation and test it thoroughly. Service Pack 2 for SharePoint has been long awaited and I’ve seen people the last 24 hours installing it like madness just wanting to get their hands on the new features/updates. I did also install it just minutes after it was released (on my dev machine that is being reinstalled any hour now, when Windows 7 RC is out).
Andrew Connell said it well in a tweet just recently: “I’s watching everyone else install #sharepoint SP2 to see if there are issues (ala IU's AAM fiasco)... thanks in advance guys :)”
Twitter is one nice source of real-time update on what is happening right now on just about everything, especially when it comes to #SharePoint. I’ve collected some of the known, found and discovered problems with Service Pack 2 for Windows SharePoint Services 3.0 and Office SharePoint Server 2007.
- IMPORTANT UPDATE: Important information on Service Pack 2 from the Microsoft SharePoint Team. (Added 2009-05-22)
- Service Pack 2 has unfortunately a serious bug which makes SharePoint time bombed after 180 days. Workaround is described (KB article) and hotfix is on the way!
- Nintex Workflow 2007 problem with Service Pack 2 (
Nintex currently advises users not to install SP2) – the forum thread contains a workaround (Updated 2009-05-01)
- Why did they not have a public (or semi-public beta) for SP2 so companies like Nintex could be proactive
- Update 2009-05-08: Nintex Workflow 2007 1.9.4 fixes these issues
- Failure when running configuration wizard after applying SP2 (problem and solution)
- The search service seems to be causing trouble for some users, either when running the config wizard or the b2b timer job
- Problem with SQL Server and AWE memory allocation
- Some people says that it takes some time to start SharePoint after applying the update
- Note that the content-dbs may automatically be defragmented after the update using the new defragmentation job
- Me and some others had some problems when running the installer which was due to the fact that the download of the updates failed so the installation package was corrupt. I had to retry a few times to get all the bits
- SharePoint SP2 and SPDatabaseGbwSequence error is caused by free SharePoint templates (Added 2009-04-30)
- Another reason to test your installation
- SharePoint Designer needs Service Pack 2 to connect to a SharePoint Service Pack 2 farm (Added 2009-04-30)
- MSI error 1603 while installing MOSS Service Pack 2 (Added 2009-05-04)
Have you experienced any other troubles, I’ll gladly update the list!
I've had an idea for some time to gather all mine and others nifty extension, utility and helper methods into a shared library so that these can be reused in different projects and I finally got my act together and created a new project on Codeplex called SharePoint Extensions Lib, http://spexlib.codeplex.com/, SPExLib.
This is a library filled with extension methods to the SharePoint object model and to the Microsoft.NET 3.5 SP1 classes as well as some helper classes. All you have to do is reference it in your solution and add the using SPExLib.Extensions statement to your code and you are ready to go.
The goal with this project is to make SharePoint programming easier and to fill in the gaps left out in the standard SharePoint APIs.
This first version contains extension methods such as:
- SPWeb.ListExists() - checks if a list exists in a site
- SPList.ViewExists() - checks if a list contains a specific view
- SPListItem.Contains() - checks if a list item contains a specific field
- SPListItemCollection.FindByField() - returns all items with a certain value to a specific field
- Extensions to the XElement and XmlNode objects
- A set of classes to make creation of WebParts with EditorParts easier to create
- and more
New versions will be released as soon as we have some new and cool extensions.
Contributions - I want you
If you have similar or better implementations that the ones already there, please feel free to show me a better implementation. Let's make this first class.
I still have to use Visual Studio 2003 to support some old good applications including SharePoint 2003 apps. So I have used a Windows XP virtual machine to run it, but now I can fire up Visual Studio 2003 directly from my Start menu in Windows 7. As most of you know, you can't install VS2003 on a Vista or Windows 7 machine, and I don't even want it there either.
It's also great for having Internet Explorer 6, 7 and 8 on the same machine!
Here are some pictures of the Windows XP Mode features.
Visual Studio 2003 running on Windows 7 using Windows XP mode
The published Windows XP applications in the Windows 7 start menu.
The Windows XP notification icons appear in the Windows 7 notification area. Note the Windows Update and Windows Security Alert icons. I thought this was really cool.
I've been annoyed for some time at that you cannot prohibit your users from selecting "No Quota" when creating Site Collections. Yes, you can set a default to use but the "No Quota" option is still there. Most probably you have some governance plan or similar that says that you should set quotas when creating Site Collections, but you know that sometimes you forget or somebody doesn't even care or know what setting No Quota implies.
Create a feature that removes the No Quota option
But, hey - I love to write code and I was sure that you could get around it in someway. First option I thought of was creating a custom Create Site Collection page (_admin/createsite.aspx), but that's not so beautiful right? But SharePoint has some nifty constructs that allow you to insert custom controls in most pages, called Delegate Controls. The create site collection page has one of those, so I wrote up a small control that uses the delegate control called CreateSiteCollectionPanel1 in the page I deployed to the farm.
The code is pretty straight-forward; find the Drop-down list and then remove the "No Quota" option.
Code for the Delegate control:
Code to add the Delegate control:
WSS vs MOSS
This solution works perfect on a Windows SharePoint Services 3.0 farm, but should not be used as-is on a Microsoft Office SharePoint Server 2007 farm. MOSS already uses this delegate control in the SharePoint Portal Server Master Site Directory Capture Control feature. This feature uses sequence 100, so you can easily create a derivative of the MOSS feature and implement the No Quota removal. Another option is to change the delegate control behavior of the create site collection page and allow the delegate control to allow more than one delegate control.
The day has come when Microsoft officially started to talk about the next version of Office 2010 clients and SharePoint Server 2010 (no longer Office SharePoint Server). We have since some time known that SharePoint 2010 will be supported only on a 64-bit platform, just as Exchange 2007.
The new stuff revealed yesterday (as preliminary) are that not only is 64-bit required, it will only be supported on the Windows Server 2008 64-bit platform (including R2) and it will require that you have SQL Server 2008 on a 64-bit platform. There are some other interesting facts that you should check out also in the post (and on about 1.000 other blog posts), but this post is not just about these news.
The interesting parts of this announcement is that now is the time to learn the 64-bit platform for real and especially Windows Server 2008 R2 and SQL Server 2008, not everything is the same; registry hives, file system, settings, know when to use int (Int32) or Int64 etc etc. You can start now, it's no time to wait! Make a decision to only install your new SharePoint installations on the required SharePoint 2010 hardware, make sure that you have that in your development environments and on your virtual machines. Yes, it will in many cases cost you a bit in new hardware.
I think that this is the time when 64-bit really will kill the 32-bit era.
As a bonus I can tell you one thing that I didn't know was achievable. My main laptop runs 32-bit Windows 7 and not 64-bit due to that it does not have the 64-bit driver support for the peripherals and I usually use(d) Virtual PC to virtualize my development servers. Downside with Virtual PC is that you guest machines can only be 32-bit and I don't want to have a Hyper-V laptop in 64-bit mode so I thought that I had to get me a new laptop (which is due for later). I was preparing for the worst of having a dual boot. Fortunately I did a test using VMWare Workstation today and found out that as long as you have a 64-bit capable hardware (which I have) you can host 64-bit guests on a 32-bit host OS. Did you know that, I did not! So I will spend this evening preparing my new development VM's. If you are in the same situation as me, stuck with a 32-bit OS for some time, head on over to VMWare and run the 64-bit compatibility checker and then dump Virtual PC and get VMWare Workstation.
Welcome to the 64-bit world!
I just had to try out Community Clips from Microsoft Office Labs and made a short video demonstrating the new version of ChartPart 2.0 for SharePoint . The video shows rendering and customization of the graph, how you connect the graph to a list and some of the 3D features.
Community Clips is an awesome and simple video capture utility that from now on definitely will be a preferred tool in my toolbox.
Enjoy...and if you like go ahead and download ChartPart 2.0 at http://chartpart.codeplex.com (currently in beta).
After doing some experimental stuff (don't ask me what!) with my local (Windows 7) SharePoint installation I uninstalled it completely and was going to install it from scratch once again I encountered a strange error. A dialog as below popped up:
First I thought that SharePoint did not uninstall correctly and searched the registry as a maniac and found nothing. Then I checked the installation log files, which did not make things much clearer:
After some investigation I checked the folder that the setup program extracts the files to, which always have the same name and is not removed after the installation is done (*see more information below). It's located in c:\Users\Profile\AppData\Local\xtracted\. There I found some "leftovers" from the failed language pack, see image below. Folders such as WSS.sv-se and WSSLPK.sv-se is used during the installation and therefore checked when installing WSS. And since I have removed everything and have no WSS on the machine it fails when installing the language packs.
After removing the xtracted folder everything went smooth.
This little adventure gave a good insight on how the SharePoint installer works and it's a smart one.
* Worth to notice that all of this is experienced on Windows 7 RC using WSSOnVista. So it might not be the same on a server installation, but I will for sure make sure that the extracted folder are removed before I reinstall SharePoint on any machines in the future. On Windows Server 2003 and Windows Server 2008 I have not seen any leftovers from the xtracted folder, but I have not verified it.
Here is a tip for you Codeplex users out there.
If you are using the Visual Studio and the Team Foundation source control then you are prompted for username and password every time you open up a project. This dialog does not contain any functionality to store the username and password. If you are often opening projects and/or switching projects entering usernames and passwords can get annoying.
The Credentials Manager is found in the Control Panel, just search for it. To add a username and password all you have to do is click on Add a Windows credential and then enter the name of the Codeplex TFS server (tfsXX.codeplex.com) and then you username and password. Click Ok and then fire up your Codeplex solution in Visual Studio and you are ready to get back to coding!
Until next time...