Tuesday, February 01, 2011
SharePoint Saturday Hartford Speaker Social on Friday January 28
Sunday, January 23, 2011
SPS Hartford: SharePoint 2010 Search Driven Design Patterns: Better Portal Designs with Fewer Compromises
SharePoint Saturday Hartford
Saturday, January 29, 2011
Session Title:
SharePoint 2010 Search Driven Design Patterns: Better Portal Designs with Fewer Compromises
Abstract:
When designing a SharePoint 2010 portal for collaboration or business process facilitation we are faced with many challenges. While our intentions for user experience, Information Architecture, and security model are driven primarily by business requirements, technology limitations tend to force us into certain decisions. This session explains how search driven design patterns can result in better portal designs with fewer compromises.
Slides:
20110730 0100PM SharePoint Saturday Search Driven Design Patterns - Bisciotti
Thursday, January 20, 2011
Error: SharePoint Server 2010 Installation, SharePoint Configuration Failed
After configuring the operating systems and SQL Server instance in a multi-tiered server farm, I installed the SharePoint Server 2010 prerequisites and server binaries on the first Web front end. Next, I opened PowerShell and began creating a new farm from the command line. After only the first step, I received the error shown below.
Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.
PS C:\Windows\system32> New-SPConfigurationDatabase -DatabaseName "FarmName_Configuration_Database_01" -DatabaseServer "FarmDBSQLAlias" -A
dministrationContentDatabaseName "FarmName_Content_Database_01" -Passphrase (ConvertTo-SecureString "FarmPassPhrase" -AsPlaintext -Force) -FarmCredentials (Get-Credential)
...
New-SPConfigurationDatabase : CREATE FILE encountered operating system error 3(The system cannot find the path specifie
d.) while attempting to open or create the physical file 'I:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\
MSSQL\Data\FarmName_Configuration_Database_01_log.LDF'.
CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
At line:1 char:28
...
So, I navigated to the log directory: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\LOGS and opened up the current PSCDiagnostics log file.
CTRL + F "error" brought me to this error:
...
01/20/2011 17:46:26 10 ERR Exception: System.Data.SqlClient.SqlException: CREATE FILE encountered operating system error 3(The system cannot find the path specified.) while attempting to open or create the physical file 'I:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\FarmName_Configuration_Database_01_log.LDF'.
CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
...
Solution:
After viewing the log file message, I immediately knew what the cause of the error was. The SQL Server default path for LDF was not accessible because it hadn't been created yet. During the SQL Server 2008 R2 installation, I specified a particular default drive letter for MDF and LDF. After the installation, I changed the default path location for LDF's to a different drive letter, however, the new folder path (I:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data) didn't exist yet!
The fix was simply to go to the I: drive letter and create the necessary folder paths that I had set as the default LDF location for the SQL instance.
Note: When you install SQL Server 2008 R2 and you encounter the screen that asks for the default locations, be sure to set the MDF first and then the LDF second. The reason is that if you do the MDF path second, the installation wizard will reset your LDF location back to the MDF setting. It's just one of those things!
Links: Microsoft SQL Server 2008 R2 Feature Pack
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=CEB4346F-657F-4D28-83F5-AAE0C5C83D52
- Microsoft® SQL Server Report Builder 3.0 for Microsoft® SQL Server 2008 R2
- Microsoft® SQL Server® PowerPivot for Microsoft® Excel
- Microsoft® SQL Server® 2008 R2 Reporting Services Add-in for Microsoft® SharePoint® Technologies 2010
- Microsoft® SQL Server® 2008 Reporting Services Add-in for Microsoft® SharePoint® Technologies 2007
- Microsoft® SQL Server® 2008 R2 Policies
- Microsoft® Sync Framework 2.0 Software Development Kit (SDK)
- Microsoft® SQL Server® Compact 3.5 SP2 For Windows Mobile
- Microsoft® SQL Server ®Compact 3.5 SP2 Server Tools
- Microsoft® SQL Server® Compact 3.5 SP2 Books On-line
- Microsoft® SQL Server® JDBC Driver 3.0
- Microsoft® Connector 1.1 for SAP BW for SQL Server® 2008 R2
- Microsoft® System CLR Types for SQL Server® 2008 R2
- Microsoft® SQL Server® 2008 R2 Remote Blob Store
- Microsoft® SQL Server® 2008 R2 Books On-line
- Microsoft® SQL Server® 2008 R2 Upgrade Advisor
- Microsoft® SQL Server® 2008 R2 Native Client
- Microsoft® Core XML Services (MSXML) 6.0 SP 1
- Microsoft® OLEDB Provider for DB2
- Microsoft® SQL Server® 2008 R2 Command Line Utilities
- Microsoft® SQL Server® Service Broker External Activator for SQL Server® 2008 R2
- Microsoft® Windows PowerShell Extensions for SQL Server® 2008 R2
- Microsoft® SQL Server® 2008 R2 Shared Management Objects
- Microsoft® SQL Server® 2008 R2 ADOMD.NET
- Microsoft® Analysis Services OLE DB Provider for Microsoft® SQL Server® 2008 R2
- Microsoft® SQL Server® 2008 R2 Analysis Management Objects
- Microsoft® SQL Server® 2008 Data Mining Add-ins for Microsoft® Office 2007
- Microsoft® Datamining Viewer Controls For Microsoft® SQL Server® 2008
- Microsoft® SQL Server® Migration Assistant
- Microsoft® SQL Server® 2008 R2 Best Practices Analyzer
Microsoft (2011). Microsoft SQL Server 2008 R2 Feature Pack. Retrieved January 20, 2011 from http://www.microsoft.com/downloads/en/details.aspx?FamilyID=CEB4346F-657F-4D28-83F5-AAE0C5C83D52.
Wednesday, January 19, 2011
Error: SharePoint Server 2010 Setup Errors, Prerequisites Needed
After running SharePoint Server 2010 setup.exe, Setup Errors occur.

