Monday, December 28, 2009
Governance: Capability Driven, Not Platform Driven
I have mixed emotions about some of the messaging in the community. I think the topic of governance has become so SharePoint-centered that the original intent of governance becomes lost. Taking a few steps back, I thought I might weigh-in on the subject.
When push comes to shove, SharePoint is simply a platform, a means to an end. It is a tool to facilitate a capability. If that capability happens to be information management, then SharePoint is providing the technical functionality required to make managing information better.
My take on governance planning is that an organization should first address the capability (e.g. information management) as a whole, and then develop a plan for it. Once that overarching effort is in motion, it should branch off into defining the policies, processes, and measures specifically addressing SharePoint.
The flaw I see in creating a governance plan starting with SharePoint platform is that too many questions and risks about the overall initiative of providing that information management capability exist. This flaw may be a symptom or an indicator of larger ailments in the organization such as a lack of clarity or a lack of sponsorship (or a lack of clarity within its sponsorship). The way I see it, if an executive management team is willing to embrace the idea of using the SharePoint platform, then it ought to be willing to accept and embrace the larger initiatives at hand; which is where governance should originate.
In conclusion, I think that in order to maintain long term credibility with the subject of governance planning, we in the SharePoint community should share more ideas about how to integrate SharePoint governance into existing corporate governance as well as how to properly originate governance where it does not already exist. And, in order to do this I think it requires stepping out of the world of SharePoint and taking a wholistic view of the organization and understanding the fundamental policies and processes at play, as well as understanding what is the underlying intent and purpose for which SharePoint is being deployed.
Friday, December 18, 2009
My Favorite Windows 7 Feature
For this reason, my favorite Windows 7 feature is the ability to right click on an open application and then click a shortcut to open another instance of that application.
2009 SQL Server Magazine Best SharePoint Product
2009 SQL Server Magazine Best SharePoint Product
Editor's Best
Gold: ControlPoint for SharePoint, Axceler, www.axceler.com
Silver: Professional Archive Manager, Metalogix, www.metalogix.net
Bronze: NearPoint for SharePoint, Mimosa Systems, www.mimosasystems.com
Community Choice
Gold: Site Administrator for SharePoint, Quest Software, http://www.quest.com/
Silver: Colligo Contributor Pro, Colligo Networks, http://www.colligo.com/
Bronze: CorasWorks Workplace Sutie 10, CorasWorks, http://www.corasworks.com/
References:
2009 SQL Server Magazine (2008, December). 2009 SQL Server Magazine Editor's Best and Community Choice Awards. SQL Server Magazine, pp. 12-19.
Thursday, December 17, 2009
Error: SQL Server Maintenance Plan, Database Backup Job
When executing a SQL Server maintenance plan, having a database backup job, an error occurs. The issue is that the SQL Server Agent service account does not have access to the backup folder. This happens more frequently on backup folders which exist on a separate server, such as a backup server.
1. First, navigate to SQL Server Management Studio > Maintenance Plans > Right click on maintenance plan > View History.
You might see something like this in the history:
"Action: Execute maintenance plan (full backup of all SQL databases). ErrorMessage: Execution failed: See the maintenance plan and SQL Server Agent job history for details. Additional Information: Job 'Backup SQL' failed. (SqlManagerUI)"
2. Next, navigate to the history log for the SQL Server Agent job:
SQL Server Management Studio > SQL Server Agent > Jobs > Right click on job > View History > Highlight the error > Click Export > Export a log file > Open the log file in a text editor
...and you might see entries like this:
"Reason for failure: " failed with the following error: "Cannot open backup device 'backup device name'. "
"Error information: Operating system error 5(Access is denied.)."
Solution:
The solution to this is to configure the appropriate access for the SQL Server Agent service account on the folder security access control list and the folder sharing access control list.
However, the catch here is that you may need to add the service account directly to the access control list, as opposed to an AD group in which the user account belongs. In fact, I tested this by doing the steps below.
1. Deleted the maintenance plan and created it again.
2. Added the backup folder location, and clicked Next.
This brought up an error:
"Maintenance Plan Wizard: The Database Engine service could not resolve the specified folder location. Either the location does not exist, or the current login account does not have access to it. Verify that the folder exists, and that the login account has permissions on it."
3. Added the SQL Server Agent service account directly to the backup folder's access control lists for folder security and folder sharing. After doing this, the creation of the maintenance plan was successful.
Saturday, December 05, 2009
I Respectfully Disagree
As I looked through the PowerPoint for some insight to use in my paper, I started finding statements such as:
"ROI from IT: There is none. There never will be." (Keen, 2004)
"ROMI not ROI: Return on Minimized Investment" (Keen, 2004)
"80% of IT costs are hidden below the surface - and a navigation threat" (Keen, 2004)
The more slides I viewed, the more I realized that I completely disagree with the intent of the message; essentially to encourage CIOs to view IT as a business liability which needs to be tightly controlled and driven primarily by its cost drivers.
I disagree because I think a better approach for CIOs to take is to understand the purpose of the technologies their teams are evaluating, understand the costs and benefits, and choose projects which support the objectives of the organization. Managing cost should be part of the decision making process, but it should not be the primary driver. When cost is measured, all aspects of cost should be included. And, the financial benefits of the project should also be measured and included.
The objective of Information Technology is to facilitate two very important capabilities for today's businesses:
1. Revenue generation
2. Business productivity (process efficiency)
Most leaders in the IT space generally understand the financial benefits of the IT projects they choose to pursue, but perhaps the IT industry as a whole generally does not place enough emphasis on methodologies and practices for measuring and translating these back to the financial statement. This would require more focus, analysis, calculation, and validation.
To be clear, I am not saying that all IT projects are sensible and they should be done blindly. However, what I am saying is that it is incorrect to characterize IT as a business function that shows no return on investment.
If you deploy a technology that allows people to attend meetings over the Web instead of traveling to another location, then your costs are those which are required to implement and maintain the technology while your savings are those which you do not spend to travel? Both sides of equation need to be considered, not just cost.
I also disagree with the claim that 80% of IT costs are hidden. I believe that if budgeting is done properly, most IT costs are completely visible and manageable. There are always some unforeseen costs with IT, but by learning from past experiences, it becomes possible to anticipate these variations.
In summary, I disagree with the PowerPoint. Information Technology can have a positive ROI, and costs can be manageable and predictable. I think the real problem is some organizations just don't know how to measure these things effectively.
References:
Keen, P. (2004). The IT Leadership Financial Conversation. Retrieved December 5, 2009 from www.peterkeen.com/presentations/IT%20Risk%20Management.ppt.
Friday, November 20, 2009
Windows Server 2008: Active Directory Protection From Accidental Deletion
When you create an Organizational Unit (OU) or security group in Active Directory, there is checkbox titled, "Protect container from accidental deletion." If you create the object with this check box marked, then you have to follow special steps if you would like to delete that OU in the future.
If you attempt to delete the object while it is protected, then you will receive the error, "Active Directory Domain Services. You do not have sufficient privileges to delete object, or this object is protected from accidental deletion."
Solution:
1. Open Active Directory Users and Computers.
2. Select the root domain, "company.domain.com."
3. From the menu bar, select "View" and "Advanced Features."
4. Navigate to the OU you would like to delete.
5. Right-click, properties.
6. Select the "Object" tab.
7. Uncheck the option, "Protect object from accidental deletion."
8. Now the object is no longer protected. You can proceed with deleting the object.
Thursday, November 19, 2009
SharePoint 3.0: Allowing SharePoint RSS Viewer Web Part to Read SharePoint RSS Feeds
Description:
SharePoint RSS Viewer Web Part does not display RSS feed from SharePoint list or library.
After configuring a SharePoint RSS Viewer Web Part to display an RSS feed from a SharePoint RSS list, you receive the error, "The RSS webpart does not support authenticated feeds."
Solution:
Configure anonymous access on the list which is serving the RSS feed.
1.
Enable anonymous access for the Web Application containing the list which is serving the RSS feed.
- Central Administration > Application Management > Application Security > Authentication Providers > Edit Authentication
- Edit Authentication > Anonymous Access: Check "Enable anonymous access"
- Edit Authentication > Click "Save"
2.
Enable anonymous access for the site collection containing the list which is serving the RSS feed.
- Site Collection > Site Actions > Site Settings Site Collection Settings > Advanced Permissions
- Advanced Permissions > Settings > Anonymous Access
- Change Anonymous Access Settings > Anonymous Access: Select "Lists and Libraries"
3.
Enable anonymous access for the list which is serving the RSS feed.
- List > Settings > Permissions for this List > Settings > Anonymous Access
- Assign the "Read" or "View Only" permission level to the Anonymous User
References:
Holmes, T. (2008). Enabling Anonymous Access in SharePoint 2007. Retrieved November 19, 2009 from http://blog.tylerholmes.com/2008/01/enabling-anonymous-access-in-sharepoint.html.
Monday, October 26, 2009
Back from SharePoint Conference 2009
There were many highlights of the conference. The cocktail reception, the keynote, the sessions, the Huey Lewis & the News concert, catching up with old friends and meeting new ones.
The bottom line is SharePoint 2010 delivers!! It is going to be an awesome, next three years working with this generation of products and technologies. Things are moving full steam ahead.
I especially enjoyed the governance planning session by my friends, Susan Hanley and Scott Jamison.
Friday's full day workshop on SharePoint Server 2010 Installation and Upgrade Training by Shane Young and Todd Klindt from SharePoint911 was fantastic and informative. It was more fun than hanging out at House of Blues Foundation Room until 3:00am...almost.
Most of all I love the fact that I won all of my gambling money back at the craps table after I checked out on Saturday morning, as I was killing some time before the cab ride to the airport. I hit three point numbers and several hard ways. Folks were happy to be winning and I received an applause for the good shooting.
Thursday, September 17, 2009
Links: CommonCraft: SharePoint in Plain English
View Here:
http://www.commoncraft.com/custom-video-sharepoint-plain-english
Download Here:
http://download.microsoft.com/download/A/5/6/A56BB856-74F5-4A6B-887B-876BAE88116F/SharePoint%20in%20Plain%20English.zip
Sunday, August 30, 2009
Migrating Internet Explorer Favorites and RSS Feeds
With Windows 7 releasing soon, it will be time to think about migrating user profile settings to a new operating system build.
Aside from file folders, and desktop files, you may have a bit of time invested in the Internet Explorer favorites and feeds. Even if it only saves a couple minutes of searching in the end, I thought it would be worthwhile to post locations of these items on a source Vista build.
Favorites:
C: (Operating System) \Documents and Settings\UserProfileName\Favorites
RSS Feeds:
C: (Operating System) \Documents and Settings\UserProfileName\AppData\Local\Microsoft\Feeds
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
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
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
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
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. Use 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
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
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
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...
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
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:
4. Web.Config Continued...
Replace This:
With This:
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
SQL Server 2008: A Must Do Configuration for Resource Governor
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
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
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
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
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
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
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
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:
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
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
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
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?
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
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
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
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?
* 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
Blog Archive
-
▼
2009
(40)
-
►
April
(7)
- Windows Server 2008: IPV4 Weak Host Configuration
- SharePoint 3.0: Error: The Backup/Restore Job Fa...
- CBT Clips
- MSSQL RS: Reference Items for Creating Datasource...
- SharePoint 3.0: Error: Access Denied, Search Cra...
- SharePoint 3.0: Error: Access Denied, Excel Web ...
- SharePoint 3.0: Pointing Excel Web Access at a Se...
-
►
March
(7)
- FAST ESP: Fast ESP 5.3 for Windows, 32 Bit Only
- Links: MS SQL Server Reporting Services Add-In fo...
- Taking Cloud Platform Services Seriously
- Where is the FAST Search Community?
- Firefox Automatic Logon
- SQL Server: How to Change the Default Database Lo...
- SharePoint 3.0: How to Move SQL Database Files, T...
-
►
April
(7)
Events / Conferences / User Groups
- AIIM Conference
- Boston Area SharePoint User Group
- Boston Azure User Group
- Collaborate
- DevConnections
- DevIntersection
- Enterprise Search Summit
- Microsoft Build
- Microsoft SharePoint Conference
- Microsoft TechEd
- New England ASP.NET Professionals User Group
- New England Oracle Applications User Group
- Oracle Applications User Group (OAUG)
- Oracle OpenWorld
- PeopleSoft Government Contractor Special Interest Group
- PeopleSoft Southern New England Users Group
- Quest International Users Group
- SharePoint Saturday
- SPTechCon
- SQL PASS
- SQL Saturday
- Startup Weekend