Essential SharePoint By Jeff Webb Publisher: O'Reilly Pub Date: May 2005 ISBN: 0-596-00880-5 Pages: 336 Table of Contents | Index Want to work more efficiently and effectively? Want to improve productivity? Microsoft is betting that you do That's why it created Windows SharePoint Services a set of collaboration tools that helps organizations increase individual and team productivity by enabling them to create web sites for information sharing and document collaboration Through these team-oriented web sites, users capture and share ideas, and work together on documents, tasks, contacts, etc. either among themselves or with partners and customers And if you have Windows 2003 Server, then you already have SharePoint, since it's built right in But before you can enjoy the benefits of SharePoint, you need to know how to turn it on, set it up, and get your applications working with it Essential Sharepoint will help you do just that It's not only the most complete guide for setting up and using these increasingly popular sites, but it also explains in detail the integration that makes SharePoint exciting Everything you need to know about SharePoint is covered, including: hosting choices administration customization integration with Microsoft Office developing new SharePoint functionality when to use SharePoint portal server Essential Sharepoint covers all the key topics for getting up and running with this powerful and popular set of collaboration tools And it's not just for members of the IT staff This comprehensive guide is for anyone in an organization who wants to explore Microsoft SharePoint in order to foster collaboration with other users Essential SharePoint By Jeff Webb Publisher: O'Reilly Pub Date: May 2005 ISBN: 0-596-00880-5 Pages: 336 Table of Contents | Index Copyright Dedication Preface Who Should Read This Book Navigating in SharePoint Getting the Code Examples If You Need Help Font Conventions How to Contact Us Safari Enabled Acknowledgments Chapter 1 Why Use SharePoint? Section 1.1 Solving Problems Section 1.2 Storing and Sharing Section 1.3 Improving Collaboration Section 1.4 Going Public Section 1.5 Organizing Sites Section 1.6 Types of Sites Section 1.7 Parts of a Page Section 1.8 Where Are the Files? Section 1.9 Putting SharePoint to Work Section 1.10 Holding Meetings Section 1.11 Building Libraries Section 1.12 Creating Internet Sites Section 1.13 What Software Do You Need? Section 1.14 Trying Out SharePoint Section 1.15 What's SharePoint Not Good For? Section 1.16 Resources Chapter 2 Getting Started Section 2.1 Before You Begin Section 2.2 Creating Hosted Sites Section 2.3 Adding Members Section 2.4 Changing Pages Section 2.5 Adding Content Section 2.6 Setting Client Security Section 2.7 Creating Self-Hosted Sites Section 2.8 Installing SharePoint Services Section 2.9 Adding Members Quickly Section 2.10 Allowing Anonymous Access Section 2.11 Maintaining Server Security Section 2.12 Enabling Self-Service Site Creation Section 2.13 Resources Chapter 3 Applying Templates, Themes, and Styles Section 3.1 Understanding Templates Section 3.2 Creating Custom Site Templates Section 3.3 Creating Site Definitions Section 3.4 Distributing Site Templates Section 3.5 Creating List Templates Section 3.6 Adding List Views Section 3.7 Creating List Definitions Section 3.8 Modifying Themes Section 3.9 Applying Style Sheets Section 3.10 Changing the Default Icons Chapter 4 Sharing Contacts and Meetings with Outlook Section 4.1 Sharing Contacts Section 4.2 Organizing Meetings Section 4.3 Resources Chapter 5 Sharing Workspaces and Lists with Excel Section 5.1 Getting Started with Excel and SharePoint Section 5.2 Sharing Workbooks Section 5.3 Sharing Lists Section 5.4 Publishing as a Web Page Section 5.5 Using the Spreadsheet Web Part Section 5.6 Programming SharePoint in VBA Chapter 6 Using Document Libraries with Word Section 6.1 Understanding Libraries Section 6.2 Adding Documents to a Library Section 6.3 Creating New Documents Section 6.4 Adding Document Properties Section 6.5 Changing the Library Template Section 6.6 Linking Documents to Libraries Section 6.7 Making Revisions Privately Section 6.8 Linking and Publishing Custom Properties Section 6.9 Discussing a Document Section 6.10 Enabling Emailed Submissions Section 6.11 Approving/Rejecting Documents Section 6.12 Responding to Events Section 6.13 Searching for Documents Section 6.14 Resources Chapter 7 Gathering Data Section 7.1 Using Lists to Gather Data Section 7.2 Using Form Libraries to Gather Data Chapter 8 Creating Web Parts Section 8.1 Preparing to Develop Section 8.2 Creating a Web Part Project Section 8.3 Deploying Web Parts Section 8.4 Creating Web Parts from Excel Section 8.5 Resources Chapter 9 Programming Web Parts Section 9.1 Understanding Web Parts Section 9.2 Creating Web Part Appearance Section 9.3 Adding Child Controls Section 9.4 Working on the Client Side Section 9.5 Understanding Event Order Section 9.6 Adding Properties Section 9.7 Adding Menus Section 9.8 Customizing the Property Task Pane Section 9.9 Connecting Parts Section 9.10 Resources Chapter 10 Remote Programming Section 10.1 Choosing an Approach Section 10.2 Using the Office Object Model Section 10.3 Using Web Services Section 10.4 Using URL Commands Section 10.5 Using FrontPage RPC Appendix A Upgrading Upgrading to SQL 2000 Upgrading to Portal Server Recording Settings Installing and Configuring Portal Server Re-Extending Existing Sites Connecting Sites to the Portal Adding Links to the Portal Upgrading from Team Services Resources Appendix B Reference Tables Office Versions StsAdm Commands SetupSts Commands Server Files and Locations Content Not Stored in Database Colophon About the Author Colophon Index Essential SharePoint by Jeff Webb Copyright © 2005 O'Reilly Media, Inc All rights reserved Printed in the United States of America Published by O'Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472 O'Reilly books may be purchased for educational, business, or sales promotional use Online editions are also available for most titles (safari.oreilly.com) For more information, contact our corporate/institutional sales department: (800) 998-9938 or corporate@oreilly.com Editor: Simon St.Laurent Production Editor: Jamie Peppard Cover Designer: Emma Colby Interior Designer: David Futato Printing History: May 2005: First Edition Nutshell Handbook, the Nutshell Handbook logo, and the O'Reilly logo are registered trademarks of O'Reilly Media, Inc Essential SharePoint, the image of a wombat, and related trade dress are trademarks of O'Reilly Media, Inc Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks Where those designations appear in this book, and O'Reilly Media, Inc was aware of a trademark claim, the designations have been printed in caps or initial caps While every precaution has been taken in the preparation of this book, the publisher and author assume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein ISBN: 0-596-00880-5 [M] Dedication For Sophiayou are talented, beautiful, smart, and fun to be with Preface If you don't have SharePoint Services, you need it Even if you work alone from your home office as I do, SharePoint is too useful to pass upand it's free (well, kind of) SharePoint Services is part of Windows 2003, so if you already have Windows Server 2003, you can download the installation from Microsoft and install it fairly easily If you don't have Windows Server 2003, you can sign up for a free 30-day trial through one of the SharePoint hosting providers, which operate much like other web-hosting services With the free trial, you get an account and some server space You can administer your site yourself through a web-based interface, and after the free trial period they'll bill you monthly Who Should Read This Book SharePoint is a server product that is used by a wide range of people This book was written to serve readers based on their varying roles in your company The following table identifies these roles and recommends specific chapters that may be of interest Role Responsibilities Read these chapters Administrator Installs server software, configures web sites, manages security 1, 2, 3 Designer Designs pages on site, creates site templates 1, 3, 8 Contributor Adds documents, lists, tasks, announcements, and 1, 4, 5, 6 other content Contributor with data entry Completes InfoPath forms Reader Views sites and documents but makes no changes 1, 4, 6 Programmer Creates custom web parts 1, 4, 5, 6, 7 1, 3, 8, 9, 10 Because I cover the full range of things you can do with SharePoint in this book, certain sections may be too technical for some readers For example, you won't want to read Chapter 9 if you're not a programmer! Still, I wanted to provide a book that gives readers room to grow and that does more than reorganize information that is already available for free in Help or on the Internet static web parts storing and sharing information string functions (.NET) Strong Name utility (sn.exe) STS folder, copying and renaming for new site definition StsAdm commands style sheets, applying to sites styles, identifying class name of subsites hosting existing (non-SharePoint) site as synchronizing updates for shared list Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Z] task lists tasks, assigning in shared workspace TCP port, changing for site in IIS team membership Team Site template default content of site based on extending to include Picture Library team sites site definition file templates adding list views displaying views in web parts sorting, filtering, and highlighting to list templates changing library template creating list definitions creating list templates editing custom template directly custom site templates, creating adding pages changing built-in pages replacing predefined template viewing, editing, and deleting template files distributing site templates editing template pages with FrontPage form, preventing changes to in document libraries InfoPath form library templates meeting workspace predefined list templates predefined site templates, listed predefined vs custom preventing users from designing saving data list as site definitions adding and changing pages customizing debugging files for THEME.css file themes applying to pages of hosted site changing style in modifying toolpart class, creating top-level site creating in IIS extending with SharePoint totals, displaying for data list Trusted Sites list, Internet Explorer adding SharePoint site to trying out SharePoint free trial versions tutorial (online) for SharePoint Typical Installation option (SharePoint database) Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Z] updates controlling for shared workspace shared lists programmed in VBA synchronizing for shared lists workbook stored in shared workspace URL commands, using in remote programming executing getting GUIDs using SharePoint objects using web services (.NET) using web services (VBA) listing of URL commands optional parameters user accounts and passwords, generating automatically Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Z] validating form data VBA Office objects, using in remote programming programming SharePoint creating lists creating workspaces inserting shared lists opening workbooks from shared workspace refreshing and updating removing sharing responding to updates sharing lists unlinking, unlisting, and deleting lists remote programming using web services lists, working with programming tips using web services to get URL command GUIDs VBScript form programming InfoPath scripts, converting to NET version history configuring Shared Documents library for enabling in Shared Documents library version tracking for large written works turning on for a workspace viewing template files views adding filter to adding list views displaying in web parts sorting, filtering, and highlighting to list templates creating new default view to add items to list Datasheet view grouping items by type organizing content in document libraries Views web service, GetViewCollection method Virtual PC, running Windows 2003 in XP virtual server gallery, deploying web part to virtual servers creating Visual Studio Tools for Office (VSTO) 2nd Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Z] W3C web site Web Components (Office 2003) web controls, using scripts with Web Farm option (SharePoint installation) web page for this book web pages preparing for RPC publishing Excel workbook or worksheet as Web Part Packager utility (wppackager.exe) web part page web parts 2nd changing list view closing on home page command buttons, adding creating from Excel creating web part project adding web part to a page building and signing assembly configuring in Visual Studio registering web part assembly test page troubleshooting customizing list form web part data view, removing toolbar from deleting from a page deploying adding to site gallery as Windows installer files to online gallery to virtual server gallery editing with FrontPage 2nd Excel spreadsheet list form lists in modifying in hosted site page performing specific tasks preparing to develop configuring Windows 2003 server using Remote Desktop using Virtual PC programming adding child controls adding menus adding properties appearance, creating client-side connecting parts customizing property task pane event order extending ASP.NET programming tasks resources understanding web parts using web parts resources for developing views displaying in web portal based on SharePoint Web Reference URL property web services (SharePoint) using in remote programming from NET from ASP.NET from VBA using to get URL command GUIDs from NET from VBA web sites (non-SharePoint), re-enabling on server Web.config file changing to impersonate current user changing trust level and debug settings registering web part assembly security settings for site WebPart class ShouldSerialize methods WebPartZone class WebTemp.xml file creating new for new site definition Windows configuring Windows 2003 server to develop web parts developing web parts on Windows 2003 running Windows 2003 in XP SharePoint Services on Windows 2003 Windows installer files, deploying web part as WMSDE SHAREPOINT database upgrading to SQL Server 2nd Word creating workspaces 2nd using document libraries adding document properties adding documents approving/rejecting documents changing library template creating new documents discussing documents enabling emailed submissions linking and publishing custom properties linking documents to libraries making revisions privately responding to events searching for documents WordPad, opening manifest.xml file workbooks adding to existing SharePoint site importing lists into existing importing shared lists into existing workbooks (continued ) importing shared lists into new publishing as web page shared sharing adding documents adding members assigning tasks checking files in and out controlling updates opening shared workbook reconciling changes and viewing history sending and receiving alerts using Shared Workspace task pane stored in shared workspace, removing sharing workgroups, network based on workspaces creating adding documents from a home page from document in library from Office creating from document library creating from Excel in VBA deleting for finished document document creating 2nd libraries vs enabling anonymous access to specific libraries vs meeting 2nd creating 2nd linking to publishing document back to its library shared opening workbooks in removing sharing from workbook site definition files wppackager.exe (Web Part Packager utility) Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Z] XDown tool (InfoPath) XML NET support for form data files, changing to HTML InfoPath form creation tools XML files data stored in form libraries Internet Explorer Tools for Validating SPTHEMES.xml file template custom site definition debugging site definitions elements in list definitions list templates list view definition opening manifest.xml WebTemp.xml, editing XPath expressions Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Z] zip files, replacement by SharePoint ... server can have its own domain name For example, www.usingsharepoint.com and www.mstrainingkits.com are hosted on the same SharePoint server animal 1-5 Adding members and setting permissions from a web page in SharePoint. .. Upgrading to SQL 2000 Upgrading to Portal Server Recording Settings Installing and Configuring Portal Server Re-Extending Existing Sites Connecting Sites to the Portal Adding Links to the Portal Upgrading from Team Services... and those of O'Reilly, Microsoft, and Google, here are some otherSharePoint resources: The newsgroups microsoft. public.windows.sharepointservices and microsoft. public.windows.sharepointservices.development