Setup is unable to proceed due to the following error(s):
This product requires the Windows Identity Foundation.
This product requires Microsoft Sync Framework Runtime v1.0 (x64).
This product requires Microsoft SQL Server 2008 Native Client. Install SQL Server 2008 Native Client and re-run setup.
Windows Server Features or Role Services required by this product are not enabled. For a complete list, refer to the link below.
This product requires Microsoft Filter Pack 2.0.
This product requires Internet Information Services (IIS) 7.0 or higher, with ASP.NET v2.0 set to 'Allow' in the list of IIS Web Server Extensions.
This product requires the IIS 6 Management Compatibility component to install.
This product requires Hotfix for Microsoft Windows (KB976462) or above.
For the list of pre-requisites needed to install the product please refer to:
http://go.microsoft.com/fwlink/?LinkId=106209
Solution:
1. Windows Identity Foundation
http://www.microsoft.com/downloads/details.aspx?FamilyID=eb9c345f-e830-40b8-a5fe-ae7a864c4d76&displaylang=en
2. Microsoft Sync Framework Runtime v1.0 (x64)
http://www.microsoft.com/downloads/en/details.aspx?FamilyId=C88BA2D1-CEF3-4149-B301-9B056E7FB1E6&displaylang=en
3. Microsoft SQL Server 2008 Native Client
Installing SQL Server Native Client
http://msdn.microsoft.com/en-us/library/ms131321.aspx
4. Windows Server Features or Role Services
Start > All Programs > Administrative Tools > Server Manager
Add Roles and Features:
i. Application Server
ii. File Services
iii. Web Server (IIS)
5. Microsoft Office 2010 Filter Packs
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5CD4DCD7-D3E6-4970-875E-ABA93459FBEE&displaylang=en
6. Internet Information Services (IIS) 7.0 or higher, with ASP.NET v2.0 set to 'Allow' in the list of IIS Web Server Extensions.
i. Start > All Programs > Administrative Tools > IIS Manager
ii. ISAPI and CGI Restrictions
iii. Confirm that ASP.NET V2.0 is set to "Allow"
7. Hotfix for Microsoft Windows (KB976462) or above.
A hotfix for the.NET Framework 3.5 Service Pack 1 is available for Windows 7 and for Windows Server 2008 R2 as a prerequisite for Microsoft Office SharePoint Server 2010
http://support.microsoft.com/kb/976462
Reference
Microsoft TechNet (July, 2010). Hardware and software requirements (SharePoint Server 2010). Retrieved January 20, 2011 from http://technet.microsoft.com/en-us/library/cc262485.aspx.
Windows Server: How to Configure SQL Server Client Alias Using CLICONFG
Considerations for SQL Server Client Alias configurations should be made prior to installing SharePoint Server. When deciding whether or not to implement SQL Server Client Aliases, you might think about these items:
- Just because you can doesn’t mean you should - what need is driving this configuration?
- Apply the “so what” test - what are the risks of doing versus not doing?
- Thirdly, it probably makes sense to have server naming conventions in place before you go and abstract things by adding one more layer of names - will aliases confuse anybody?
2. On the General tab, enable “TCP/IP” protocol.


5. Review the Network Library information on the Network Libraries tab. Click Apply and OK.

6. At this point the Alias has been created and the SharePoint installation may proceed.
Sunday, January 09, 2011
SharePoint 4.0: Search Core Results Web Part Internal Error
Search results page error caused by Core Results Web Part after modifying the Fetched Properties.
Error:
"Internal server error exception:
Troubleshoot issues with Microsoft SharePoint Foundation
Correlation ID: aba98106-d203-48bf-bdc9-bf2f8dd15bcd"
Solution:In addition to the Column Name tags, the Fetched Properties must be properly opened and closed with Columns and /Columns tags, respectively. One possible cause for this error is that thet Fetched Properties XML is missing the opening and closing tags.
Monday, January 03, 2011
Windows Server: ADO.NET Data Services Update for .NET Framework 3.5 SP1
This update is required in order to install SharePoint Server 2010 on Windows Server 2008 R2.
"The ADO.NET Data Services framework consists of patterns and libraries that enable the creation and consumption of REST-based data services for the web. This update to the Microsoft .NET Framework 3.5 SP1 provides additional features which extend the functionality provided in version 1.0 of the ADO.NET Data Services framework."
(Microsoft, 2010)
Reference
Microsoft (2010). ADO.NET Data Services Update for .NET Framework 3.5 SP1 for Windows 7 and Windows Server 2008 R2. Retrieved January 3, 2011 from http://www.microsoft.com/downloads/details.aspx?FamilyID=79D7F6F8-D6E9-4B8C-8640-17F89452148E&displaylang=fi&displaylang=en.
Microsoft (2010). A hotfix for the.NET Framework 3.5 Service Pack 1 is available for Windows 7 and for Windows Server 2008 R2 as a prerequisite for Microsoft Office SharePoint Server 2010. Retrieved January 3, 2011 from http://support.microsoft.com/kb/976462.
Tuesday, December 28, 2010
Windows Server: Enable Execution of PowerShell Scripts
1. Click Start, All Programs, and click "Administrative Tools"
2. Right-Click Windows Powershell Modules, Select "Run as Administrator"
3. At the command prompt (PS C:\Windows\system32>), type the following:
Set-ExecutionPolicy RemoteSigned
4. The Execution Policy Change prompt will display. Respond with "Y":
Execution Policy Change
The execution policy helps protect you from scripts that you do not trust. Changing the execution policy might exposeyou to the security risks described in the about_Execution_Policies help topic.
Do you want to change the executionpolicy?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): Y

