Home

Friday, August 21, 2009

SharePoint 3.0: Clarifying Check Out Status on Multiple Document Upload

I found a post on TechArchive.net, "Re: disabling check out on document library upload," in which the author was observing that multiple document uploads were resulting in status of "checked out" after uploading. The author cited a post of mine, "SharePoint V3: Achieving Checked-In Status When Uploading Mulitple Documents," and explained that the post didn't solve the issue.

So, I am posting the two possible reasons why, after uploading multiple documents to a document library, the uploaded documents have the status of "checked out."


1. Require check out is configured on the library

I did a test, configuring six document libraries, and then performed a multiple document upload. Here are the results:

a.
Document library configurations resulting in "checked out" status when multiple documents are uploaded:

Require Check out + No Versioning
Require Check out + Major Versioning
Require Check out + Major and Minor Versioning

b.
Document library configurations resulting in "checked in" status when multiple documents are uploaded:

No Require Checkout + No Versioning
No Require Check out + Major Versioning
No Require Check out + Major and Minor Versioning


2. The document library is configured with a required field. When the document upload completes, the field is not populated and the status for each of the uploaded documents is set to "checked out."

Monday, August 17, 2009

SharePoint 3.0: Custom Permission Levels

When planning site collection security models for SharePoint deployments, there is certainly a case for simplicity and sticking to the out of box permission levels. Doing this requires the least amount of thought, administrative effort, documentation, and training.



As an added benefit of sticking with the out of box, you can leverage many of the Web based training tutorials and end user, computer based training modules, that are available on the Web with since most of these instructional resources are based on out of box configurations.

Having said that, circumstances and business requirements can require something different than the out of box permission levels. For example, you might want to lock out SharePoint Designer from some users by configuring a permission level that excludes the "Use Remote Interfaces" permission. Or, you might want to prevent content contributors from being able to delete by excluding the "Delete Items" permission. In most cases, having thirty three distinct permissions allows enough flexibility to accommodate.

When I need to utilize custom permission levels, I put a good amount of effort into planning for these and ensure to be consistent with their names, descriptions, and definitions. Below is a sample matrix that I used for planning four custom permission levels, instead of using those which are out of box.


Friday, August 14, 2009

Publishing SharePoint Web Applications in ISA Server

Background:

This article assumes SharePoint Web applications are configured with NTLM Authentication, that multiple Web applications are being published outside a company's firewall, and ISA Server is being used as a firewall. The scenario described also assumes that a one set of Windows credentials has access to multiple SharePoint Web applications.


Description:

It is common for a SharePoint environment to include multiple Web Applications. Since each Web Application requires its own IIS Web site and may have its own IP address and host header, having mutliple Web applications does create some complexity and therefore requires some consideration.

It gets a bit more complicated when multiple Web applications need to be made accessible outside of a company's local network, such as an extranet or public internet scenario. In this case, firewall rules and NAT must be configured for each Web application to protect the organization and the application being published.

Then comes the user experience. Inside the network, client computers often times belong to the same domain as the SharePoint servers, or at least a trusted domain. Furthermore, the domain URLs are considered either "Local Intranet" or "Trusted" by the users' internet browser. In this environment, a user can navigate from Web application to Web application without receiving an authentication prompt. Life is good on the local network.

This all changes when Web applications are published outside the company's firewall. First, client computers accessing the sites no longer belong to the same domain as the SharePoint servers. Second, the users' browsers aren't configured to automatically log users into the Web applications. The challenge this creates for the user is if a contiguous user experience requires accessing multiple Web applications, the user is going to receive an authentication prompt for each application.


Solution:

ISA Server allows Rules to share Listeners. What this means is that you can create one Listener and add multiple Web applications to that Listener. Then, you can create a Rule for each unique Web application, associating these Rules with the Listener.

The result of this is that users can access multiple, externally facing SharePoint Web applications, without requiring to authenticate to each one.

Monday, August 10, 2009

MSDN: Enterprise Search URL Syntax Reference

One of the most simple, yet powerful features of Microsoft SharePoint Search is the URL syntax. Using URL syntax you can submit a query to a search results page without requiring the use of a SharePoint search box. This means that search results can be rendered on a search results page any way that the proper URL string can be built.

For example, search queries may be submitted implicitly throughout the user experience as a user is navigating a SharePoint Web site. Hyperlinks (dynamic or static) containing search query parameters do all of the work.

The MSDN article, "Enterprise Search URL Syntax Reference, http://msdn.microsoft.com/en-us/library/aa637082.aspx," explains the proper format for submitting keywords, scope, view, and start page information through the query string.

Thursday, August 06, 2009

Microsoft's Position on Changing SharePoint Databases

I caught a Twitter message from a colleague, Mauro, today passing along a Microsoft Help and Support article which discusses Microsoft's position on database modifications for SharePoint Products. In short, the article breaks down to Microsoft doesn't support changes to SharePoint databases.

The article, "Support for changes to the databases that are used by Office server products and by Windows SharePoint Services (http://support.microsoft.com/default.aspx?scid=kb;EN-US;841057 )" includes a list of unsupported database changes, shown below:

" Examples of such database changes include, but are not limited to, the following:
  • Adding database triggers
  • Adding new indexes or changing existing indexes within tables
  • Adding, changing, or deleting any primary or foreign key relationships
  • Changing or deleting existing stored procedures
  • Adding new stored procedures
  • Adding, changing, or deleting any data in any table of any of the databases for the products that are listed in the "Applies to" section unless Microsoft protocol documentation is followed exactly
  • Adding, changing, or deleting any columns in any table of any of the databases for the products that are listed in the "Applies to" section
  • Making any modification to the database schema
  • Adding tables to any of the databases for the products that are listed in the "Applies to" section Changing the database collation "

