Sunday, May 16, 2010

Search Crawling Stops or The parameter is incorrect in sharepoint search

This is one of the worst problem I came across. :(

I don't blame Microsoft for this, but I can say a wrong governance model is the reason for this.

Problem: My client complaint that a new item added on the site is not comes under a search result since last few days. I spent lot of a time to find out the real cause. When I have gone through the Search Crawling log an error is found saying "The parameter is incorrect in sharepoint search". When I checked for all the other sites on the farm all are working fine with search and none of the site has given such error at the time of crawling. That has increased my curiosity.

After spending a full day at last I found a reason and its a cause for small party ;), thanks to Mattias Lindberg

Solution: The reason which stops the crawling for the site is the user we have added in the site are more than 5000 in a particular group instead of adding an AD Group.

I am just copying the workaroung given by Mattias below.

Our solution was to require sites with over 1500 members to use an AD group for keeping track of membership, as recommended by the KB for SPS 2003. One disadvantage with this approach is that you must maintain membership by updating the AD group so you can no longer request membership using SharePoint standard dialogs.

Probably an article is wriiten for SPS 2003 but infect it is applied to MOSS 2007 as well.

Set Domains for People Picker in SharePoint

I am currently working with one of the retail client where we have one requirement as below.

Client is having 4 different domains set for their different group of companies.
1) abc, 2) def, 3) uvw and 4) xyz.
Now client doesn't want a users from domain "uvw" to search by anyone (including site admin) in people picker.

Solution:
I have found a very good article by Joel Oleson @ set propery for people picker

you can use a command as "stsadm.exe -o setproperty -url http://server:port -pn "peoplepicker-searchadforests" -pv "forest:foo.corp.com;domain:bar.foo.corp.com", LoginName, Password"

Thursday, May 13, 2010

Charting in SharePoint using Google APIs

Charts in SharePoint using Google APIs, very good article from Alexander Bautz on EndUserSharePoint.

Preview Image on Link Mouse Hover

One of the very common requirement. And I found a very good article on EndUserSharePoint one of my favorite site for learning something new on SharePoint.

Click here to learn how implement a MouseHover on Link for Image Preview.

SharePoint Approval workflow restart on Edit Item

This is a very old and very common requirement. But after working on SharePoint since last 3 years this is the first time I came around with such problem and it is very surprising for me as well that why I never came across such problme in past.

1. I never came across such requirement
2. HotFix is already installed on the servers.

Problem Statement

I have one Document Library called : Company News, I have attached a sequential workflow with Approval and Publisher group with On Add and Edit items. Now whenever a new item is created in document library it starts the workflow and approver approves it.

Once approver approve the item, it goes to publisher being asequential workflow for their approver. But since publisher is also approving the item, it is still showing an item as InProgress.

Solution

Download the HotFix from http://support.microsoft.com/default.aspx?scid=kb;en-us;955586

Friday, May 7, 2010

Session Timeout in SharePoint

Since long I have a question that how can I implement a session time out in SharePoint sites. But i never explore as there is no such requirement in any of my project till now.

Suddenly the requirement came and we have to suggest a way to do that with the minimal efforts. And after searching on google i found this and this..., though still we haven't implemented it :(

I am giving you the easiest way directly here to implement that, edit your master page and add the below script in javascript block.

function MySiteTimeOut()
{setTimeout("SessionTimeOut()", 300000);}

function SessionTimeOut()
{document.execCommand("ClearAuthenticationCache");}

This is the same function called when you click on Sign-out in SharePoint site.