Monday, December 27, 2010
Windows Server 2008: MSInfo32 and Winver
Start > Run > Type "MSInfo32" and press Enter

About Windows - To locate OS version, edition, service pack level, and memory.
Start > Run > Type "Winver" and press Enter

Monday, December 13, 2010
Microsoft Word 2010: Hanging Indent

1. Highlight the text to be formatted.
2. On the Ribbon, next to the word "Paragraph" click the chevron to open the paragraph formatting window.
3. Beneath the Indentation heading, set the "Special" field to "Hanging" and set the "By" field to "0.5."
4. Click OK
5. At that point, the list should be reformatted with a hanging indent.
SharePoint 4.0: Locating or Verifying Farm Version Number
A. Verify the version of DLLs.
Steps:
On each server where SharePoint 2010 is installed:
1. Open Windows Explorer.
2. Navigate to \Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI
3. For each of the following DLLs, locate the file. Right-click the file > Properties > Details.
4. Note the version
OWSSVR.DLL (SharePoint Foundation)

Microsoft.SharePoint.dll (SharePoint Foundation)



SharePoint 4.0: Records Center Behaviors? or Bugs!
I have been busy developing a proof-of-concept (POC) environment based on some design patterns involving SharePoint 2010 Records Center and Search. In this POC, Records Center is acting as a top level site collection and is storing quite a bit of content. There are numerous content types and site columns, carefully planned and configured on the site collection, to support tagging Records Center documents with lots of metadata.
In this POC environment, I have dedicated a Web application to Records Center and for discussion purposes, the URL of the site collection can be http://recordscenter.domain.com. As I write this blog post, it is December 13, 2010. My SharePoint 2010 environment is running at version 14.0.5128.5000, which reflects RTM with the October 2010 Cumulative Updates. The SharePoint Foundation and SharePoint Server DLLs, and SharePoint Database are all current with the same version. I have tested with Site Collection Publishing and Site Publishing features enabled and disabled.
During the testing process, I have discovered some unexpected behaviors related to Records Center. Microsoft Support may stamp these with the trusty "By Design" label, but since I am currently in the process of pushing these issues through the Microsoft Support channels, I cannot speak to their response at this time. I do know that these behaviors are inconvenient and troublesome. Below is a list.
A. Cannot template a sub-site beneath a Records Center site collection.
To recreate the issue, follow these steps:
1. Start from a Records Center site collection.
2. Create a sub-site using the blank site template.
3. Attempt to save the site as a template.

Problem: Error: An unexpected error has occurred.
B. Cannot export a document library and then import it as a different name, in a Records Center site collection.
To recreate the issue, follow these steps:
1. Start from a Records Center site collection.
2. Create a sub-site using the blank site template.
3. Create a document library in the blank sub-site.
4. Using STSADM, export the document library to a .cmp file.
E.g.
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN>
stsadm.exe -o export -url http://webapplication/subsite/library -filename \\server\fileshare\templatelibrary.cmp -includeusersecurity -nologfile
5. Using STSADM, import the document library .cmp file, as a different name.
E.g.
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN>
stsadm.exe -o export -url http://webapplication/subsite/library -filename file://server/fileshare/templatelibrary.cmp -includeusersecurity -nologfile...
Finished with 15 errors.A list, survey, discussion board, or document library with the specified title already exists in this Web site. Please choose another title.

Problem: Error: The .cmp file cannot be imported because an existing document library having the same title (different than name, which affects the document library URL) already exists.
This behavior might make sense in a Records Center given the Content Organizer and its functionality which routes documents, based on content type, to appropriate document libraries using the Title of the document library. Still, templating document libraries in a Records Center is especially important, since Records Center typically have well defined site columns. It is only natural that we will want to template document libraries efficiently in a Records Center.
References
Microsoft SharePoint Team Blog (2010, December). October 2010 Cumulative Updates for SharePoint & Project Server 2010 Republished. Retrieved December 13, 2010 from http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=957.
Microsoft Support (2010, October). Description of the SharePoint Server 2010 Cumulative Update Server Hotfix Package (MOSS server-package): October 26, 2010. Retrieved December 13, 2010 from http://support.microsoft.com/default.aspx?scid=kb;EN-US;2394320.
Microsoft Support (2010, December). Hotfix Request. Retrieved December 13, 2010 from http://support.microsoft.com/hotfix/KBHotfix.aspx?kbln=en-us&kbnum=2394320.
Tuesday, December 07, 2010
SharePoint 4.0: Where to Locate Details for Errors with Correlation ID
The error doesn't provide much information about the root cause. So, to uncover the details, it makes sense to investigate further by examining the log files. Here is how to do that:1. Note the date and time of the error message.
2. Open a local console or RDP session to a SharePoint server in the farm.
3. From Windows Explorer, navigate to Program Files > Common Files > Microsoft Shared > Web Server Extensions > 14 > Logs.
4. Sort the log files by Date Modified, Descending. Then, open the file containing the event using a text editor, such as Notepad.
5. CTRL +F to locate instances of the word "Error." Then match the date/time stamp.
Thursday, December 02, 2010
SQL Server 2008: Edit Top 200 Rows
To change this setting, follow these steps from SQL Server Management Studio (SSMS):- Tools > Options (This opens the General Scripting Options Dialog Box)
- SQL Server Object Explorer > Commands
- Table and View Options: Value for Edit Top Rows command (Change this value)