This subject comes up rather frequently during discussions and as a proponent of SQL Server in general and especially its Business Intelligence features such as Reporting Services for extending the capabilities of SharePoint solutions, I feel compelled to chime in.

I completely understand Microsoft's position. How could a software company possibly support custom, schema changes or functional modifications to their application? They cannot. Nor can Microsoft really ensure their software will function (optimally) with any type of foreign database object running on the live databses, even a view.

However, accepting Microsoft's position doesn't change two things:

1. SharePoint information is business intelligence information and often times needs to extract, transform, load, and display in other places than its native content database.
2. Where there's a will there's a way.

Exploring some scenarios...

If you need to add custom functionality to your SharePoint environment, then you might build your own custom database with triggers, functions, sprocs and all, and then use a programmatic methods to move the data you need out of the SharePoint content databases and into your custom database. Then, use Web Parts to deliver the data and functionality from the custom database throughout the SharePoint Web sites. This does not overstep any of the guidelines listed in the article.

Secondly, T-SQL queries are some times necessary for reports when using the Object Model as an XML data source reaches limitations. If you need to integrate SharePoint data with other systems or for reports you can:

1. Create a database snapshot of the SharePoint content datbase (if you have SQL 2005 / 2008 Enterprise Edition)
2. U
se programmatic methods to move the data from the SharePoint content database into an intermediary database for abstraction purposes.
3.
Move data into an existing data mart or data warehouse during regular intervals.

Any of these three approaches allows you to leverage Views. The benefits of compiling T-SQL queries as Views is that you can secure them, you can use them as data sources in SQL Reporting Services reports, and you can store them on the database where they are accessible, reusable, they get backed up with database backups, you can optimize query performance with Indexes, and querying Views performs better because you are not storing queries nor are you filtering or transforming data in the Web tier.

Tuesday, July 21, 2009

SharePoint 3.0: Unable to Activate SQL Server 2008 Reporting Services Add-in for SharePoint

Background:

The SQL Server 2008 Reporting Services Add-in for SharePoint is available for download at this location:

Microsoft SQL Server 2008 Reporting Services Add-in for Microsoft SharePoint Technologies
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=200fd7b5-db7c-4b8c-a7dc-5efee6e19005

The downloads include a readme_rsaddin.htm file, which contains complete instructions for installing and configuring the Add-in.


Description:

After running the rsSharePoint_x64.msi (installer) file, the setup appears to have finished. However, by following steps in the readme_rsaddin.htm file for activating the Add-in features, it is not possible to activate the features.

The reason it is not possible to activate the features is because setup experienced an error and the user does not have permission to add the feature to the site collection.

Navigate to:
C:\Documents and Settings\SetupUser\Local Settings\TempOpen the log file, RS_SP.0.log

Within the log file, look for an error; for example:Activating feature to root site collection: https://centraladmin.domain.com******* User does not have permission to add feature to site collection: https://centraladmin.domain.com


Solution:

To resolve this, either log in as a user that is a Site Collection Administrator on the Central Administration site collection or make the current user account a site collection Administrator by doing the following:

Navigate to Central Administration > Application Management > Site Collection Administrators.
Select the Central Administration site collection.

Add the desired user account as either primary or secondary site collection administrator for the site collection.

Once logged in as a Central Administration, Site Collection Administrator, run the rsSharePoint_x64.msi again, this time choosing the "Repair" option.

To verify the permission issue has been resolved, navigate to:
C:\Documents and Settings\nbisciotti\Local Settings\Temp

Open the log file, RS_SP.0.log

Within the log file, the entry should now read:
Activating feature to root site collection: https://centraladmin.domain.com
Activated feature for root site collection: https://centraladmin.domain.com

Next, navigate to Central Administration > Site Actions > Site Settings > Site Collection Administration > Site Collection Features

Activate the "Report Server Integration Feature"

Next, navigate to Central Administration > Application Management

The "Reporting Services" panel should now be available and visible. From here you can proceed with the SQL Server 2008 Reporting Services integration configuration.

Wednesday, July 01, 2009

SharePoint 3.0: Error: Access Denied When Activating Publishing Infrastructure, Site Collection Feature

Description:

When attempting to activate the "Office SharePoint Server Publishing Infrastructure" Site Collection Feature, an "Access Denied" error is presented.

Solution:

* Start > Programs > Administrative Tools > IIS Manager
* Expand the Application Pools node, locate the application pool associated with the site collection that is experiencing an issue
* Right-Click the Application Pool and select "Properties"
* Select the "Identity" tab
* Note the user account

* Start > Programs > Microsoft Office Server > SharePoint 3.0 Central Administration
* Site Actions > Site Settings > Advanced Permissions
* Click "Groups"
* Click "Farm Administrators"
* New > Add Users
* Add Users: Type the name of the Application Pool Identity account
* Give Permission: Add users to a SharePoint group: Farm Administrators
* Add the Application Pool account to the Farm Administrators group
* Send E-Mail: Uncheck (you most likely do not want to send an email)
* Click OK

* Try again to activate the "Office SharePoint Server Publishing Infrastructure" Site Collection Feature


Reference:

SharePoint - Access Denied When Enabling The Publishing Infrastructure Site Collection Feature http://www.sharepointblogs.com/george/archive/2009/03/24/sharepoint-access-denied-when-enabling-the-publishing-infrastructure-site-collection-feature.aspx

Tuesday, June 30, 2009

Office Word 2007: Change Orientation on Page within Document

Description:

Instructions for changing page orientation (portrait vs. landscape) on a single page of a document (as opposed to the entire document), in Word 2007.


Solution:


Assuming for purposes of explanation that the entire Word document should be portrait, except one page within it should be landscape orientation:

1. Place cursor on the page prior to the one which will be formatted as landscape.
2. Along the ribbon, select "Page Layout," then "Breaks," then "Next Page."
3. Select "Page Layout," then "Orientation," then "Landscape." This will set all following pages to Landscape.
4. From here, set the following page back to portrait.


Reference:

Changing Page Orientation Within a Document
http://wordprocessing.about.com/od/wordprocessingsoftware/ss/pageorient.htm

SharePoint 3.0: Error: Your search cannot be completed...

Description:

Upon submitting a search query using an advanced search box, selecting more than one search scope checkbox from the advanced search web part, the corresponding search results page returns no results and instead returns the following errror:

"Your search cannot be completed because of a service error. Try your search again or contact your administrator for more information."

Further testing and attempts to isolate the issue resulted in finding out that one scope in particular seemed to be problematic. When this particular search scope was used in the search query, the results page would return an error. However, if this scope was not selected during the query, then the search results would display normally.


Solution:

The problem scope, called "All Content," initially had the following scope rules:

* All Content, Include
* ContentSource = People, Exclude

The steps to resolve the issue are as follows:

1. Remove all existing scope rules
2. Create new scope rules to explicitly define each content source such as:
* ContentSource = Content Source 1, Include
* ContentSource = Content Source 2, Include
* ContentSource = Content Source 3, Include
* ContentSource = People, Exclude
3. Update scopes

Tuesday, May 19, 2009

SharePoint 3.0: Overcoming Upload Limits and Timeouts

The following instructions are recommended for overcoming out of box limitations related to uploading documents. These configurations are done once per web application and are not global changes.


1. Central Administration > Application Management > SharePoint Web Application Management > Web Application General Settings > Maximum Upload Size: Change to 2047 MB (Maximum)


2. Internet Information Services Manager > Web Site > Right-Click > Properties > Connections: Change Setting (e.g. 600 seconds)


3. Windows Explorer > Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Layouts\ > Web.Config

Replace This:

httpRuntime maxRequestLength="2097151"

With This:

httpRuntime executionTimeout="999999" maxRequestLength="2097151"


4. Web.Config Continued...

Replace This:

httpRuntime maxRequestLength="51200"

With This:

httpRuntime executionTimeout="999999" maxRequestLength="51200"


5. Windows Explorer > INET PUB\WWWRoot\VirtualDirectories\WebApplication\ > Web.Config

Add the snipet from http://support.microsoft.com/kb/944981%20BconfigSections between the "configSections" closing tag and the "SharePoint" opening tag (like Shane suggests in his post).


References:

You cannot upload files that are larger than 28 MB on a Windows Server 2008-based computer that is running Windows SharePoint Services 3.0
http://support.microsoft.com/kb/944981

Error message when you try to upload a large file to a document library on a Windows SharePoint Services 3.0 site: "Request timed out"
http://support.microsoft.com/kb/925083

Windows Server 2008 WFE will not allow large file uploads
http://msmvps.com/blogs/shane/archive/2008/12/17/windows-server-2008-wfe-will-not-allow-large-file-uploads.aspx

Monday, May 18, 2009

Got to love it...


SQL Server 2008: A Must Do Configuration for Resource Governor

Over the past few months, I have been upgrading numerous SharePoint environments to SQL Server 2008 and I have wrestled with system performance. Unless adjustments are made, SQL Server will attempt to consume more than its share of processor. I've seen this cause SharePoint web applications to freeze and become unusable.

A resource management measure for SQL Server 2008 which I consider to be crucial for SharePoint environments, is outlined below. These steps will limit SQL Server Management Studio and Query Analyzer to 25% processor utilization, and possibly preserve the usability of the SharePoint farm. I strongly recommend these steps for SharePoint environments using SQL Server 2008.


SQL Server 2008 Resource Governor

Steps take from TechNet article:
Integration of SQL Server 2008 and Office SharePoint Server 2007
http://technet.microsoft.com/en-us/library/cc990273.aspx


1. Create a resource pool to limit CPU usage to 25 percent

CREATE RESOURCE POOL poolAdhoc
WITH (MAX_CPU_PERCENT = 25);


2. Create a workload group for ad hoc queries and register it with the new resource pool

CREATE WORKLOAD GROUP groupAdhoc
USING poolAdhoc;


3. Create a function that classifies Management Studio and Query Analyzer as members of the ad hoc group

CREATE FUNCTION adhocQueryClassifier() RETURNS SYSNAME
WITH SCHEMABINDING
AS
BEGIN DECLARE @grp_name AS SYSNAME
IF (APP_NAME() LIKE '%MANAGEMENT STUDIO%')
OR (APP_NAME() LIKE '%QUERY ANALYZER%')
SET @grp_name = 'groupAdhoc'
RETURN @grp_name
END
GO


4. Register the new function with Resource Governor

ALTER RESOURCE GOVERNOR
WITH (CLASSIFIER_FUNCTION= dbo.adhocQueryClassifier);


5. Restart Resource Governor

ALTER RESOURCE GOVERNOR RECONFIGURE;

Monday, May 04, 2009

FAST ESP Videos on YouTube

Want to view a demonstration of current and future capabilities of FAST ESP? Here are a couple YouTube videos that provide a great overview.

Fast ESP for SharePoint - 1 of 2
http://www.youtube.com/watch?v=kTbcCNby8xE

Fast ESP for SharePoint - 2 of 2
http://www.youtube.com/watch?v=WjW6ZjX8Pyk

SharePoint 3.0: How to Crawl Case Sensitive URLs

By default, MOSS will not crawl URLs which are case sensitive. However, Microsoft Help and Support Article ID 932619 provides instructions for making a registry modification to the Index server which allows case sensitive URLs to be crawled.

