Monday, November 30, 2009

Searching internal documents is not working. The search service indexes all the documents ok, no errors in the logs etc but no results are displayed

Check the alternate mappings as this usually is the issue. For example if the default mapping is http://sitename.companyname.com/sites/sitename1 it would index but not display the results. Changing the default value to http://server (which is the server name of the MOSS web server) and the Extranet mapping to http://sitename.companyname.com/sites/sitename1 then the results will be displayed.

Sunday, November 08, 2009

Team Collaboration lists such as Calendar, Tasks lists are unavailable within moss publishing site - How do i fix this?

Very Simple - Goto Site Settings > Site Administration > Site Features and Activate the "Team Collaboration Lists" feature

An error occurred during the compilation of the requested file, or one of its dependencies. The type or namespace name 'Publishing' does not exist

As simple as this error sounds - "An error occurred during the compilation of the requested file, or one of its dependencies. The type or namespace name 'Publishing' does not exist in the namespace 'Microsoft.SharePoint' (are you missing an assembly reference?)", it can be tricky to solve.

The easiest solution I have found to solve is to include the following snippet below your includes in your master page.

<%@ Register Tagprefix="PublishingWebControls" Namespace="Microsoft.SharePoint.Publishing.WebControls" Assembly="Microsoft.SharePoint.Publishing, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<%@ Register Tagprefix="PublishingNavigation" Namespace="Microsoft.SharePoint.Publishing.Navigation" Assembly="Microsoft.SharePoint.Publishing, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<%@ Register TagPrefix="PublishingVariations" TagName="VariationsLabelMenu" src="~/_controltemplates/VariationsLabelMenu.ascx" %>
<%@ Register Tagprefix="PublishingConsole" TagName="Console" src="~/_controltemplates/PublishingConsole.ascx" %>

<%@ Register TagPrefix="PublishingSiteAction" TagName="SiteActionMenu" src="~/_controltemplates/PublishingActionMenu.ascx" %></strong>

Saturday, November 07, 2009

How to fix the issue "A feature with ID ... has already been installed in this farm. Use the force attribute to explicitly re-install the feature."

Use -force flag on your deploy operation. For example:

stsadm -o deploysolution -name MyBranding.wsp -immediate -force
stsadm -o execadmsvcjobs
stsadm -o activatefeature -name Mybranding -url http://testurl -force

Monday, October 05, 2009

The minimum accounts you need to install MOSS using MS recommended best practices

Ok - I have been asked this question several times and have also noticed that the right accounts are not used during MOSS installations. Here is a quick summary of all the accounts you need pre-configured in your AD prior to installing MOSS:

  • mosssetupUSER – Pass@word1 – Moss Setup user – Member of: Administrator – SQL: dbcreator and security-admin
  • sqlserversrvc – Pass@word1 – User to create db’s and sql configs – Member of: Administrator – SQL: dbcreator and security-admin
  • caapooldbaccessUSER – Pass@word1 – caa app pool USER acct and to access db – Member of: Administrator – SQL: dbcreator and security-admin
  • sspappool@AIFSMOSS.local Pass@word1 = SSP App Pool Identity – User rights and entitlements assigned automatically
  • sspserviceUSER – Pass@word1 – SSP Timer/Web Services – User rights and entitlements assigned automatically
  • WssSearchSrvcUSER – Pass@word1 – used for wss search – User rights and entitlements assigned automatically
  • searchcontentaccessUSER – Pass@word1 – default user for search content access – User rights assigned automatically
  • searchspccontentaccessUSER – Pass@word1 – user for search specific content access – read access to external content source
  • userprofilesaccessUSER – Pass@word1 – USER who access the AD and user properties – read rights to AD
  • excelservicesUSER – Pass@word1 – USER to access excel content soruces – read rights to excel content sources

Thursday, August 13, 2009

Why should i care about WSP / solution packages in MOSS