After modifying the setting, you will see that the menu is updated accordingly.
Monday, October 25, 2010
Focus More on Birdhouse Less on Hammer
The birdhouse analogy refers to the focus of conversations and presentations at SharePoint related conference sessions, meetings, and discussions. My underlying criticism is that it seems that the community has become more focused on what the SharePoint platform can do and not focused enough on the business solutions that we are building with the platform. I think the community stands to gain a lot if more emphasis was placed on what we are building with the platform, why, and how we measure value to the businesses receiving these solutions.
I understand that we do need to know the SharePoint product well in order to develop useful business solutions with it. However, I think it is easy for us become consumed by the SharePoint platform; and its capabilities and limitations and lose sight of the fact that SharePoint is merely a vehicle that helps us get to a destination. The business solutions are the true end game, not the platform and tools we use to build the solutions. Some of the design patterns and methodologies we find to be effective may even be transferrable to other technologies.
As workers, we in the SharePoint community are responsible for ensuring that the solutions we develop will provide the outcomes that the sponsors and stakeholders expect. I think that if we spend too much time trying to figure out the best ways to get "there," and too little time on establishing complete and clear visions of where "there" is, then we are missing the target. As a community, I think we may miss valuable opportunities to share lessons learned and best practices for solving common business problems using the SharePoint platform.
When we only focus only on the hammer, we miss the point. Let's have more conversations and presentations about the birdhouse, how we designed it, why we designed it a certain way, and what we learned from the whole experience.
Use SharePoint Worfklow Like Robots on a Conveyor Belt
Take for instance, the beginning portion of a new hire process that a company might have. This might involve a series of human interactions between candidate and recruiter. An application is submitted and the recruiter would evaluate the application, comparing it to an open requisition. The recruiter would interpret the information on the application and ask for clarification. If a match is made, then an interview might occur, and so on.
When the people involved are attempting to execute a process such as this, it is only natural that the changing conditions of the work environment will prompt questions about what tasks need to be completed, who should complete the tasks, what information should be gathered, how should that information be evaluated, what laws exist, etc.
Although, it is possible to automate certain tasks in this process, SharePoint workflow is not designed for automating the entire business process. Where SharePoint workflow really comes in is making discrete tasks more efficient. For example, the workflow technology may be used to transfer an applicant's information into a database where it can be easily compared with open requisition criteria.
The technology is not going to do a human's work, though, and it is not practical to even try to make it. No, instead, a more appropriate approach to leveraging SharePoint workflow is for efficiency gains which target small steps or tasks; ones that are completely black and white, like modifying and loading records into a custom list or database, moving documents, or sending out an e-mail when a specific event occurs.
Portal site designs which help guide the human through a series of steps is essential to a workflow solution. The portal provides the framework to guide the user, while the workflow elements provide automation for specific tasks that occur during the process.
Whatever the application, the goal is usually to provide tools that allow the human to logically string each step together, flowing as if the site is a virtual conveyor belt and the workflow elements (conditions/actions) are specific robots that do stuff at each stage. The overall solution should help guide and progress the overall process in a consistent direction so that humans can participate, contribute, and derive the needed results.
Still, in an ever changing environment, it is only natural that the conveyor belt will need to be stopped and participants will ask each other whether the process is effective and efficient enough, and what might need to happen differently. The simple fact is, every business process is a work in progress.
Friday, October 15, 2010
NESQL 2010 October 14 Virtualizing SQL Server
During the last few years, I have become a fan of virtualization for SharePoint environments, including the SQL Server database server role. I know many in the SharePoint community are skeptical about this, so, it was interesting to observe the opinions and responses from the local SQL Server community. I think the majority of the room was still skeptical (as expected) about virtualizing SQL Server. However, Brent did a good job of providing guidance on how to get the best performance out of a SQL environment when it is virtualized.
Beyond enlightening me about some of the finer details of how virtualization impacts I/O, Brent's presentation provided greater validation for my opinion of virtualizing SQL Server. At this point, I believe the technology is definitely mature enough to handle all roles (including database role) of most production SharePoint environments. That is; if adequate hardware is allocated and if virtualization is implemented well.
Some of the take-aways I scribbled down include the following (no warranties with these notes because I can barely read what I wrote):
CPU
- CPU-Z is a great, free utility for monitoring true CPU performance on guest systems
- In a virtual environment, more cores assigned to a SQL Server VM may actually leads to worse performance due to overhead related to instruction assignment behavior in shared environments relative to processor caching.
RAM
- In VMWare, set memory reservations, don't over commit RAM, use large pages (Microsoft, 2010).
- In SQL Server, remember to set min/max memory appropriately.
Storage
- Group DBs logically based on purpose, maintenance schedule, security, etc.
- Still separate Temp DB in virtual environments.
I believe Brent will be presenting the complete version of his presentation at the PASS Summit in November. Either way, if you are reading up on this topic, then check out his blog post on Virtualization Best Practices.
Reference
CPUID (2010). CPU-Z supports the new Intel Sandy Bridge processors. Retrieved October 15, 2010 from
http://www.cpuid.com/news/26-cpu_z_supports_the_new_intel_sandy_bridge_processors.html
Microsoft (2010). SQL Server and Large Pages Explained. Retrieved October 15, 2010 from http://blogs.msdn.com/b/psssql/archive/2009/06/05/sql-server-and-large-pages-explained.aspx.
Ozar (2010). Virtualization Best Practices. Retrieved October 15, 2010 from http://www.brentozar.com/sql/virtualization-best-practices/.
Reference: Tab Navigation
Easy Tabs 5
Tab Navigation using CSS only
Reference
Humbert, C. (August, 2010). Easy Tabs Version 5.0. Retrieved October 15, 2010 from http://www.pathtosharepoint.com/sharepoint-user-toolkit/Pages/Easy-Tabs-v5.aspx.
Solomon, H. (August, 2005). Tab Navigation using CSS only - Great for SharePoint. Retrieved October 15, 2010 from http://heathersolomon.com/blog/archive/2005/08/10/1434.aspx.
SharePoint Saturday Boston #3 Webinar Series
Click Here to Register
Agenda
11:45 AM EST – 11:55 AM EST Welcome and Sign-In
11:55 AM EST – 12:00 PM EST Speaker Introduction
12:00 PM EST – 1:00 PM EST Presentation
For more information or to register for other Webinars, visit the SharePoint Saturday Web site, SharePoint Saturday Boston #3 Webinar Series: http://www.sharepointsaturday.org/boston/Pages/SPSBos3WebinarSeries.aspx
Thursday, October 14, 2010
Reference: Location Codes
Official USPS Abbreviations
List of U.S. States by Time Zone
Reference
United States Postal Service (2010). Official USPS Abbreviations. Retrieved October 14, 2010 from http://www.usps.com/ncsc/lookups/usps_abbreviations.html.
Wikipedia (2010). List of U.S. States by Time Zone. Retrieved October 14, 2010 from http://en.wikipedia.org/wiki/List_of_U.S._states_by_time_zone.
Tuesday, October 05, 2010
SharePoint 4.0: How Search Indexing Works
The crawl process goes something like this:
1. Full crawl started
2. Start address moved to queue
3. Protocol determined
4.Connector selected
5. iFilter opens files
6. Content index created on crawl server
7. Index moved in batches to query server
8. Data written to Crawl and Property databases
(Microsoft, 2010)
One myth about SharePoint 2010 crawl process is that when content is crawled it never touches the file system of the Crawl Server and goes directly to Query Server...this isn't true. The way it works in environments that have crawler and query roles on separate servers is; a content index is built on the crawl server initially, but is moved in batches to the query server(s). The point when all batches have propogated to the query server, then it may appear as if there is no foot print on the Crawl server's file system...this is because all the batches have been moved up.
From a server topology perspective, Search requires three different server roles. These include Crawl Server, Query Server, and Database Server. Each of these roles plays a role in the crawl process. For scalability and availability, the architecture supports configurations that include one or many of each of the server roles. Determining the best topology is a balancing act of capacity requirements with available resources.
Reference
Microsoft (2010). Microsoft SharePoint 2010 Product Information Capabilities Search. Retrieved September 22, 2010 from
http://sharepoint.microsoft.com/en-us/product/capabilities/search/Pages/default.aspx.
Friday, October 01, 2010
Enterprise Search Summit Fall 2010

