Sharepoint Insight by Namwar Rizvi

November 26, 2009

Displaying only Year in SharePoint Calculated Column

Filed under: Architecture, Customization, Solutions, Tips — namwar @ 10:34 am
Tags: , , ,

I wanted to display just the year of a DateTime column of SharePoint. I created a calculated column and set the formula to Year([MyDateTimeColumn]). The result I got was 2,009 ; 2,008 etc. which offcourse incorrect for year. After searching through internet, I found a good article solved my problem.

The correct formula is TEXT(YEAR([MyDateTimeColumn]),”000″)


October 21, 2009

Custom Edit Form for SharePoint Lists

Filed under: Customization, Errors, Tips — namwar @ 11:05 am
Tags: , , ,

If you want to set a custom edit form to your Sharepoint List then please make sure you follow these Golden Rules as correctly suggested by Hugo in a SharePoint news group.

  1. NEVER delete or rename the default pages…
    when you want to create a new EditForm.aspx it’s best to copy it to
    another file and then edit the original one (without renaming it and
    without reassigning the supporting files)…
  2. DON’T ever delete the webparts that exist.
    It’s better to hide them and create new ones “side-by-side”.

These rules are real time savers and I will highly encourage every reader to follow them.

October 14, 2009

How to use Case statement in RenderPattern of a Custom Field Type

Filed under: Tips — namwar @ 10:19 pm
Tags: , , ,

While designing a custom field type, you may sometime need to render different HTML based on the value of field. For example, if you want to display Red,Amber, Green traffic light images to highlight High,Medium, Low value then you need to dynamically switch image url based  on the value of the field.

In CAML, you have Case structure to implement this switching logic. It works very much like the C# switch-case statement. Following is an example of RenderPattern of a custom field which display different images based on the value of the field.

<RenderPattern Name="DisplayPattern">
      <Switch>
        <Expr>
          <Column />
        </Expr>
        <Case Value="1" >
          <HTML><![CDATA[<img alt="Red" src="/_layouts/IMAGES/ewr210m.gif" />]]></HTML>
         </Case>
        <Case Value="2" >
          <HTML><![CDATA[<img alt="Amber" src="/_layouts/IMAGES/ewr211m.gif"]]></HTML>
        </Case>
        <Case Value="3" >
          <HTML><![CDATA[<img alt="Green" src="/_layouts/IMAGES/ewr209m.gif"]]></HTML>
        </Case>
        <Default>
            <HTML><![CDATA[<span>No Value</span>]]></HTML>
        </Default>
      </Switch>
    </RenderPattern>

July 21, 2009

SharePoint / WSS 3.0 SQL Database not found error

Filed under: Errors, Solutions, Tips — namwar @ 9:45 pm
Tags: , , , , ,

While reading the newsgroups, I found a neat solution to share with my readers. If you have deleted content databases of a site collection but you are still getting an error similar to the following in error log

SQL Database ‘WSS_Content_345′ on SQL Server instance ‘DBS1′ not found.

It is because SharePoint config database still has a record of deleted database and trying to connect to it.

Solution:

Run the deletecontentdb stsadm command similar to the following :

stsadm -o deletecontentdb -url http://wss.company.com/sites/name1
-databasename WSS_Content_2

stsadm -o deletecontentdb -url http://wss.company.com/sites/name1

It will delete the old database entry from SharePoint Config database.

July 16, 2009

List of all SharePoint Back-End databases

SharePoint stores end-user content and application configurations across multiple relational databases in the back-end database servers. At a high level, the following are the relational databases:
 Configuration database: Stores topology and configuration information for the complete deployment. Every farm has exactly one configuration database. For information about the configuration database protocols, see Configuration Database.
 Central Administration content database: Stores content associated with the Central Administration site.
 Shared Services Providers (SSP) database: Stores content and configuration for Shared Service Providers (SSPs), such as the user profile services. The capabilities of SSPs are described in [MS-SPFEPO], Section 2.2.2 (Shared Service Provider).
 Shared services administration content database: Stores content for the shared services administration site.
 Content database: Stores all end-user and site content. For information about content databases and protocols, see List and Library Storage.
 Search property store: The search metadata index that stores properties related to pieces of content that are indexed for full-text querying. For information, see section 7.4.1.1.2.
