SharePoint

Target Audiences

You can specify a Target Audience in a Webpart, for it to only be visible to e.g. members of a certain AD group. Have you ever wonderd yourself why on earth the new group does not appear in the list and is not valid? Well, I did 🙁 The reason is quite simle. Shortly after the userimport from your AD or another LDAP source there is another import started. This one imports groups and memberships.

Updated Wiki Webpart

Please use my custom field type. It is more flexible –> http://www.hezser.de I updated my Wiki Webpart. For all of you who don’t know what it does: The normal Wiki Edit Form misses the ability to upload pictures. My Webpart, which has to be included to the EditForm.aspx, allows you to upload a picture. It also creates a link in your Wiki post, which displays the uploaded image. This release of the Webpart is multi lingual.

updated SDKs

The updated SDKs are now available for downloading. SharePoint Server 2007 SDK: Software Development Kit and Enterprise Content Management Starter Kit Windows SharePoint Services 3.0: Software Development Kit (SDK)

Get form Url from a list

Whenever you have an ID from a list item, you might want to create a link to its DispForm or EditForm. But how do you get the Url to the forms? 1: SPList list = something; <span class=lnum> 2: </span>list.Forms[PAGETYPE.PAGE_DISPLAYFORM].Url;

„File not found“ error

If somehow the path to your masterpage is broken, you will get an error message like “file not found” when you access a website. This could happen if you create a new site from a template, which comes from another server. You can open your site in SharePoint Designer, though. The KB article A subsite that you create in SharePoint Server 2007 does not inherit master page settings from its parent site, and you receive error messages on the Site Master Page Settings page describes this problem.

Open Office 2007 files from WSS V2/SPS 2003

You all know, that you can open a document via the context menu in SharePoint in editmode in an Office Application. This does not work, if you save e.g. a .docx. But help is on the way: Icons that represent 2007 Office files are incorrect, and the “Edit in Microsoft Office ” option does not appear in a document library in SharePoint Portal Server 2003 or in Windows SharePoint Services 2.

How to get LookupField Information from a listItem

If you want the ID or the value form a LookupField, you can get it easily with this code snippet:SPListItem item = getitsomewhare… SPFieldLookupValue lf = (SPFieldLookupValue) item.ParentList.Fields.GetField(_FieldName).GetFieldValue( item.GetFormattedValue(_FieldName)); if you got the field, fetch its properties viaif (lf == null) { int itemID = lf.LookupId; string itemValue = lf.LookupValue; } Have fun ;-)

Get a listitem by ID

Fetching a listitem by ID will generate an error, if the a listitem with the ID does not exist. To avoid this exception, you can get a listitem by id by searching for it:private SPListItem GetListItem(SPList List, int ListItemID) { try { string defaultView = List.DefaultView.Title; SPQuery query = new SPQuery(List.Views[defaultView]); string caml = String.Format("{0}", ListItemID); query.Query = caml; SPListItemCollection results = List.GetItems(query); if (results.Count == 1) { return results[0]; } } catch (Exception ex) { _ErrorMessage +=

Display a single listitem

You can display multiple list items with SharePoint and SharePoint Designer quite easy. But how do you display a single listitem? I worte a Webpart, which does this. If there are more than one listitem, you can page through them. And if you like, you can pass an itemid via a Webpart connection. In the Webpart properties you can select the list/library. If you like, you can specify a view other than the default view.

Create/Rename/Modify content types

Some content types are hidden. This makes it hard to create a new content type, which inherrits from e.g. the “event”. Via the object model it is very easy to create a content type, which uses e.g. “event” as parent. SPSite site = new SPSite( http://serverurl); SPContentType parentContentType = site.RootWeb.ContentTypes[“Event”]; SPContentType newType = new SPContentType(parentContentType, site.RootWeb.ContentTypes, “newName”); site.RootWeb.ContentTypes.Add(newType); Because creating a new content type is just not enough, I wrote a little console application, which lets you create, rename and delete content types for a sitecollection:

How to make Content Type Searchable in a search scope

Content Types are great to identify your different types of documents and list items. But how can you search for them? In this article I want to show you how to search for your content type via a search scope. First lets create a new content type “contracts”. Go to the rootweb of your sitecollection, and create a new content type: Next, add the new content type to a (new) documentlibrary.

Setting the masterpage Url

Masterpages are great. You can change the appearance from your website very easy by modifying the default.master masterpage in the root of your sitecollection. But how do you get all pages beneath to use the same masterpage? Some pages use their own masterpage library, and ignore the one from the sitecollection rootsite. With this little tool, you can set the masterpage Url for all subwebs of a sitecollection to the masterpage Url from your rootweb, or some url you specify.

Compare SharePoint Lists

With this Tool you can compare two SharePoint Lists. E.g. if you have a test Server and a live Server, you want to know if you created all your Fields with the correct type. You can download this tool here. **Update: ** Here is an example what you have to write in the fields: http://sourcesite/web/subweb listnumberone http://sourcesite/web/anothersubweb listnumbertwo