Thursday, September 30, 2010
SPS Boston: Implementing SharePoint for Enterprise Search: Methodology and Mechanics
On Saturday, September 25, 2010 I presented a session at SharePoint Saturday Boston.Title:
Implementing SharePoint for Enterprise Search: Methodology and Mechanics
Abstract:This session explains how following a proven approach and using certain configuration techniques can ensure the success of a SharePoint Search implementation. The prevalence of search technologies available on the World Wide Web has caused stakeholder expectations to remain high. Yet, an Enterprise Search solution is an excellent opportunity to introduce exciting capabilities and productivity gains for a business. Included in the presentation is a walk-through of project phases, a review of key design considerations, and examples of recommended configurations.
Click HERE to access slides.
In the near future, I do intend to create individual blog posts from some of the presentation slides so that I can expand on some of the topics in greater detail. If you would like to request that I write a blog post explaining a particular Search topic, please submit a request using the comments feature of this post.
Wednesday, September 08, 2010
Microsoft Project 2010: Outline Number and Fill Down
First, by inserting a column called "Outline Number," Project automatically populates the Work Breakdown Structure (WBS) task ID (WBS column does the same thing). This is much better than doing it manually.

Secondly, Microsoft Project doesn't let you paste a value into a range of cells like Excel. So, instead of manually typing in durations or pasting one at a time, there is a "Fill Down" menu option. Select the cell that contains the value you want, select the range, right-click, and select "Fill Down."
Thursday, August 05, 2010
Why Move to SharePoint 2010?
Beyond these reasons, business needs continue to evolve and mature. The product features of the latest version enable the delivery of better solutions, with less effort, with less customization. Aggregating information from different systems is easier now (Search, BCS). It is easier to provide end user conveniences, such as Outlook calendar integration or multi-select actions in document libraries. Branding is easier with the themes engine. There are more Search tools (e.g. navigators) available, allowing search experiences to be more like what people expect from using Web. In fact, the 2010 Search technology is rich enough to use as a development tool. Taxonomy and Folksonomy features help make organizing and navigating through content easier, while Managed Metadata Services help ensure consistency.
Different scenarios require different thought processes and approaches to 2010. For example, existing SharePoint Web sites which are flat and primarily exist to push Web content to many consumers, may benefit from a straight software upgrade. On the other hand, redesign opportunities exist for other types of SharePoint applications which are more interactive; which support business processes or facilitate workflows.
At this point, it makes sense to design and develop anything new directly in 2010, to take advantage of the technology and community benefits. Doing so also reduces duplication in efforts since there will not be a future need to upgrade the new solutions to 2010; they will already be there. That, by itself, is a legitimate reason to go 2010.
Reference
Microsoft (2010). SharePoint 2010 Product Information Overview. Retrieved August 5, 2010 from http://sharepoint.microsoft.com/en-us/product/capabilities/Pages/default.aspx.
Wednesday, August 04, 2010
Missing the Point on Spirit of Governance
The scope of an effective Information Management Governance Model spans beyond a specific solution, such as SharePoint Intranet or collaboration portal, and encompasses the Information Management practices occurring throughout the organization. A SharePoint governance model should be a subset to that. Putting this in the context of documentation, an overarching Information Management Statement of Governance document should exist and define the framework at the global level, while specific statement of governance documents should be maintained for each Information Management system within the organization; SharePoint being one of those.
The IT project management framework is another significant and relevant topic to governance. The project management framework established the processes followed to initiate, plan, and execute IT projects. These processes should include such activities as the evaluation of new SharePoint projects in the context of the organization's overall information architecture. Aligning the project management decision making with Information Management, business, and IT decision making results in solutions that have backing, are sustainable, and actually provide business value.
The spirit of governance is really about defining what the processes should be, and if generous enough, explaining why to some extent. In the end, governance models maintain decision making integrity amongst people...that is not something a portal administrator can do by running a report or recovering a deleted site.
Reference
Ross, J., Weill, P. (2004). Recipe for Good Governance. Retrieved August 4, 2010 from http://www.cio.com/article/29162/Recipe_for_Good_Governance.
Friday, July 30, 2010
Event: SharePoint Saturday Boston 2010
When:
Saturday, September 25th, 2010
Where:
Microsoft Corporation
Three SQL Server Settings for SharePoint Environments: Autogrowth Option, Auto Shrink Option, Shrink Database Task
1. Autogrowth - Fixed Amount:
This setting applies to data files (.mdf) and transaction log files (.ldf). Autogrowth allows or prevents SQL Server from automatically increasing the size of the files when the need arises. In SharePoint environments, it is best to do capacity planning in advance and set the intial database sizes appropriately. Then, set the Autogrowth value for both the data files and the log files to a fixed amount. This ensures that the files grow in consistent increments. The fixed amount should be somewhat substantial, relative to the size of the database. This ensures that the growth does not occur too frequently.