Often I find developers writing custom batch scripts, stsadm commands to deploy their customizations ( Site definitions, field types, event receivers, workflow, and features) to MOSS staging/production farms. This is considered a very bad practice due to the following reasons (but not limited to):
1) A farm disaster happened but luckily you had your scripted backup of your farm. But when you restore, web parts are throwing errors
2) Unable to isolate the WebPart errors as the WebParts were manually installed
3) What about WebPart dependencies? Forgot to restore them!
4) Ok I got the WebPart somehow working (VS debugging etc) but wait where are the images?
5) What about the killer Web.config changes in new farm? Did you back that up too?
6) Now that you fixed the WebPart and customizations somehow, how will you deploy this fix to each server in the farm - manually? What if there are 16 servers in the farm?

Bottomline, always wrap up your customization as a solution package (WSP) prior to deploying to MOSS farm. Even your custom Cascading Style Sheet (CSS) files, .aspx pages, and master pages will need to be deployed via WSP if they are to be used farm-wide. As a general rule, if the item in question will affect the entire farm it will likely need to be deployed via WSP.

Best practices steps to create a WebPart

When writing your own custom web part, always remember to execute the following steps:

1. Wrap the web part as a *.dll to be deployed to the web application BIN directory to ensure that code access security can be applied.
2 .Create a *.webpart XML file that will specify the above *.dll, namespace, and class for the Web Part and defines properties for it.
3. Create a Feature.xml file that is one of two files used to copy the .webpart XML file to the Web Part gallery of the site collection.
4. Create an Elements.xml file that is one of two files used to copy the .webpart XML file to the Web Part gallery of the site collection.
5. Write a safe control entry for the web application's web.config file that grants permission for your Web Part to run.
6. Set Code access security policies that define what the Web Part will be allowed to do

Once you finish coding your webpart, create a deployment package (*.WSP) before installing/deploying to your farm

Wednesday, July 29, 2009

Free SharePoint tools from leading vendors - DOWNLOAD TODAY!

Download these free SharePoint tools / add-ons from the following leading vendors:
  1. Bamboo Solutions "Mashpoint" - Access external data sources directly from SharePoint, visualize and interact with them via Web Parts or custom applications
  2. Idera SharePoint Performance Montoring Tool - Free tool that enables easy monitoring of critical performance counters for SharePoint, IIS and Windows Operating Systems.
  3. AvePoint FREE Tool for Item-level SharePoint Restores - delivering full fidelity, item-level restore capabilities directly from live SQL and DPM databases and backups.
  4. Quest SharePoint Discovery Wizard - Find out how many Microsoft SharePoint servers, site collections or sites are on your network. Discovery Wizard for SharePoint freeware gathers critical data about your SharePoint inventory and displays the discovered results in two easy-to-read, HTML reports.

Friday, July 24, 2009

How to implement "Bing.com" Type Ahead Search in your MOSS portal?

1. Download the Sharepoint AJAX Toolkit here - http://www.codeplex.com/sharepointajax

2. Develop a web part (VS project) to implement Bing.com Suggest type functionality using AJAX, .NET 3.0 and SharePoint Web services (you probably need the real code here huh! Email me if you need more information :)

3. Use the AutoComplete Extender in the Toolkit above by copying all the code out of the AutoComplete folder and paste into your web part project (as created in Step 2).

4. Compile and through errors and warnings find and add missing references, add more code files from the Toolkit as needed. Many common files were needed. Note that you need to set any .JS files to EmbeddedResources.

5. Use the MOSS 2007 Search API to build a ASP.NET Web Service to return a list of results based on input string value (keyword). Note that you need to host this web service within the same website (same port) as the Sharepoint site itself. Also dont forget to grant CAS trust for the Web Service assembly.

6) Post a comment if you successfully created the Bing.com type ahead search in MOSS, using the above steps

Wednesday, July 15, 2009

Curtain Raises on SharePoint 2010 Features at MS WPC 2009


Finally some public words from Microsoft on its upcoming version of SharePoint 2010 at the 2009 WPC and the Microsoft SharePoint website (http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/default.aspx). Here are my list of features to get excited about:


1)Introducing VISIO Services
* Create rich LoB data integrated dynamic Visio diagrams that can be viewed and edited via the browser

2) UI
* Ribbon based one/two click UI (can be switched off by power user or admin). And wait your MOSS 2007 sites UI will still look the same with 2010 due to backward compatibility support
* OOB support for cross browsers like FireFox, Apple Safari and "others" :)
* Rich Theming and "Web Edit" feature (edit any web part on any page in place incl. an enhanced WYSIWYG user experience)