11 of 43
[MS-SPBEPO] SharePoint Back-End Protocols Overview – v1.0
[MS-SPBEPO]: SharePoint Back-End Protocols Overview
Copyright © 2008 Microsoft Corporation.
Release: Friday, June 27, 2008
 Single sign-on database: Stores credentials for end-users to access information from external applications through SharePoint. For information about the protocols used to access the single sign-on (SSO) database, see Business Data Catalog Protocols.

As described by Microsoft in SharePoint Back-End Protocols Overview

SharePoint stores end-user content and application configurations across multiple relational databases in the back-end database servers. At a high level, the following are the relational databases:

  1. Configuration database: Stores topology and configuration information for the complete deployment. Every farm has exactly one configuration database.
  2. Central Administration content database: Stores content associated with the Central Administration site.
  3. Shared Services Providers (SSP) database: Stores content and configuration for Shared Service Providers (SSPs), such as the user profile services.
  4. Shared services administration content database: Stores content for the shared services administration site.
  5. Content database: Stores all end-user and site content.
  6. Search property store: The search metadata index that stores properties related to pieces of content that are indexed for full-text querying.
  7. Single sign-on database: Stores credentials for end-users to access information from external applications through SharePoint.

June 21, 2009

Access Denied while changing name of a Document of Document Library

Filed under: Configuration, Guidance — namwar @ 10:48 pm
Tags: ,

It is natural to assume that if you have Modify permission on any SharePoint item/document then it means you can update any property of that document, right? Wrong! You can update any property of a document/item except Name property. This is because in SharePoint terms, changing the name of the document means two things:

  1. Creating a copy of the current document with the new name and
  2. Deleteing the current document.

If you don’t have Delete permission and just have Modify permission then you can modify every property except the Name property.

So, if you are getting Access Denied error while changing the Name of a document of a SharePoint Documnt Library and you know that you have the Update/Modify permission on that doucment then make sure you also have Delete permission on that document.

June 14, 2009

How to add custom CSS in your WebPart

Filed under: C#, Solutions, Tips — namwar @ 10:37 pm
Tags: , ,

If you want to add custom CSS file for your webpart, here is the code:

  1. protected override void CreateChildControls()
  2. {
  3. base.CreateChildControls();
  4. CssLink cssLink = new CssLink();
  5. cssLink.DefaultUrl = “/_layouts/Test.css”;
  6. this.Page.Header.Controls.Add(cssLink);
  7. }

April 7, 2009

Microsoft SharePoint Designer is now Free !

Filed under: Customization, Tools — namwar @ 9:49 pm
Tags: , , , ,

SharePoint Designer Team at Microsoft has announced at its blog here that Anyone can use SharePoint Designer as a free tool. This is really a step in right direction and will help SharePoint community to build better user experiences. 

You can download the SharePoint Designer from here

April 1, 2009

How to Search on Last Modified By field in SharePoint Advanced Search

Filed under: Bugs, Search, Solutions — namwar @ 9:37 pm
Tags: , , , ,

If you are wondering why you are unable to find any search result for Last Modified By filed in Advanced Search of SharePoint then don’t worry, you are not alone. This is one of the bug which still exist in SharePoint 2007 Server Search engine. I have found a solution posted by Pritam Dhake ina  SharePoint forum. I have used this solution and it works like a charm.