2. Auto Shrink - Turn it Off:
Auto Shrink is an option that allows or prevents SQL Server from automatically reducing the size of database files. By default, the SQL Server Model database has the Auto Shrink option off. As Paul Randal points out, enabling Auto Shrink can lead to Auto-Grow, Auto-Shrink loops as well as database fragmentation, and other performance issues (Randal, 2007). As a general rule of thumb for most SharePoint environments, this option should remain off for system and content databases.

3. Shrink Database Task - Don't Schedule It:
The Shrink Database Task is an available Maintenance Plan Task. If set, this operation will reduce the size of a database according to a schedule, leaving a specified amount of free space. As with the Auto Shrink option, the Shrink Database Task leads to performance issues and is not recommend in SharePoint environments.
So, if an existing SharePoint environment does have a scheduled Shrink Database Task, then a suggested action would be to remove the Shrink Database Task and then plan to monitor and manage database size using a manual approach. When determining a plan for managing database size, it is important to keep Database Recovery Models in mind.
Reference
Randal, P. (August, 2008). Top Tips for Effective Database Maintenance. Retrieved July 30, 2010 from http://technet.microsoft.com/en-us/magazine/2008.08.database.aspx?pr=blog.
Randal, P. (March, 2007). Turn AUTO_SHRINK off!! Retrieved July 30, 2010 from http://blogs.msdn.com/b/sqlserverstorageengine/archive/2007/03/28/turn-auto-shrink-off.aspx.
Tuesday, July 27, 2010
Why Information Silos Are So Persistent
Most of the time, these tools were developed to fill a gap. A gap between what the enterprise offers and what certain areas of the business actually need to function. They serve a purpose; and in many cases they are significant to the processes that they support.
Considering where technology is today, why are are information silos so persistent, more prevalent than ever? Why can't IT just build something into the enterprise architecture?
One reason (or cause) is because of the technology, which has become easier to work with and more accessible to people inside and outside of IT Departments. A person of any role can go on the Internet and figure out how to set up an Access database. In many cases, this is much easier than approaching a centralized IT department with their requirements. The Internet isn't going to say "no." By circumventing IT, nobody asks for funding, tries to minimize or question the need, or compromise the intention in any way. But, if the request did go to the IT department might, there might be resistance.
Secondly, a rogue solution is much less risky for a business person in terms of exposure and process transparency. By setting up a tool of their own, a business person may struggle a bit with configuration, but at no point is their process going to be visible to other people for criticism. If the person was to bring their requirements to the table and ask for help, then a lot of questions might be asked, putting guarded knowledge at risk. Unfortunately, for protective types, this means that the process would, in fact, become more transparent. The original process owner would become a "stakeholder" with influence rather than an "owner" with full control.
Beyond that, information silos also exist when an organization's methodologies and practices for providing holistic solutions are not mature enough to truly help. For example, IT organizations which are disorganized and reactive, might not be capable of helping the business person with their needs. There's no process, no authority, no plan to handle this sort of thing.
All of these situations challenge a centralized Information Management strategy.
Saturday, July 24, 2010
General Business Requirements vs. Solution Requirements
When the software development process is lengthy and drawn out, it forces many planning activities such as requirements analysis, design specifications, and planning. Not doing these things leads to costly adjustments later. The lengthy process also forces organizations to really think about what solutions they are developing and how these solutions fit into the big picture. We've got it pretty easy today. With portals, collaboration, search, BI, content management, and workflow platforms today, some times doing it "wrong", undoing it, and doing it again is actually less expensive than the cost of planning and documenting.
Yes, I am familiar with the twelve principles of the Agile Manifesto (Agile Alliance, 2001). I like agile development when it follows some organized processes and produces artifacts that can be used for reference later. You still need documentation for future development, disaster recovery, and repair.
However, what I don't like is "premature solutioning" or the practice of directly jumping from a problem to a solution design without any sort of further questioning, analysis, thought, or sanity checks. When you encounter a problem, and immediately form a solution and begin developing it, a lot is lost. You are not considering what other stakeholder needs are, what other colleagues are already working on, and how this "fly by the seat of your pants" solution actually fits in (or doesn't) into your overall information architecture.
Working with my colleagues, we recently began formalizing our thoughts around the solutioning process. One of the first roadblocks we encountered had to do with semantics. We began observing that our push for "requirements" was being misunderstood. When a problem-solution situation arose, we would explain that we needed to analyze requirements. The response to this typically included design specifications. We would then stop and say, no, we don't want detailed design specifications, what we want is to understand the problem better and understand how it impacts other people, so we can create a solution that will fit into our information architecture in a way that adds value and doesn't undermine anything else we are doing.
After a few more of these scenarios we decided that we had to make others aware of our solutioning process and how we think, so that everybody would be able to communicate with each other better. The first thing we did was make a distinction between the types of requirements that we would discuss in the course of solutioning.
We decided on the following:
General Business Requirements - Facts and opinions that help understand the problem better. These are not design specifications and do not explain a solution. Instead, this information explains what the business needs are.
Solution Requirements - Facts and opinions that define how a solution is supposed to look, feel, or act. This information directly dictates the design specifications.
So, now when a new request arises, we start by gathering "general business requirements." We then consult with stakeholders, policies, procedures, standards, goals, etc. and analyze the information. Once we have all the facts, we begin to design a solution. At that time, we ask stakeholders to help us define the "solution requirements." The result of the latter activity is a design specifications document. Next, we schedule and plan the development activities and proceed from there.
Reference
Agile Alliance (2001). Principles Behind the Agile Manifesto. Retrieved July 24, 2010 from http://agilemanifesto.org/principles.html.
Thursday, July 22, 2010
SharePoint 4.0: Summary Links Data Column Type
This column type is brilliant in theory, but unfortunately they don't appear to work as expected. Here is my assessment of the Summary Links Data column type.