3) Media Integration
* Sliverlight WebPart - host videos
* Office 2010 Integrated Media WebParts

4) LoB Integration
* Introducing Business Connectivity Services (BCS) - enhanced BDC that supports Read-Write operations into Line of Business Applications.
* Use SharePoint as a connector to edit (offline edit support) LoB data through Office Apps (like Word, Excel). Watch out from SharePoint Workspace "Groove 2007 on Steroids"

5) Developer & Admin Life "Made easy"
* Intiutive and reorganized Central Admin with a feature boost. Stay tuned for more...
* "Developer Dashboard" exposes debugging information to developers on any page.
* "No Item Limit" Libraries or Lists (the days of 2000 items are so gone)
* A built in "Best Practices Analyzer" for a quick Admin health check
* LINQ Support

6) Need more information??? Visit the SharePoint Conference 2009 in person at Las Vegas - http://www.mssharepointconference.com/Pages/default.aspx

Wednesday, April 15, 2009

Importing custom attributes from Active Directory to MOSS 2007


To do this, first go to your Active Directory Management Console and hopefully you have the Exchange AD Management Plugin installed also (make sure you download this plugin from MS - http://www.microsoft.com/downloads/details.aspx?FamilyID=6be38633-7248-4532-929b-76e9c677e802)

1. Click on the Exchange Advanced Tab
2. Click Custom Attributes
3. Use one of those extensionAttribute values to store your custom information.
4. OK out of AD.

Now goto MOSS Central Admin and do the following:
5. Go to your Shared Services Provider
6. Under User Profiles and My Sites click on User profiles and properties
7. Click on View Profile Properties at the bottom of the page.
8. Add a Custom Property (For e.g. "RCNumber")
9. Select “Do not allow users to edit values for this property”
10. In the Property Import Mapping Section change the Data source field to map: to your corresponding extensionAttribute# (created above) and hit OK.

Do a full user import and your custom attributes should get populated into MOSS

Thursday, April 02, 2009

When i try enabling Windows SharePoint Services Help Search i get an error - SPSearch (administrator)

If you are horrified by the one line error message saying SPSearch (administrator), dont panic. All you have missed is specifying the domain for that user (whom you selected as the administrator). So instead of entering username in the configuration screen as "Administrator" try "\Administrator" (e.g., DEMOS\Administrator)

AS A RULE OF THUMB, WHEN YOU CONFIGURE SEARCH OR ANY SHARED SERVICES IN MOSS AND YOU ARE PROMPTED FOR USERNAME ALWAYS APPEND THE DOMAIN NAME IN FRONT OF THE USERNAME

Wednesday, March 11, 2009

How to check SharePoint version (level of SharePoint you are running)?

1) Goto IIS, select the MOSS website
2) Right click and select Properties
3) Select HTTP Headers tab and you should be able to see a custom HTTP Header called "MicrosoftSharePointTeamServices" with a version number by its side.
4) Compare with table below to see what updates for MOSS your farm has installed:

  • MOSS 20071 or WSS 3.0 Cumulative update (KB956056 & KB956057) 12.0.0.6327
  • MOSS 20071 or WSS 3.0 Infrastructure Update (KB951695 & KB951297) 12.0.0.6318
  • MOSS 20071 or WSS 3.0 post-SP1 hotfix (KB948945) 12.0.0.6303
  • MOSS 20071 or WSS 3.0 post-SP1 hotfix (KB941274) 12.0.0.6301
  • MOSS 20071 or WSS 3.0 post-SP1 hotfix (KB941422) 12.0.0.6300
  • MOSS 20071 or WSS 3.0 SP1 12.0.0.6219
  • MOSS 20071 or WSS 3.0 October public update 12.0.0.6039
  • MOSS 20071 or WSS 3.0 August 24, 2007 hotfix package 12.0.0.6036
  • MOSS 20071 or WSS 3.0 RTM 12.0.0.4518
  • MOSS 20071 or WSS 3.0 Beta 2 TR: 12.0.0.4407
  • MOSS 20071 or WSS 3.0 Beta 2: 12.0.0.4017
  • Office 12 (PDC image - pre-beta): 12.0.0.3111 (This version of Office does not have a support link in the Add/Remove programs dialog box).