Friday, April 29, 2005

Custom navigation Elements in Portal Header

One of the first things most portal administrators try to do is modify the navigation bar at the top of the default portal page and insert their own links. Although this element appears to be a web part it is actually an ASP.NET server control - compiled code that cannot be modified. You really only have two options if you want to preserve the formatting and layout of the header without sacrificing it's dynamic capabilities: 1) Write your own ASP.NET control to replace it, or 2) Use SPS Areas and some creative HTML to work around it. Since I'm no .NET expert, I'll show you how to do the latter and leave the former up to the real programmers.

Here's how to add a new link within the header navigation:

1. Create a new area and set it's location to 'Home'.
2. Be sure to leave 'exclude from portal site navigation' unchecked.
3. Navigate to the new area.
4. Open the default page in Frontpage 2003.
5. Switch to code view and locate the first 'meta' tag.
7. Insert a meta refresh tag with the appropriate destination URL (click here for an example).
8. Locate the first 'Form' tag.
9. Delete all the code between this tag and the closing Form tag at the end of the page.
10. Save the page back to the portal.

You should see the link for the Area you created in the the header navigation bar. Click on it and it will take you the new default.aspx page which, having been modified to execute an instantaneous redirect, will now take you to the original link.

Hey, it ain't pretty, but it works!!!

Thursday, April 28, 2005

Implementation Prerequisites

This is just a list to remind me of all the things I need to include in a new portal implementation but I thought others might find it useful (if you're not sure what something is, post a comment and I'll provide a link):

  • Advis SiteNavigator Web Part
  • Custom Data View for Company News Area
  • MSDN Recycle Bin Code for Document Libraries
  • What's New Web Part
  • RSS Feed Reader
  • iFilters (PDF, Visio, MHT, etc.)
  • Win2Go STS Admin GUI Tool
  • Application Center Test (ACT)
  • Office 2003 Web Parts
  • SmartPart for Sharepoint

Update 1: How could I forget the Contoso Search Box control? This is a MUST HAVE!

Sharepoint Discussion Groups

Let's face it - the Discussion Group feature in Sharepoint is not the greatest in the world. Yes, it's functional, but for those of us used to spending a lot of time on BB's, it just doesn't measure up.

Until someone releases full-fledged BB software for Sharepoint the best bet is customizing the existing list template. Serge van den Oever has a good implementation that he's been kind enoug to share with the community. Check it out and let him know if you like it.

Sunday, April 24, 2005

Portal Navigation Web Parts

Several vendors have released web parts that provide simplified navigation within portal and WSS sites. In my opinion, the best one is SiteNavigator from Advis. It has more features and options than any of the other parts I've tested and is easy to implement.

While it is fairly simple to retrieve a list of sites and subsites from SQL or query the webs.asmx web service, displaying a nested, hierarchical tree of site based on user permissions is an altogether more difficult task. Microsoft has made this information available via the Sites property of the Microsoft.SharePoint.Administration.SPSiteCollection object. Unfortunately, this object must be invoked by an account that has local administrative access to the Sharepoint server. Advis provides a handy impersonation feature that allows the part to function as an administrative user but this displays all sites, even those the user does not have access to, thus defeating the overall purpose of the web part.

Fortunately, local security policies can be used to meet the administrative requirement of the SPSiteCollection object without completely compromising network security. First, create an AD group for all non-administrative users (place your admins in a separate group). Next, add the SPS users group to the local administrators group of the Sharepoint server. Finally, set the 'Deny Log On Locally' and 'Deny Log On Through Terminal Services' settings in the local security policy (along with any other exclusions your environment may require). You may also wish to disable administrative file shares.

This method will allow each user to see a nested tree view of the sites they have permissions to access. The web part may be implemented on any SPS or WSS site via the web browser Add Web Part function or added to the left-hand navigation pane using Frontpage 2003.

Friday, April 22, 2005

Proxy Server Bug Crawling External Sites