Microsoft Help and Support Article ID 932619:
You cannot crawl case-sensitive Web content in SharePoint Server 2007
http://support.microsoft.com/kb/932619

It is important to note that a content index reset is required. For this reason, this modification may require a maintenance window for production environments, especially large environments with lots of items in the content index that will need to be crawled again.

Like most system changes, it is a good idea to test this first in Development or QA environments, record the change, and then schedule a time to deploy it to production. The instructions are straightforward, however, the first time that I made the modification, the search service didn't start properly so I had to stop it and start it a second time. Then it was fine. Running through the steps in Development or QA first will allow you to work the kinks out.

Thursday, April 16, 2009

Windows Server 2008: IPV4 Weak Host Configuration

It is very common to have a Microsoft Office SharePoint Server (MOSS) farm that includes mutliple web applications, each having its own host name and ip address.

In fact, when SSL certificates are installed on the web server directly (i.e. not offloaded to the hardware load balancer), then there is a requirement to assign unique ip addresses for each web application in order to ensure that the web site bindings (ip address + host name + port) remain unique on the web server.

When a web server is multihomed like this, it is very important to consider and configure the approprate strong or weak host model, in order to ensure that the web server will behave properly. If this configuration is neglected or set incorrectly, then it will cause Windows services to fail, IP packets to be disgarded, and the web server to "break."

Here is an excellent article describing the strong and week host models:

TechNet: The Cable Guy: Strong and Weak Host Models by Joseph Davies
http://technet.microsoft.com/en-us/magazine/2007.09.cableguy.aspx

Returning to the subject of the multihomed MOSS web server; here are steps that may be followed to configure the IPV4 interface as "weak":

1. netsh interface ipv4 show interface
2. See the IDX number
3. netsh interface ipv4 set interface [IDX number] weakhostsend=enabled
4. netsh interface ipv4 set interface [IDX number] weakhostreceive=enabled

Sunday, April 12, 2009

SharePoint 3.0: Error: The Backup/Restore Job Failed

Description:


In this scenario, a full farm backup failed because the backup of the "SharedSearchIndex" failed.

Error: The backup/restore job failed. In order to rerun the backup/restore the timer job must be deleted from the Timer Job Definitions page. Failure Message: The backup job failed. For more information, see the error log that is located in the backup directory.

Central Administration > Operations (Tab) > Backup and Restore (Heading) > Backup and restore job status




Error: Object Shared Search Index failed in event OnBackupComplete. For more information, see the error log located in the backup directory. WebException: The current operation timed-out after 3600 seconds.

Central Administration > Operations (Tab) > Backup and Restore (Heading) > Backup and restore job status



Error: The Backup/Restore job has the status of "Failed"

Central Administration > Operations (Tab) > Global Configuration (Heading) > Timer job status



Solution:


This issue may be caused by a timeout. To resolve this issue, there are a few steps. First, any time a SharePoint Backup/Restore job fails, you must delete the failed timer job definition, otherwise subsequent backup attempts will also fail.

Second, take an inventory of scheduled jobs that are running on the farm, including incremental crawl schedules, SharePoint backup scheduled tasks, and Enterprise Backup jobs (e.g. Symantec BackupExec, Networker, etc..). Measure how much time incremental crawls are taking to run. Also, measure how much time the backup is taking to run. Determine what time the backup job needs to start. Keep in mind that if an enterprise backup solution is backing up the SharePoint backup files, then the SharePoint backup should COMPLETE before the tape backup job begins.

If necessary, adjust the scheduled jobs so that the crawls are not interferring with the backup job.


Steps:

1. Delete the Backup/Restore timer job definition.

Central Administration > Operations (Tab) > Global Configuration (Heading) > Timer job definition


2. Adjust the start time of the incremental crawl. Make sure the schedule is set up in a way that the incremental crawls complete at a time that is earlier than the start time of the scheduled task that runs the backup job.

For example, if the incremental crawl takes less than an hour to run, and the the backup job is scheduled to run at 8:00 PM, then schedule the last incremental crawl to occur at 7:00PM.

SSP Administration > Search (Heading) > Search Settings > Content sources and crawl schedulesContent Source > Edit > Crawl schedules


3. If necessary, adjust the start time of the scheduled task that runs the backup

Start > Settings > Control Panel > Scheduled Tasks

CBT Clips


One of the most challenging aspects of a SharePoint rollout is user adoption and user education. Organizing training sessions and brown bag lunch demonstrations are good ways to inform and educate users about SharePoint and how it is used in the organization.

However, ramping up several users on SharePoint at once requires that each person has some context for what they are learning. You can't always force this on people; force them to imagine working a certain way, role play to a point where the instruction actually makes sense.

For this reason, a successful user education strategy should include reference material that is easy to locate, easy to use and relevant. It should be easily accessible at the point in time when a user has a specific question while performing a task. The reference material should address the specific question at hand, and only that. Otherwise, the user will not be able to find the answer to their question and they will lose interest.

I have found CBT Clips to be a great solution for fulfilling this need. CBT Clips offers collections of very brief, to-the-point, computer based instruction videos. These are perfect for new users who just want to know how to upload a document, how check in/check out works, or how to use Outlook with SharePoint.

The price for a company wide license is very reasonable and I think that depending on the size of the organization, an investment may easily pay for itself.

Monday, April 06, 2009

MSSQL RS: Reference Items for Creating Datasource that Queries SharePoint List Items

Here are a couple, useful reference items to have when creating MSSQL Reporting Services datasources for querying SharePoint list item information:


1. The URL location of the list web service:

http://sample1portal.domain.com/subsite/_vti_bin/Lists.asmx



2. Sample syntax of an XML query to be used in the datasource:

SharePoint 3.0: Error: Access Denied, Search Crawl Log

Description:

You receive an error when attempting to run a crawl on a content source.

Shared Services Administration > Search Settings > Content Sources > Crawl Log:

Error:

"Access is denied. Check that the Default Content Access Account has access to this content, or add a crawl rule to crawl this content. (The item was deleted because it was either not found or the crawler was denied access to it.)"


Solution:

Aside from Alternate Access Mappings (AAM) issues, Content Access account permissions issues, and invalid credentials, this error may also appear if the "Loopback Check" is enabled.

Instructions for disabling the Loopback Check are included in Microsoft Support KB 89861.

KB 89681: You receive error 401.1 when you browse a Web site that uses Integrated Authentication and is hosted on IIS 5.1 or IIS 6
http://support.microsoft.com/kb/896861

SharePoint 3.0: Error: Access Denied, Excel Web Access Web Part

Description:

Excel Web Access Web Part: Error:

"Access Denied. You do not have permission to open this file on Excel Services. Make sure that the file is in an Excel Services trusted location and that you have access to the file."


Solution:

Besides permissions related issues, this error may also appear if you are attempting to display an Excel file that is stored in a separate web application where you have not enabled cross domain access.


To enable cross domain access for Excel Services, run the following command:


stsadm.exe -o set-ecssecurity -ssp SSPNAME -allowcrossdomainaccess true

SharePoint 3.0: Pointing Excel Web Access at a Separate Web Application

There is an additional, configuration step required to display an Excel file stored in a different SharePoint web applications from the location where the Excel Web Access web part is being used. The instructions below explain how to set this up.

1.
Locate an Excel file you would like to display in Excel Web Access. For this example, the Excel file is called, stoplight.xlsx. It is stored in a document library at http://sample1portal.domain.com/excelfiles_site/excelfiles_library/



2.
Verify that the intended audience has permission to view the file.

3.
Verify that Excel File location is trusted by Excel Services.



4.
If you have not done so previously, run the following command:

stsadm.exe -o set-ecssecurity -ssp -SSPNAME -allowcrossdomainaccess true

5.
Add the Excel Web Access web part to a page to display stoplight.xslx. Since you have enabled cross domain access, it will now display regardless if the Excel file is part of the same web application as the Excel file, or in a different web application.

In this example, I am displaying the Excel Web Access Web Part on a sub site of http://sample2portal.domain.com although the Excel file is being stored on http://sample1portal.domain.com.

Tuesday, March 31, 2009

FAST ESP: Fast ESP 5.3 for Windows, 32 Bit Only

FAST ESP 5.3 for Windows is only available in 32 bit. However, the software can be installed on either 32 Bit or 64 Bit versions of the Windows operating system.

Consequently, prior to installing FAST ESP, you must install the 32 Bit versions of Java SE Runtime (JRE) and Java SE Development Kit (JDK): http://java.sun.com/javase/downloads/index.jsp.

Saturday, March 28, 2009

Links: MS SQL Server Reporting Services Add-In for MOSS

Here are the links for downloading:

Microsoft SQL Server 2008 Reporting Services Add-in for Microsoft SharePoint Technologies:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=200fd7b5-db7c-4b8c-a7dc-5efee6e19005

Microsoft SQL Server 2005 Reporting Services Add-in for Microsoft SharePoint Technologies:
http://www.microsoft.com/downloads/details.aspx?familyid=1E53F882-0C16-4847-B331-132274AE8C84&displaylang=en

Friday, March 27, 2009

Taking Cloud Platform Services Seriously

(Perspective from early 2009)

Based on conversations with colleagues and clients, I still don't think that the majority of long term, enterprise architecture strategies even consider Cloud Platform Services (referring to PAAS)...but I think this strategy may eventually become mainstream.

Despite the fact that the cost of hosting systems on-premises is reducing with time due to improved virtualization and management technologies, I think that in the not too distant future, there will be a point when the costs and risks of serving up certain types of applications in house will actually be greater than any compromise made by moving the same systems to a PAAS, cloud based platform.

The biggest drawbacks I see with PAAS are:
1. Perceived loss of security controls at the infrastructure level.
2. Perceived loss of control over infrastructure configurations.
3. Vendor lock-in.
4. Vendor price gouging.
5. WAN/Bandwidth limitations.

Despite the risks, I do think that visionaries are beginning to consider PAAS for certain aspects of their computing environment road map. I'm just not sure how much longer it will take before this approach is generally accepted and considered mainstream.

Where is the FAST Search Community?

I am truly excited about Microsoft's acquisition of FAST Search as well as the recent news about Microsoft's new Enterprise Search road map. Anyone who has deployed Microsoft Office SharePoint Server (MOSS) as an Enterprise Search solution or internet facing solution probably can appreciate all of the considerations that go into planning and implementing as well as some of the limitations that force you to think outside the box.

Prior to becoming proficient in MOSS Search, and prior to doing numerous Search Proof of Concepts on behalf of Microsoft, I spent quite a bit of time locked inside of a small office in the North End of Boston, researching, building and testing MOSS Search on a Microsoft VM. My primary sources of information included TechNet webcasts, blogs, Codeplex, MSDN articles, and the Microsoft Partner Support contacts. I've come to really appreciate the abundance of free flowing ideas and information that exists on the Web related to MOSS. The community is fantastic.

As I embark on new and exciting adventures working with FAST ESP, I am certain that the MOSS community will continue to contribute high quality information and will eventually expand to cover more topics related to FAST ESP. As of now, I don't see the same level of knowledge sharing occurring with FAST as I have seen with MOSS. I only hope that in response to Microsoft's acquisition of FAST as well as their reasonable product licensing model, that FAST will become more widely adopted and that a FAST Search community will flourish on the Web.