In SharePoint 2010, if I add a Summary Links Data column to document library, then add a new document, the new or edit document properties page looks correct. The Summary Links Data column is represented by an editable summary links control.
However, after the links have been added and the document uploaded, you return to the document properties using the "View Properties" page. The result of this is that the links are not visible. Huh?
OK, so let's try a custom list. Added the column to a custom list. Adding or editing an item results in a non-editable field. So, the Summary Data List story just got even worse in custom lists...

Reference
Site Columns: SharePoint 2010 vs. SharePoint 2007
1. Column types for Rich Media and Managed Metadata.
2. "Enforce unique values."
3. Column validation.
(Microsoft, 2010)
During the past few years, I do remember occasions when I was "wishing" for the ability to apply unique permissions at the site column or content type level, but these abilities are not something available in SharePoint 2010.
I imagine field level or content type security would require a more dynamic design at the list and library level, since the list and libraries still work off the static template model, storing their own column definitions in XML as they were defined at the time of list or library creation, and maintaining their own security settings. This is evident when you delete a site column that is being used in a list or library. The site column is removed from the site column gallery, but a local instance of it still remains on the list or library.
In order for field level or content type security to be possible in SharePoint, each site column and local column definition would need to be expanded to include a security definition. List and library views would also need to become more security aware, rendering different columns based on varying security contexts. So, pushing down unique site column or content type security is more than the platform can handle at this time.
Microsoft SharePoint Server 2010

Microsoft Office SharePoint Server 2007

Reference
Microsoft (2010). Create a site column. Retrieved July 22, 2010 from http://office.microsoft.com/en-us/sharepoint-server-help/create-a-site-column-HA010177759.aspx.Microsoft (2010). Introduction to Columns. Retrieved July 22, 2010 from http://msdn.microsoft.com/en-us/library/ms450825.aspx.
Wednesday, July 21, 2010
Fiddler
"Fiddler is an HTTP debugging proxy written by Eric Lawrence of Microsoft.[1] It seamlessly captures HTTP traffic and logs it for the user to review.[4] It can also be used to "fiddle" with HTTP traffic as it is being sent.[3] By default, traffic from Microsoft's WinINET HTTP(S) stack is automatically directed through Fiddler at runtime, but any browser or application can be configured to route traffic through Fiddler.
The new version, known as Fiddler2, offers support for interception and tampering with HTTPS traffic." (Wikipedia, 2010)
To install Fiddler, follow these steps:
1. Download Fiddler.
2. Run the setup.exe.