In some implementations, the Sharepoint Search Service will fail to crawl content sources with fully-qualified domain names (such as but will crawl internal sources using NetBIOS name resoultion (http://anyserver) . Although there has not yet been any confirmation from Microsoft, this appears to be a bug in SPPS. To work around this issue, perform the following steps:

1. Go to Sharepoint Portal Server Central Administration
2. Click on 'Configure account and proxy settings'
3. In the Proxy Server Settings section, click on the 'Use the proxy server specified' radio button.
4. Enter an IP address (it does not have to be a valid address as you will be bypassing it entirely).
5. Enter "80" in the Port field.
6. Check the 'Bypass proxy server for local (intranet) addresses' box.
7. In the 'Do not use proxy server for addresses beginning with:' text box, enter "http://*". This will bypass the proxy address for all HTTP requests. You may enter additional exclusions for HTTPS, FTP, etc. by separating each entry with a semicolon.

Note: Advanced users may recognize the "http://*" entry as the same setting available in the inclusions property of a content source; however, assigning this to a content source or index will not work - it must be assigned in the Proxy settings.

Thursday, April 21, 2005

Sharepoint Admin Permissions Hotfix

Microsoft has just released a hotfix for the domain admins permission issue in SPS 2003. Refer to the following KB article (you'll need to open an issue with Microsoft to get the hotfix).

Monday, April 18, 2005

Sharepoint Backup and Restore

Here's an excellent article on backing up and restoring your SPS databases.

NOTE: The Sharepoint Backup and Restore Tool is in the /bin directory of your sharepoint web (i.e. c:\inetpub\wwwroot\sharepoint\bin).

Friday, April 15, 2005

Web Part Verification

This is an exellent article on testing web parts prior to deployment. Good information for those of us who like to crank out a quick part and move on to the next problem. And we wonder why our phones are always ringing...

Thursday, April 14, 2005

Sharepoint Branding

Here's a great article from Daniel McPherson on branding Sharepoint sites.

Sharepoint Adviser Live Conference

The Sharepoint Adviser Live Conference 2005 is being held June 12-16 in Las Vegas. I've never attended one of these events but the schedule and conference sessions look promising.

Tuesday, April 12, 2005

Smartpart Web Part Creator

For those of you who are a bit more technical, Jan Tielens has released version 1.0 of his Smartpart web part creator. Get it here.

Jan's promised some examples in the near future. Be sure to check Maxim Karpov's blog for more information on implementing Smartpart.

Thursday, April 07, 2005

Disabling Office Viewers for Document Library Items

Sharepoint users with Office 2003 installed on their desktop often complain about the items in document libraries opening in the Office viewer rather than the full application. To disable this behavior, open Word, go to Tools Options General and uncheck "Allow Starting in Reading Layout". This should force the document to open in full Word/Excel/PowerPoint.

Note that the document will still open in read-only mode. To edit the document and save a new version back to the document library, choose Edit from the drop-down menu for the item (proper permissions required).

What's New Webpart

Here's a neat little web part that shows the most recent additions to your Sharepoint portal. Useful for WSS sites and workspaces.

Note: You'll need access to the Sharepoint server to install this webpart using the stsadm tool. Refer to the readme for instructions.

Using ACT to Stress Test Sharepoint

Coming from a testing and performance measurement background, I can testify to the importance (and difficulty) of assessing the performance of a Sharepoint implementation prior to deployment. James Edelen has a great post on stress testing using Microsoft Application Center Test. Read it here.

While this doesn't address functionality or user-experience issues, it will give you a working data set for determining if your configuration is adequate for anticipated usage patterns.

TIP: Run your test case(s) iteratively after the basic install (to establish a baseline), then each time you make customizations to templates/site definitions, add lists and content, import documents, created custom web parts, etc. This way you'll know where your tipping point is and which features consume the most resources.

Tuesday, April 05, 2005

Sharepoint Portal Server Training Kit

Via John West's Blog:

Now Available: Microsoft Office SharePoint Portal Server 2003 End-User Training Kit

This kit has been specially designed to ensure that SharePoint Portal Server end-users can effectively use the capabilities of the product to better share information, collaborate with others and find relevant information and resources within their organization.

Keeping in mind the unique needs of beginners and advanced users, the kit provides easy to understand content that can be accessed either as a self-paced study guide or as a quick reference guide. While the kit is scoped to cover SharePoint Portal Server, it is also an effective tool for users of Windows SharePoint Services. The kit also provides illustrations of SharePoint integration with Outlook 2003, FrontPage 2003, and the research task pane in Office 2003 programs.

The kit contains demos that visually guide the user on how to perform various tasks. These demos can be viewed in an auto run mode where the user is visually guided through the various steps or can run in an interactive mode where the user is invited to perform the required action as a way to get hands-on learning on the particular task.

Topics covered are scenario based and include:

  • Effectively Collaborating on Projects
  • Conducting Effective Meetings
  • Managing Personal Files and Information
  • Finding and Connecting with Others
  • Navigating the Portal
  • Personalizing Your Sites
  • Configuring Access for Users and Groups
  • Advanced Searching
  • Connecting Web Parts

    There is also a two page quick reference card in PDF format that you can print out for your end users.

    The training kit is publicly available for download here

    It can be installed:
  • as a portal area in a SharePoint Portal Sever
  • as a set of web pages to an IIS server
  • to any PC with a browser as a set of HTML pages

  • Update: The install works best when you download it directly to the Sharepoint server.

    Update 2: When installing, enter the URL of your Sharepoint server in the Name field, minus the 'http://' prefix.

    Monday, April 04, 2005

    Modifying the Data Source for a Links Web Part

    The Links list in a Windows Sharepoint Services (WSS) site provides a convenient way to inclue a group of hyperlinks on any page; however, the Links web part is hard-coded to reference only this list. Users who wish to create a separate list of links have no easy way to add an additional Links web part to their pages that will display content from their new list. Fortunately, the Links web part can be modified using Frontpage 2003 to achieve the desired functionality.

    Each list in a WSS site has a specific database GUID associated with it. There appears to be no way to force the List web part to retrieve data from a different list in the web interface - you have to physically change the GUID embedded in the web part code. This requires you to edit the web part in Frontpage. If you're not used to working with ASP.NET code, don't worry - it's not all that tricky once you've done it a time or two.
    Here are the steps involved:

    1. Create the new list you want the web part to retrieve content from and add content to the list.
    2. Click the Modify Settings and Columns link.
    3. From the page URL in the browser address bar, cut and paste the portion of the URL in curly braces, including the braces (it should be near the end) into Notepad.
    4. Insert a new List web part on the main page.
    5. Edit the main page in Frontpage 2003.
    6. In design view, click on the new web part so it is highlighted with a dark yellow border.
    7. Switch to code view. The selection should be highlighted in black.
    8. Scroll down and find the following line:
    9. Replace the content in the curly braces with the portion of the URL you pasted into Notepad.
    10. Save the page.
    Now the web part will refer to the correct list and adding new links will show up in both the original list and the new web part.

    Download this Tip as a PDF.