Tuesday, March 24, 2009

Firefox Automatic Logon

Description:

Configuring automatic logon for Firefox, for Microft Office SharePoint Server (MOSS) URLs


Solution:

1.
Open Firefox

2.
Address Bar: Type about:config
When prompted for a warning, click "I'll be careful I promise"

3.
About:config > Preference Name > network.automatic-ntlm-auth.trusted-uris
Right-click and "Modify"

4.
Entering String Value Dialog Box
Type the URL addresses of the SharePoint web applications (use comma to separate multiple addresses)
E.g.
https://portal.domain.com, https://search.domain.com
Click "OK"


For information about more advanced Firefox/MOSS integration, read Mauro's recent blog post:
SharePoint/Office Integration with Firefox

Tuesday, March 17, 2009

SQL Server: How to Change the Default Database Location

Description:

Instructions for changing the default Database locations.


Solution:

1. Open SQL Server Management Studio

2. Right Click on the SQL Server Instance node > Properties

3. Navigate to the "Database Settings" menu

4. Modify the "Database default locations"

5. Restart the following Windows Service:

SQL Server (MSSQLSERVER)

6. Create a new test database to verify that it is being created in the new, default location

SharePoint 3.0: How to Move SQL Database Files, Transaction Log Files to Different Disk Location

Description:

Instructions for moving database files (mdf) and transaction log files (ldf) to a different disk drive on the database server, in a MOSS 2007 server farm.


Solution:

1. Perform the necessary capacity planning analyses and tasks to ensure that the future configuration will perform and scale for growth.

2. Schedule a maintenance window to allow for enough time to perform the configuration changes and test the SharePoint portal after the changes are complete. Communicate the maintenance window appropriately to the business users.

3. Create folders on the destination disk drive for storing the files. If the servers are physical, consider storing the transaction log files on a separate physical disk from the database files, to maximize performance. If the servers are virtual, understand the disk configuration of the underlying servers to ensure considerations including disk performance, contention, scalability, and snapshots.

In this example, D:\MSSQL_Data is the destination of data files, and D:\MSSQL_TLogs is the destination of transaction log files.

4. On the MOSS web front end servers and the Index server, stop the following Windows Services:

WWW Publishing Service
Windows SharePoint Administration
Windows SharePoint Search
Windows SharePoint Timer
Windows SharePoint Tracing
Windows SharePoint VSS Writer
Office SharePoint Search


5. For each database that is being moved, run the SQL Commands below to take the database offline

SQL Server Management Studio > New Query
--------------------
ALTER DATABASE MOSS_ContentDatabase SET OFFLINE;
GO
--------------------

6. Using Windows Explorer, physically copy the mdf and ldf files of the databases to their new location.

7. Run the SQL Commands below to update the physical location of the database files

SQL Server Management Studio > New Query
--------------------
USE master;
GO
ALTER DATABASE MOSS_ContentDatabaseMODIFY FILE (NAME = MOSS_ContentDatabase, FILENAME = 'D:\MSSQL_Data\MOSS_ContentDatabase.mdf');
GO
ALTER DATABASE MOSS_ContentDatabaseMODIFY FILE (NAME = MOSS_ContentDatabase_log, FILENAME = 'D:\MSSQL_TLogs\MOSS_ContentDatabase_log.ldf');
GO
ALTER DATABASE MOSS_ContentDatabase
SET ONLINE
GO
--------------------

8. Verify that the updated location has been properly set for each database by running the command below:

SQL Server Management Studio > New Query
--------------------
USE master;
GO
SELECT name, physical_name
FROM sys.master_files
WHERE database_id = DB_ID('MOSS_ContentDatabase');
GO
--------------------

Monday, January 19, 2009

SharePoint 3.0: Is the Installation 32 bit or 64 bit?

If you have an installation of Microsoft Office SharePoint Server 2007 and you are trying to determine whether it is 32 bit or 64 bit, here are a couple ways you can do it:

* Task Manager; OWSTIMER.EXE
64 bit: OWSTIMER.EXE if it is 64 bit
32 bit: OWSTIMER32.EXE if it is 32 bit

* Windows Explorer; Program Files
64 bit: Installation directory is \Program files\common files\microsoft shared\web server extensions\12\
32 bit: Installation directory is \Program files (x86)\common files\microsoft shared\web server extensions\12\

Friday, January 09, 2009

Event: Focus On Series: Optimize Your SharePoint Investment

On Tuesday, Feburary 24, 2009 I will be presenting at an event sponsored by Vitale Caturano. For more information or to register, please follow this link: http://www.vitale.com/sharepoint

Tuesday, December 02, 2008

SharePoint 3.0: Search Results: How to Add a Document Properties Hyperlink

Introduction

As for a document appearing in SharePoint 3.0 search results; the standard formatting includes a hyperlink to open the document. However, you may want your search results to also include a link to open the display form or edit form of the document's associated list item. This way users have the options of opening a document as well as viewing and editing document properties all from the search results page.


Step 1. Crawl the Item ID Crawled Property

* SharePoint Shared Services Administration > Search Settings > Metadata Property Mappings > Crawled Properties
* Search for ows_ID(Integer)
* Edit/Map Property: ows_ID
* Mappings to managed properties: Check to "Include values for this property in the search index"
* Click OK



Step 2. Create a Managed Property for the Document's List Item ID

* SharePoint Shared Services Administration > Search Settings > Metadata Property Mappings > Managed Properties
* New Managed Property
Name and type
Property
Name: OWSIDInteger
Description:
The type of information in this property: Integer
Mappings to crawled properties: Select - Include values from a single crawled property based on the order specified
Crawled properties mapped to this managed property: OWS_ID(Integer)
Use in scopes: No - Do not allow this property to be used in scopes