Here are the steps to manually hook the Last Modified By field to the creawled field.

  1. Open Central administration -> Shared Services -> SharedServices (X being the number of the shared services provider for the site you are creating a mapping)  – > search settings -> metadata property mappings 
  2. Click “Modifiedby” to edit the properties 
  3. Make sure  “Include values from all crawled properties mapped” is selected
  4. Click “add mapping” and select the “Office” category from the dropdown list. 
  5. look for a property named “OFFICE:8” , click “OK
  6. Click “add mapping” and select the “ows_Last_x0020_Modified(text)” from the ALL categories dropdown list, Click “OK
  7. Make sure the box is checked “Allow this property to be used in scopes”, click “OK
  8. Click on “Crawled Properties” link on the left side of the Shared Services Administration page. 
  9. Click On the “Office” Category.
  10. The mapped property you just created should be listed in the “Mapped To” column of the Office:8(Text) category.
  11. Click on the Office:8(Text) category to view the properties.
  12. In the “name and information” section, you should see the “property Set ID:” value is  ‘F29F85E0-4FF9-1068-AB91-08002B27B3D9‘ …This is very important!!!
  13. In the “Mappings to managed properties” section the managed property you edited in steps 2 – 7 should be listed. 
  14. The box to “Include values for this property in the search index” should be checked.
  15. Click “OK” to exit this page.
  16. Open “Shared Services administration” -> “ShareservicesX” -> “Search Settings” -> “Content Sources and crawl schedules” 
  17. Click on “Local Office SharePoint Server sites” to expand the dropdown list and select “Start full crawl” 
  18. When the crawl has completed, navigate to the site collection -> click on the search tab. 
  19. Select “Advanced Search” 
  20. In the properties dropdown list select “Last Modified By
  21. Select contains
  22. Enter a name that you know has added / edited a document
  23. Click the magnifier to execute the search
  24. Get back results.

March 24, 2009

Visual Studio 2008 extensions for Windows SharePoint Services 3.0, v1.3 – Mar 2009 CTP

A goow news for SharePoint community :) Microsoft has releasesd the Mar 2009 CTP of Windows SharePoint Services 3.0 v1.3. This CTP contains excellent set of functionalities and saves your precious time. You can download the extensions from here

Following is the overview as released by Microsoft

This is the SharePoint developer tools for Visual Studio 2008. These tools are suitable for use with Windows SharePoint Services 3.0 or Microsoft Office SharePoint Server 2007. It includes project and item templates for common SharePoint artifacts, it includes build, packaging and deployment for SharePoint solutions and it includes the SharePoint Solution Generator which creates a new Visual Studio 2008 project from a SharePoint site.

The tools provide item templates for List Definition, List Definition from Content Type, Content Type, Field Control, Web Part, Module, Root File, Template, Event Receiver, and List Instance. It provides project templates for Team Site Definition, Blank Site Definition, List Definition, Web Part and Empty. It works with Visual Basic .NET and C# languages and a comprehensive user guide is included. It does not include the SharePoint Workflow templates as they are built in with Visual Studio 2008.

New features in version 1.3 include:

  • Can be installed on x64 Server OS machines running SharePoint x64. Previously only x86 Server OS could be used
  • Separate build commands for package, deploy and retract are added as Visual Studio menu items
  • WSP View improvements for consistency of deleting feature elements, merging features and adding event receivers to features
  • Command line build, package and retract commands are included enabling continuous integration and build servers. Previously command line build of SharePoint projects was very difficult
  • Refactoring support for renaming of Web Parts. Previously renaming a web part required changes in several files in the project
  • Solution Generator can now generate solutions from publishing sites. Previously only regular sites could be generated
  • Allowing partial trust BIN deployments of web parts
  • New project item template for SharePoint RootFiles items
  • Deployment will now optionally remove conflicting existing features on the development server prior to redeployment. Previously any feature name conflicts would result in an error
  • Ancillary assemblies such as for business logic can now be added to the SharePoint Solution WSP
  • Hidden features related to Site Definition projects are now shown in WSP View. They are no longer hidden
  • For advanced users a fast deploy is included to update only the compiled assembly on the SharePoint development installation
  • Deployment step logging is included
  • The List Definition from Content Type template now allows for the creation of a List Definition Event Receiver
  • The User Guide is now installed with the extensions instead of being a separate download
Next Page »

Blog at WordPress.com.