The traditional collaborative file share has lived its 15-odd–year life well. From its roots in other network OSs, through its proliferation during the explosive growth of Windows NT, Windows 2000, and Windows Server 2003 file servers, to today, the file share served our needs. But it's fading into the sunset, and a new day is dawning: the era of collaborative document sharing using Windows SharePoint Services document libraries. To grasp the implications of the shift to document libraries, you'll need to understand first why they're destined to replace file shares in most common filesharing scenarios. (Sometimes, file shares still serve the purpose better than document libraries. For a look at these scenarios, see the sidebar "I'm Not Dead Yet!".) From there, you'll need to get a handle on the fundamentals of document library implementation: creating, configuring, and securing libraries and viewing, editing, and monitoring documents in those libraries.
By document libraries, I mean primarily typical information-worker shared folder scenarios, in which groups of users—a team, a department, or even an entire organization—share access to files for day-to-day reference and collaboration. SharePoint document libraries will very likely replace file shares in these scenarios. Document libraries enable capabilities that are crucial to an agile, collaborative enterprise—including checkout and monitoring, which I'll discuss here—as well as version history, content approval, workflow, and remote and offline access, which I'll cover in upcoming articles.
Creating a Document Library
Let's start with how to implement document libraries in Windows SharePoint Services 3.0 (the process is virtually identical in Microsoft Office SharePoint Server 2007). To create a document library from a standard SharePoint team site, or most other templates, either click View All Site Content in the Quick Launch bar and click Create, or click the Site Actions button and choose Create.
In the Libraries section, you can see what libraries are available, and your first task will be to determine what type of library you require. Document libraries are the closest equivalent to traditional, collaborative file shares. Picture libraries are specialized for graphics and include a useful thumbnails view and a well-implemented slide-show view. There are also form libraries, wiki page libraries, and (in SharePoint Server 2007) several other types of document libraries.
When you choose to create a document library, you're asked to enter a name and description, and you can configure the document library to appear in the left panel, Quick Launch navigation, and whether versioning is enabled. In the Document Template section of the page, which Figure 1 shows, you can also specify the type of document that's created when users click the New button in the document library.
If a document library will generally or exclusively contain one type of document, such as generic Microsoft Office Word, Excel, or PowerPoint, and if that type is in the Document Template drop-down list, select it. However, in certain situations you should choose None as the template:
- The template for the type of document you want to create when clicking the New button in the document library isn't listed.
- The library will contain a custom document type (e.g., Contracts, Expense Reports).
- The library will be used to create multiple document types.
- A document library will be populated only by uploading documents, not by clicking the New button.
After you've created the document library, you can modify each of these configurations in the document library settings by clicking the Settings button and choosing Document Library Settings. In fact, I urge you to go to the document library's settings immediately after creating the library, so that you can configure it to fully support the capabilities you require, such as forced check-out and version history.
Finally, if you expect to provide search for your document library, you might need to add IFilters, which are plug-ins that enable SharePoint to index specific document types, such as PDFs. The Microsoft article "No Adobe PDF documents are returned in the search results when you search a Windows SharePoint Services 3.0 Web Site" (http://support.microsoft.com/?kbid=927675) explains how to install the Adobe PDF IFilter and modify the registry to enable SharePoint search to crawl and index PDF documents. Be sure to install the IFilter early, before adding documents of that type to the library. SharePoint includes a number of IFilters for common document types, including Microsoft's own document types. Contact application vendors, such as Adobe Systems, for IFilters that support their document types.
You'll probably want to configure permissions, which can be assigned to any securable object in the SharePoint model—that is, a top-level site, subsite, library or list, folder, document, or item. By default, permissions are inherited from the parent object, so that permissions applied to the top-level site are inherited by all sites, libraries, and documents. But you can "break" the inheritance at any object in the hierarchy, then configure permissions on that object, which will then be inherited from that point downward.
To set permissions on a document library, open the library. Click Settings, Document Library Settings, then click Permissions for this document library. Current permissions are displayed, and the description bar shows the text This library inherits permissions from its parent web site. Click the Actions menu button, then click Edit Permissions, and confirm by clicking OK. Permissions previously inherited from the parent object will be copied as the default new explicit permissions for this library, and you can then add, remove, or modify permissions to meet your requirements. To change the permissions of users or groups, you can select groups or users and use commands in the Actions button menu (Remove User Permissions and Edit User Permissions). To add a new user or group and configure its permissions, click New, as Figure 2 shows.
Although the UI suggests that these are "user permissions," in actuality you can configure permissions for any user or group. Accounts can be SharePoint groups (created by clicking Site Actions, finding the Site Settings command, then navigating to People and Groups) or users or groups from the site's authentication provider(s) such as Active Directory (AD). As with Windows folder permissions, it's a best practice to manage permissions by using groups, not individual users, but there are always exceptions to that rule. I also recommend that you use SharePoint, rather than AD, groups because of the ease with which site administrators who are nontechnical users can manage SharePoint group memberships. Using SharePoint groups also makes it possible to configure SharePoint groups to enable access requests—a powerful permissions-management provisioning capability.
Be aware that once an object no longer inherits permissions from its parent, any changes to the parent won't "drill down" to the object. To revert an object to inheriting permissions from its parent, click the Actions button on the Permissions Settings page and choose Inherit Permissions. Doing so removes all explicit permissions. Unlike Windows NTFS permissions, a SharePoint object can't have a mixture of both inherited and explicit permissions: only one or the other.
One of the most important improvements in Windows SharePoint Services 3.0 is the ability to configure item- (or document-) level security. In previous releases, you could configure security only to the document-library level. Now, you can configure permissions on individual documents. To see how this works, hover over a document name and, from the dropdown menu that appears, choose Manage Permissions. Again, you'll be informed that the document is currently inheriting permissions from the library. And, as you can do for the library itself, you'll be able to choose Actions, Edit Permissions and set permissions on the document.
Populating a Document Library
After you've created and secured a document library, you're ready to add documents to it. You can add an existing document to a library by clicking the Upload button in the library's command bar to upload one or more documents to the library.
Another way to add a document to a library is to create a new document from the document library. Click the New button on the document library's command bar, just above the document list, then choose the type of document you want to create. The list that's displayed will include a default document template, if you configured one as explained earlier. If you want to have a custom document template or support multiple document types, click the Help button in the upper-right corner of your SharePoint site and read the online documentation related to template modification or content types. After the new document is created, the user can modify its contents; when the document is saved, it's saved directly to the SharePoint document library.
You can also save a document directly to a SharePoint document library from a SharePoint-compatible application. You need to know the URL for the document library (e.g., http://sharepoint.windomain.com/finance/shared%20documents). In the SharePoint-compatible application, use the Save command, enter the URL in the File name box, press Enter, and you'll navigate to the document library. Enter the document name and click Save, as Figure 3 shows. It's just like saving to a shared folder, except that you use a URL instead of a Universal Naming Convention (UNC) path.
There are a couple of caveats here. First, as you can see from the sample URL, any embedded punctuation or spaces can make the URL look a bit unwieldy. But although you can generally enter the URL without the embedded punctuation (e.g., http://sharepoint.windomain.com/ finance/shareddocuments instead of http://sharepoint.windomain.com/finance/shared%20documents) and access the right location, it's a wise practice to keep URLs short and clean. Second, users aren't yet accustomed to navigating to URLs in interfaces other than a Web browser, so you should consider providing navigation aids, such as shortcuts (placed on the desktop or in My Documents) or Network Places to the document library URL. Microsoft Office 2007 system helps somewhat by creating a My SharePoint Sites link in the Open and Save dialog boxes, as you can see in Figure 3.
There are two other ways to get documents into document libraries. One way is to use the Windows Explorer view. Click the View button and choose Explorer View, or click Actions and choose Open with Windows Explorer. The folder then appears as an Explorer control within the document library or opens as a Windows Explorer window. You can now use copy (or cut) and paste or drag and drop to copy or move files between your computer and the document library. Note that if you use the Explorer view, you might need to configure Internet Explorer's (IE's) security zones (Local intranet or Trusted sites) to include your SharePoint site; otherwise, you'll be constantly prompted to confirm your actions.
You can also email enable a document library. The steps for configuring email-enabled document libraries are beyond the scope of this article; you can find them in the online SharePoint Help. However, here's a related tip: If you email enable a document library, configure the library's Description to include the email address, so that when users visit the library online they'll be able to easily identify its address.
Finally, applications that are SharePoint clients, such as Microsoft Office Outlook 2007 and Microsoft Office Groove 2007, provide excellent support for working with SharePoint document libraries. I'll discuss these applications in future articles.
Viewing and Editing Documents
A document library displays documents as links. To view a document, click the link, and the document will be opened by default in read-only mode (although Office 2007 applications will prompt you to select read-only or edit mode). If you want to edit a document, hover over the document name, and a drop-down arrow appears. Click the arrow for a menu that includes the Edit command for that document type, such as Edit in Microsoft Office Word. Doing so opens the document in edit mode, so that you can make changes. When you close or save the document, it's saved to the document library. Be sure to train users about the difference between clicking the link (for read-only viewing) and clicking the drop-down arrow (for commands such as Edit). This knowledge will provide end users the most consistent experience across document types and associated applications.
Control Document Editing
If multiple users may edit documents, you should control editing to avoid conflicts in which two users try to make and save changes to a document. This is the first SharePoint capability I've discussed that simply isn't possible by using traditional collaborative file shares. When a user checks out a document, it's locked so that no other users can make changes until the user checks in the document. Site administrators can also discard a checkout, which will let other users check out the document, but the original user can no longer upload his or her changes to the document.
If check-out seems like a good idea (and I think it is), you should configure the document library to require check-out. To do so, in the document library settings, click Versioning Settings and, at the bottom of the following page, click Yes to Require Check Out. Now, when a user chooses to edit a document, the document is automatically checked out to the user.
Monitoring Document Changes
If you want to monitor activities in a document library, such as the addition, deletion, or modification of documents, you can use email alerts or RSS feeds. To configure email alerts, click the Actions button and choose Alert Me. You'll be sent an email message if something changes in the library, and you can specify the Alert Title (i.e., the subject line of the email), to whom the email alert will be sent, what types of changes will trigger an alert, and how often alerts are sent (immediately, daily, or weekly).
Windows SharePoint Services 3.0 automatically generates an RSS feed for document libraries and lists. To activate the RSS-feed option, click the Actions button and choose View RSS Feed. You can then subscribe to the feed by using any RSS reader, such as NewsGator or the RSS aggregator integrated into IE 7.0 or Outlook 2007.
Try That with a File Share!
Once you've created and secured document libraries, and users are creating, viewing, checking out and editing documents and can more directly track changes to documents and libraries, you've mastered the fundamentals of document-library implementation. In an upcoming article, I'll delve into features that traditional collaborative file shares never dreamed of, but that information worker scenarios require: version history, content approval, workflow, offline access, and content management. Until then, try not to grieve too deeply over the loss of traditional collaborative file shares.