Step 3. Run a Full Crawl

* SharePoint Shared Services Administration > Search Settings > Content sources and crawl schedules > For each applicable content source, invoke the context menu and Start Full Crawl


Step 4. Make the New Managed Property Part of the Search Query

* Search Center site collection > search results page > search results web part > edit web part > Modify Shared Web Part
* Web part tool pane > Results Query Options > Selected Columns:
Modify the XML of Selected Columns to include the new managed property, OWSIDInteger

Reference:
How to: Change the Properties Returned in the Core Search Results
http://msdn2.microsoft.com/en-us/library/ms560074.aspx

Step 6. Test the Search Query to Ensure the New Managed Property is Returning Values

* Search Center site collection > search results page > search results web part > edit web part > Modify Shared Web Part
* Web part tool pane >Miscellaneous > XSL Editor:
Modify the XML so it returns raw XML results


Reference:
How to: View Search Results XML Data
http://msdn2.microsoft.com/en-us/library/ms546985.aspx


Step 5. Make the Managed Property Display in the Search Results

5A. Create an XML File Containing the Raw XML Representation of the Search Results
* Open an XML editor such as Visual Studio
* File > New > File > XML File
* Search Center > Perform a search (the results should still be coming back as raw XML)
* Copy the search results into the XML file
* Save the XML file to be used in Step 5B


5B. Create a new XSL Stylesheet
* Create a test site
* Add a Data View Web Part (DVWP) to the Test Site
* SharePoint Designer > Open test site > Open default.aspx
* Split View
* Menu > Insert > SharePoint Controls > Data View
* Data Source Library > XML Files > Add an XML file:

Upload the XML file from Step 5A
* Drag the content from the new data source to the DVWP
* Format the DVWP accoding to the desired look and feel for search results
* When look and feel is complete, open the XML editor and create a new XML file:
Visual Studio > File > New > File > XML File
* SharePoint Designer > Highlight the DVWP in the Design window
* Copy the code for the DVWP from the Code view
* Paste the XML into the new XML file
* Identify the XSL Stylesheet portion of the XML
* Cut away any unnecessary XML from the file, leaving only the XSL Stylesheet

* Save the XML file to be used in Step 5C

5C. Apply the new XSL Stylesheet to the Search Results Web Part
* Visual Studio > Open file:
Open the XML file created in Step 5B
* Search Center site collection > search results page > search results web part > edit web part > Modify Shared Web Part
* Web part tool pane >Miscellaneous > XSL Editor:

Open the XSL Editor
* Paste the XML from Visual Studio into the XSL Stylesheet, overwriting the existing stylesheet
* Click OK

Tuesday, October 28, 2008

SharePoint 3.0: New AD Group Unavailable for Audience Rules

Description:
When creating a new audience rule...



...a new Active Directory security group is unavailable.




Solution:


* Run a full import of user profiles:
Shared Services Administration > User Profiles and My Sites > User profiles and properties > Start full import



Tuesday, October 07, 2008

St. Thomas

Royal Caribbean Freedom of the Seas

SharePoint 3.0: Error: Crawl Log "The object was not found."

Description:

Unable to crawl a web site content source.

Error: "The object was not found. (The item was deleted because it was either not found or the crawler was denied access to it.)"



Solution:

Determine if the web site is case sensitive. If so, implement the configuration changes described in the following KB article:

You cannot crawl case-sensitive Web content in SharePoint Server 2007
http://support.microsoft.com/kb/932619


Keywords:
Crawling case sensitive web sites; MOSS 2007; Crawl jsp pages; How to crawl .jsp pages with SharePoint; Case-Sensitive; sharepoint search jsp; sharepoint search .jsp

Wednesday, September 24, 2008

Links: Microsoft Windows Server 2008

Windows Server 2008: System Requirements
http://www.microsoft.com/windowsserver2008/en/us/system-requirements.aspx

Windows Server 2008: Overview of Editions
http://www.microsoft.com/windowsserver2008/en/us/editions-overview.aspx

Windows Server 2008: Compare Features
http://www.microsoft.com/windowsserver2008/en/us/compare-features.aspx

Windows Server 2008: Compare Server Roles
http://www.microsoft.com/windowsserver2008/en/us/compare-roles.aspx

Links: Microsoft SQL Server 2008

MSDN: SQL Server 2008 Books Online: Product Specifications for SQL Server 2008
http://msdn.microsoft.com/en-us/library/ms143287.aspx

MSDN: SQL Server 2008 Books Online: Hardware and Software Requirements for Installing SQL Server 2008
http://msdn.microsoft.com/en-us/library/ms143506.aspx

MSDN: SQL Server 2008 Books Online: Maximum Number of Processors Supported by the Editions of SQL Server 2008
http://msdn.microsoft.com/en-us/library/ms143760.aspx

MSDN: SQL Server 2008 Books Online: SQL Server 2008 Books Online: Memory Supported by the Editions of SQL Server 2008
http://msdn.microsoft.com/en-us/library/ms143685.aspx

MSDN: SQL Server 2008 Books Online: Maximum Capacity Specifications for SQL Server 2008
http://msdn.microsoft.com/en-us/library/ms143432.aspx

MSDN: SQL Server 2008 Books Online: Editions and Components of SQL Server 2008
http://msdn.microsoft.com/en-us/library/ms144275.aspx

MSDN: SQL Server 2008 Books Online: Features Supported by the Editions of SQL Server 2008
http://msdn.microsoft.com/en-us/library/cc645993.aspx

MSDN: SQL Server 2008 Books Online: Using Upgrade Advisor to Prepare for Upgrades
http://msdn.microsoft.com/en-us/library/ms144256.aspx

