Thanks!

Sharepoint Server 2010 Language Pack Norwegian

Language pack for Sharepoint Server 2010 in Norwegian (and some other new languages) is now available.

Download here: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=046f16a9-4bce-4149-8679-223755560d54

Sharepoint Foundation aka WSS 4.0

For a couple of weeks Sharepoint Foundation, the successor of WSS 3.0 and the “free” version of Sharepoint, has been available for download.

You can download the final version here and try it out for yourself: http://www.microsoft.com/downloads/details.aspx?FamilyID=49c79a8a-4612-4e7d-a0b4-3bb429b46595&displaylang=en

Sharepoint filter with URL values

Did you know that you easily can filter your Sharepoint list or library with values in your URL? This means that you can create a “view” without really creating a view. To spice up your GUI you can for instance insert some graphical boxes above your document library view that filters with URL values. Last, but not least, you can use this method to filter the content of all web parts on a page, you are not limited to filter a view in a document library (after all, a view is just a web part on a .aspx page). You can filter on a built-in column, or a column you have created yourself.

Example:

Continue reading →

Sharepoint naming best practise

When naming your files, folders (but you usually don’t want folders anyway) and sites, avoid these characters:

& ~ # %  * ? / + | ” . _ { } \ : < >

Underscore is to be avoided as the first character in the name, and multiple consecutive periods should be avoided. In columns and document library names I also prefer to avoid Norwegian letters like æ,ø and å, and spaces. I rather rename the column or document library afterwards, getting a nice looking name combined with a coder-friendly URL (I get no sleep when I see URL’s like bad%20url.)

Activate Sharepoint 2010 Developer Dashboard the easy way

Sharepoint 2010 has a very useful function called the Developer Dashboard. When you enable this, you see what kind of resources the different requests on the page uses, the different queries etc.

The dashboard can be always on, off or on demand. The latest option is the most useful for most scenarios, and gives you a button on the page that you can click on each page individually to view the dashboard. This way, you can even use it in a production environment (of course not for testing new functions, you have a development, testing and staging platforms for that, right?). To enable the dashboard all you have to do is run this simple stsadm command. You can also use Powershell if you prefer that.

stsadm -o setproperty -pn developer-dashboard -pv ondemand

Cascading Drop Down - multiple select

Update: Marc D. Anderson has now updated the Jquery files, so if you use the latest version this won’t be an issue anymore and you can disregard this post.

I have previously written a walk-through about how to implement a relationship between two columns:

http://www.uccorner.com/54/sharepoint/cascading-drop-down/

My friend and excellent SharePoint-er Jasmine Garry found ut that under certain circumstances, this approach did not work. To be more precise, if your site is in another language than English, and your column in the list where the relationship is (i.e. “Vacation Plans”) allows for multiple select, you get this error:

Message: Column not found on page

The reason for this is that the Jquery file uses hard-coded English terms to create a string that works with multiple select.

Solution:

First, in the code for your custom NewForm (the page where you are getting the actual error), look for a select tag and find the one where title=”City possible values”. Possible values will be in your own language. Now open the jquery.SPServices-0.4.8.min.js-file (or the version you are using), replace all occurrences (there are several) of possible values with the equivalent from your own language that you just found in the source code for the page.

Now, do the same procedure for “selected values” and you are good to go.

This is a workaround, and is expected to be fixed in a later release of the Jquery file by Marc D. Anderson.

Thanks to Jasmine Garry and Marc D. Anderson for figuring this out: http://spservices.codeplex.com/Thread/View.aspx?ThreadId=85478

Rename Sharepoint server - new hostname

Recently there was a request to rename a server running Sharepoint 2010 Beta (Could just as well have been MOSS 2007 / WSS 3.0 though).  This server was running SQL on the same box, but the solution here can do the trick for many renaming issues.

So what happens when you rename your server and gives it a new hostname? Well, Sharepoint doesn’t like it. This is the message I got:

Cannot connect to the configuration database.

Oops. That’s a message you do NOT want to see.

So you try to enter Central Admininistration and get “Internet Explorer cannot display the webpage”. Well, as soon as you take a look in the address field in the browser, you see why: the shortcut pointing to Central Administration points to the wrong URL (e.g. oldservername:10000, not newservername:10000, assuming Central Admin runs on port 10000). So you type newserver:10000 and cross your fingers. Sorry, you get the same “Cannot connect to configuration database”.

But fear not, you can fix this! First of all, rename your server back to the old server name and restart, and everything will work again (you can take a deep breath now). But you still want to rename the server, right?

Solution

You have to reconfigure Sharepoint and tell it where it can find the databases. If you already have renamed the server, you can probably do the same thing as described below, but the best is to do this in advance. Besides, nothing works anyway right, so reverting the name temporary with the required restart won’t do any harm and give you time to the aforementioned deep breath. (If you try to fix this with adding an entry with the old server name in your host file, you’ll just get “An unexpected error has occured” or the same “Cannot connect to the configuration database”).

This is what you do:

  • Run this stsadm command: stsadm -o renameserver -oldservername oldservername -newservername newservername.
  • Rename and reboot server.
  • Enter Central Admin and look over all your Alternate Access Mappings (you’ll have to change to the new server name everywhere the old server name still shows).
  • I didn’t have this problem with 2010, but you might have to check and possibly reset your site collection admins. I wouldn’t be surprised if you’ll have to go over your host names in IIS in case you are using host headers also.

Cascading Drop Down

The request for Cascading Drop Down, filtered drop down, dependent drop down or what you call them is one of the most common requirements from customers. This rather basic functionality is surprisingly not implemented in either WSS 3.0 or MOSS 2007.

Update: This also works in Sharepoint Foundation (2010). I have created a new post for 2010 here.

What is Cascading Drop Down?
You have two columns in your Sharepoint list, Country and City. Both are lookup/drop down columns. When you choose a country in the Country Drop Down, you only want to see the cities in this country available in the City Drop Down column. This of course makes life easier for the end user, and improves data quality.

Solutions en masse
There are however lots of solutions for this. Datacogs’ Cascading Drop Down is well-known, and various improved versions like SharePoint Cascading Drop Down List (With Filter) Field Type and Query Based Lookup Field Control (Custom field controls), both on Codeplex. These are all free, you can also find solutions out there you have to pay for. I have tried several of these, however good work these guys are doing making this for free, there are some issues that keeps me from using them, like annoying page refresh, creating lots of versions of the list element and the general problems you can get with restore/moving/upgrading data that is not standard Sharepoint.

The solution
Instead, I have used this solution with success. The list is still standard Sharepoint, which gives great flexibility and stability. This way, the filtering is done in the forms for creating and editing elements. Because of this, you don’t even have access to the server to implement this. I have used this solution both in document libraries and in regular Sharepoint lists. Continue reading →