To run a trace, follow these steps:
1. Open Fiddler (Start > All Programs > Fiddler2).
2. Begin a trace (File > Capture Traffic).
3. Launch Internet Explorer and produce the activity you would like to trace.
4. Stop the trace (File > uncheck Capture Traffic).
5. Save the trace file (File > Save > All Sessions).
6. Now, you are able to analyze the activity and pinpoint issues. You may also consider comparing the Fiddler trace to the Application Event log from the client and server machines.
Reference
Lawrence, E. (2010). Fiddler2 - Installation Information. Retrieved July 20, 2010 from http://www.fiddler2.com/fiddler2/version.asp.
Wikipedia (2010). Fiddler (software). Retrieved July 20, 2010 from http://en.wikipedia.org/wiki/Fiddler_(software).
Microsoft Certifications for SharePoint 2010
Microsoft Certified IT Professional (MCITP): SharePoint Administrator 2010
70-668 PRO: SharePoint Server 2010, Administrator
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-668
70-667 TS: Microsoft SharePoint 2010, Configuring
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-667
Microsoft Certified Professional Developer (MCPD): SharePoint Developer 2010
70-576 PRO: Designing and Developing Microsoft SharePoint 2010 Applications
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-576
70-573 TS: Microsoft SharePoint 2010, Application Development
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-573
Microsoft Certified Master program (MCM)
http://www.microsoft.com/learning/en/us/certification/architect.aspx
Microsoft Certified Architect certification (MCA)
http://www.microsoft.com/learning/en/us/certification/master.aspx#tab2
Reference
Microsoft (2010). Microsoft SharePoint – Training Portal. Retrieved July 21, 2010 from http://www.microsoft.com/learning/en/us/training/sharepoint.aspx.
Prometric (2010). Microsoft Certifications. Retrieved July 21, 2010 from http://www.prometric.com/Microsoft/default.htm.
Monday, July 12, 2010
Connected Lookup on Codeplex
There is a Codeplex project that I discovered today, for WSS 3.0 and MOSS 2007. I've pretty much halted future development on MOSS 2007 at this point but I thought I'd post the link regardless.

Reference
Codeplex (2010). SharePoint Connected Lookup. Retrieved July 12, 2010 from http://cl.codeplex.com/.
Tuesday, July 06, 2010
Link: Process Monitor
Microsoft offers Process Monitor as a free download. In short, this tool helps capture detailed events and isolate issues. I recently used Process Monitor when I encountered a performance issue with one of my portals; the default.aspx page was taking a long time to save. Process Monitor helped me isolate the issue and determine that the cause was a buffer overflow.
Reference
Microsoft (2010). Windows Sysinternals, Process Monitor v2.91. Retrieved July 6, 2010 from http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Friday, June 25, 2010
SharePoint Datasheet View, Office 2010 Compatibility
As it stands, Microsoft Office 2010 Standard Edition lacks many key compatibility features with SharePoint Server, while the Editions such as Office Professional and Office Professional Plus offer much more (Microsoft, 2010). One of the most important usability features of compatibility is the ability to manage information inside SharePoint lists and libraries is datasheet view. I know that once this feature is adopted by a user base, it is not something that can be taken away because people rely on on datasheet to manipulate data fast and easy.
Regardless of whether Office 2010 is 64-bit 0r 32-bit, the edition of office must be ABOVE STANDARD. This means that if you have Office 2010 Standard, you DO NOT have datasheet view. I cannot imagine having a SharePoint environment in which I do not have access to datasheet view, and so I would base my decision on which Office Suite to use solely on datasheet view...in other words, Office 2010 Standard is dead to me and I only care about Professional and higher from this point forward.
In the process of upgrading my primary client system to Office 2010 Professional Plus, I also had to decide between 64-bit and 32-bit. 32-bit is still recommended for maximum compatibility with add-ins and third party products, while 64-bit is intended for individuals who are working with large amounts of data (Microsoft, 2010). 32-bit is also more convenient to run. Datasheet view is automatically available to use if you have Microsoft Office 2010 (above Standard Edition) 32-bit. Datasheet view isn't automatic for 64-bit though, as evident by this error message:
Error: "The list cannot be displayed in Datasheet view for one or more of the following reasons:..."

To make my life as complicated as possible, I decided to go with 64-bit. So, how is does 64-bit Office 2010 complicate the datsheet view capability? Well, I quickly learned that as of the 64-bit flavor of Office 2010 has additional requirements in order for datasheet view to be available. After installing the 64-bit Office suite (remember, must be Standard Edition or higher), you must do one of the following, in order to avoid the obnoxious pop-up error above:
A. Download and install the 2007 Office System Driver for Data Connectivity Components.
or
B. Install the 2007 SharePoint Services Support, which is available on the Microsoft Office 2007 installation media.
Reference
Microsoft (2010). 2007 Office System Driver: Data Connectivity Components. Retrieved June 28, 2010 from http://www.microsoft.com/downloads/details.aspx?familyid=7554F536-8C28-4598-9B72-EF94E038C891&displaylang=en.
Microsoft (2010). 64-bit editions of Office 2010. Retrieved June 28, 2010 from http://technet.microsoft.com/en-us/library/ee681792.aspx.
Microsoft (2010). Compare server integration features between Office suites available through volume licensing. Retrieved June 28, 2010 from http://office.microsoft.com/en-us/buy/compare-server-integration-features-between-office-suites-available-through-volume-licensing-FX101850719.aspx.
Microsoft (2010). Compatibility Between the 32-bit and 64-bit Versions of Office 2010. Retrieved June 28, 2010 from http://msdn.microsoft.com/en-us/library/ee691831(office.14).aspx.
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