MSDN: SQL Server 2008 Books Online: Getting SQL Server Assistance

http://msdn.microsoft.com/en-us/library/ms166016.aspx

MSDN: SQL Server 2008 Books Online: Planning a SQL Server Installation
http://msdn.microsoft.com/en-us/library/bb500442.aspx

MSDN: SQL Server 2008 Books Online: Overview of SQL Server Installation
http://msdn.microsoft.com/en-us/library/bb500438.aspx

MSDN: SQL Server 2008 Books Online: How to: Install SQL Server 2008 (Setup)
http://msdn.microsoft.com/en-us/library/ms143219.aspx

MSDN: SQL Server 2008 Books Online: How to: Upgrade to SQL Server 2008 (Setup)
http://msdn.microsoft.com/en-us/library/ms144267.aspx

MSDN: SQL Server 2008 Books Online: Migrating to SQL Server 2008
http://msdn.microsoft.com/en-us/library/bb677619.aspx

MSDN: SQL Server 2008 Books Online: Backward Compatibility
http://msdn.microsoft.com/en-us/library/cc280407.aspx

Friday, August 29, 2008

SharePoint 3.0: Site Users Web Part

The Site Users Web Part can be used to enhance the appearance of a SharePoint site by displaying a list of users who belong to the site. This web part works well on collaborative sites such as project sites or team sites, when the site permissions have been configured with either SharePoint groups or where users are added directly to site permissions access control list of the site.

Environments that also have Live Communication Server have an opportunity to promote IM to their users since the users' precense information is displayed and the context menu allows users to easily spawn IM sessions.

The Site Users Web Part is less useful on sites that have lots of users or when Active Directory groups are being used to provision access to the site. Since the Site Users Web Part does not enumerate user names who are members of Active Directory groups, these display only as group names.

Site Users Web Part Configuration Options:

Show people and groups with direct permissions on this site.
This displays a list of users who have been added directly to site permissions for the site. The person's full name with presence information is shown.

Show people in this site's members groupThis lets you display the names of people who belong to the Site Members, default SharePoint group.
T
he person's full name with presence information is shown.

Show people in the group:
This lets you select a SharePoint group to display the names of people who belong to that group. The person's full name with presence information is shown.

Monday, August 25, 2008

SharePoint 3.0: Manage Access Requests

Access Requests are a feature of SharePoint that allow users to submit an email, to a SharePoint administrator, requesting access to a resource (site or list) that they are denied access to.

The email to the administrator provides the username, the URL of the resource, and comments directly from the user. The email looks like this:



Resources that inherit security from their parent will automatically inherit the parent's Access Request setting. If you break inheritance at a list, then the list permissions, settings menu will appear and an Access Request menu item will be available. This allows you to set an Access Request email address, different from the parent site. This behavior is not true for list items. If you break security inheritance at a list item, an Access Request menu option does not appear on the list item security settings menu.


Here are some best practices for configuring Access Requests:

* Use a dedicated distribution group for this purpose
* Since each unique site collection can have its own Access Request email address, give the distribution group a generic name so that it can be used accross many site collections
* Definitely don't use a service account's email address because no real person is on the other end to receive the request

* Don't use an individual user's email address, doing so would result in a single point of failure
* If you are maintaining instruction documentation that describes the steps to configure a new site collection in your environment, then add "configure access requests email address" as a step..doing so will be a good reminder to do it.


How to configure Manage Access Requests email address:

* Site Collection > Site Actions > Site Settings > Modify All Site Settings > Advanced Permissions
* Settings > Access Requests



* Set email address, click OK

Thursday, August 21, 2008

SharePoint 3.0: Error: Calculated Site Column, Formula Contains a Syntax Error

Description:

When attempting to create a new calculated site column...



...inside the formula, you reference a column name in brackets, such as Year[created]...




...and you are unable to save the new site column, instead you receive an error.

Error:
The formula contains a syntax error or is not supported.
Troubleshoot issues with Windows SharePoint Services.




Solution:

Use parentheses around the brackets. E.g. Year([Created])

Wednesday, August 20, 2008

SharePoint 3.0: Error: The specified name is already in use

Description:

Site Collection > Site Settings > Site Collection Features

When attempting to activate the following:
Office SharePoint Server Publishing Infrastructure
Provides centralized libraries, content types, master pages and page layouts and enables page scheduling and other publishing functionality for a site collection.

Error:
The specified name is already in use. Please try again with a new name. Troubleshoot issues with Windows SharePoint Services.




Solution:

When publishing features are enabled, SharePoint automatically creates a bunch of objects on the site. It is possible that before you attempted to activate publishing on your site, you had already created an object, such as a library, list, site column, or content type using a name that SharePoint uses. With publishing deactivated, SharePoint does not enforce naming contstraints on these names so it is possible for you to create, for example, a library called Pages (creating a future conflict) not knowing that SharePoint will automatically create a Pages library when you activate publishing.

If you can, audit the SharePoint site comparing it with another site that already has publishing enabled to see if you can find a conflict.


If you are unable to locate the conflict, and you need to activate publishing features, you can force the activation by running the following command:

stsadm.exe -o activatefeature -filename publishing\feature.xml -url http://%URL% -force
stsadm.exe -o activatefeature -filename publishingresources\feature.xml -url
http://%URL% -force
stsadm.exe -o activatefeature -filename publishingsite\feature.xml -url
http://%URL% -force
stsadm.exe -o activatefeature -filename publishingweb\feature.xml -url
http://%URL% -force
stsadm.exe -o activatefeature -filename publishinglayouts\feature.xml -url
http://%URL% -force
stsadm.exe -o activatefeature -filename navigation\feature.xml -url
http://%URL% -force

Blog Archive

Followers