| About the Authors | p. xv |
| About the Technical Reviewer | p. xvii |
| Introduction | p. xix |
| Introduction | |
| Office Business Applications | p. 3 |
| Microsoft Excel Solutions | p. 7 |
| Microsoft Word Solutions | p. 8 |
| Microsoft PowerPoint Solutions | p. 8 |
| Microsoft Outlook Solutions | p. 9 |
| Microsoft InfoPath Solutions | p. 9 |
| Conclusion | p. 10 |
| Development-Environment Requirements | p. 10 |
| SharePoint Products and Technologies: Overview and New Features | p. 13 |
| History of SharePoint Technologies | p. 13 |
| Windows SharePoint Services v3 | p. 15 |
| ASP.NET 2.0 Foundation | p. 15 |
| Repository Enhancements | p. 19 |
| Deployment Model Based on "Features" | p. 22 |
| Site Enhancements | p. 23 |
| User Interface | p. 25 |
| Workflow | p. 26 |
| Microsoft Office SharePoint Server 2007 | p. 27 |
| Portal Enhancements | p. 28 |
| Search | p. 29 |
| Content Management | p. 31 |
| Business Process | p. 33 |
| Business Intelligence | p. 34 |
| Further Reading | p. 36 |
| Microsoft Office 2007 Overview for Developers | p. 37 |
| History of Microsoft Office Development | p. 37 |
| Why Developers Should Care About Office | p. 38 |
| Development Opportunities with Office 2007 | p. 38 |
| The Open XML File Format | p. 39 |
| Using Managed Code | p. 47 |
| Further Reading | p. 50 |
| Visual Studio Tools for Office Overview | p. 51 |
| History of Visual Studio Tools for Office | p. 51 |
| Versions and Compatibility | p. 54 |
| Developing with VSTO | p. 56 |
| Add-Ins | p. 56 |
| Ribbon Customization | p. 58 |
| Task Panes | p. 60 |
| Outlook Form Regions | p. 62 |
| Document-Level Projects | p. 65 |
| Further Reading | p. 66 |
| Microsoft Excel Solutions | |
| Maintaining Offline List Content from Multiple Sites | p. 69 |
| Real-World Examples | p. 69 |
| Solution Overview | p. 70 |
| Solution Walkthrough | p. 71 |
| Creating the Projects List Definition | p. 72 |
| Creating the Excel Smart Document Project | p. 77 |
| Designing the DataSet | p. 78 |
| Detecting Internet Connectivity | p. 80 |
| Constructing the Actions Pane | p. 80 |
| Maintaining the List of Site Connections | p. 83 |
| Constructing the Synchronization Interface | p. 86 |
| Architecting the Synchronization Process | p. 87 |
| Getting the Data on the Spreadsheet | p. 94 |
| Using the Tool | p. 95 |
| Building Visualizations in Excel | p. 96 |
| Running in Excel 2007 | p. 96 |
| Considering Deployment Options | p. 97 |
| Important Lessons | p. 98 |
| Extension Points | p. 99 |
| Further Reading | p. 100 |
| Integrating Spreadsheets into the Enterprise | p. 101 |
| Real-World Examples | p. 101 |
| Solution Overview | p. 102 |
| Solution Walkthrough | p. 102 |
| Introducing the Spreadsheet | p. 103 |
| Setting Up an External Source: Products Database | p. 105 |
| Setting Up an External Source: Shipping Web Service | p. 107 |
| Constructing the UDF Class | p. 108 |
| Deploying the UDF Class and Registering It for Use in Excel | p. 114 |
| Enhancing the Spreadsheet | p. 115 |
| Preparing Excel Services for the Spreadsheet | p. 118 |
| Publishing to Excel Services | p. 119 |
| Integrating the Spreadsheet into a Custom Application | p. 122 |
| Important Lessons | p. 125 |
| Extension Points | p. 126 |
| Further Reading | p. 126 |
| Microsoft Word Solutions | |
| Merging SharePoint List Data into Word Documents | p. 129 |
| Real-World Examples | p. 129 |
| Solution Overview | p. 129 |
| Solution Walkthrough | p. 130 |
| Creating Content Types | p. 130 |
| Building the CustomerDocuments Feature Project | p. 133 |
| Defining the Feature | p. 135 |
| Deploying the Feature | p. 140 |
| Building a Custom Application Page | p. 143 |
| Using a Custom XML Part in a Document Template | p. 146 |
| Performing the Merge | p. 151 |
| Important Lessons | p. 154 |
| Extension Points | p. 154 |
| Further Reading | p. 155 |
| Working Collaboratively with Document Fragments | p. 157 |
| Real-World Examples | p. 157 |
| Solution Overview | p. 158 |
| Solution Walkthrough | p. 100 |
| Creating the XML Schema | p. 159 |
| Applying the Schema to a Document | p. 160 |
| Examining the Document's XML | p. 163 |
| Building the Document Section Feature Project | p. 165 |
| Defining the Feature | p. 167 |
| Deploying the Feature | p. 172 |
| Building a Custom Application Page for Splitting | p. 174 |
| Examining the Splitter Class | p. 178 |
| Building a Custom Application Page for Merging | p. 180 |
| Examining the SectionMerge class | p. 181 |
| Important Lessons | p. 182 |
| Extension Points | p. 183 |
| Further Reading | p. 184 |
| Microsoft PowerPoint Solutions | |
| Extending PowerPoint to Build a Presentation Based on Site Content | p. 189 |
| Real-World Examples | p. 189 |
| Solution Overview | p. 190 |
| Solution Walkthrough | p. 190 |
| Creating the Project | p. 191 |
| Ribbon Customization | p. 191 |
| Architecture of the Task Pane and Wizard Step User Controls | p. 195 |
| Important Lessons | p. 208 |
| Extension Points | p. 208 |
| Further Reading | p. 209 |
| Building a Presentation Server-Side within a Web Part | p. 211 |
| Real-World Examples | p. 211 |
| Solution Overview | p. 211 |
| Solution Walkthrough | p. 213 |
| Setting Up the Team Site and Content | p. 213 |
| Creating the Presentation Template | p. 214 |
| Creating the Web-Part Project | p. 215 |
| Basics of the DynamicPowerPoint Web Part | p. 217 |
| Deploying the Web Part | p. 220 |
| Debugging the Web Part | p. 222 |
| Overview of Office XML Formats and PresentationML | p. 223 |
| Iterating through the Template | p. 225 |
| Building the Title Slide | p. 228 |
| Building the Slide for Hardware Issues | p. 229 |
| Building the Slide for Software Issues | p. 232 |
| Important Lessons | p. 234 |
| Extension Point | p. 235 |
| Further Reading | p. 235 |
| Microsoft Outlook Solutions | |
| Working with Email Messages and SharePoint | p. 239 |
| Real-World Examples | p. 239 |
| Solution Overview | p. 239 |
| Solution Walkthrough | p. 240 |
| Creating the Outlook Add-in Project | p. 241 |
| Building the Custom Task Pane | p. 241 |
| Customizing the Ribbon Interface | p. 243 |
| Managing the Task-Pane Instances | p. 249 |
| Retrieving the Document Libraries | p. 251 |
| Saving the Email Message | p. 254 |
| Important Lessons | p. 259 |
| Extension Points | p. 259 |
| Further Reading | p. 260 |
| Surfacing Data from Line-of-Business Applications | p. 261 |
| Real-World Examples | p. 261 |
| Solution Overview | p. 262 |
| Solution Walkthrough | p. 263 |
| The Sample LOB Database | p. 263 |
| Constructing the BDC Application Definition | p. 266 |
| Configuring the Profile Pages | p. 273 |
| Testing in a Team Site | p. 274 |
| Building the Custom Web Service | p. 275 |
| Deploying and Testing the Web Service | p. 278 |
| Building the Outlook Form Region | p. 279 |
| Deploying the Form Region | p. 284 |
| Important Lessons | p. 286 |
| Extension Point | p. 287 |
| Further Reading | p. 287 |
| Microsoft InfoPath Solutions | |
| Taking InfoPath Forms to the Web | p. 291 |
| Real-World Examples | p. 292 |
| Solution Overview | p. 292 |
| Solution Walkthrough | p. 293 |
| Understanding the Cross-Domain and Multi-Hop Problems | p. 293 |
| Creating the InfoPath Solution | p. 296 |
| Setting Up the Database-LoanData | p. 300 |
| Creating the Web Service | p. 302 |
| Connecting the Form to the Web Service | p. 307 |
| Deploying the Template to Office Forms Server | p. 310 |
| Debugging and Testing Managed Code in Visual Studio | p. 313 |
| Integrating Security and SSO | p. 314 |
| Hosting the Form in ASP. NET | p. 316 |
| Web-Part Hosting | p. 319 |
| Extension Points | p. 322 |
| Further Reading | p. 322 |
| Incorporating Workflow into Forms Processing | p. 323 |
| Real-World Examples | p. 324 |
| Solution Overview | p. 324 |
| Solution Walkthrough | p. 326 |
| Understanding Workflow in SharePoint | p. 326 |
| Understanding How WSS 3.0 Processes Workflow Activities | p. 328 |
| Creating the LoanWF Test Environment | p. 329 |
| Creating the Workflow Template | p. 331 |
| Adding Error Handling | p. 342 |
| Creating the Custom Task Form | p. 344 |
| Deploying the Workflow | p. 348 |
| Attaching the Workflow to a Forms Library | p. 351 |
| Testing and Debugging the Workflow | p. 352 |
| Extension Points | p. 353 |
| Further Reading | p. 353 |
| Conclusion | |
| Realizing the Vision | p. 357 |
| Viewing SharePoint as a Set of Services | p. 358 |
| A Real-World Example | p. 360 |
| Tools to Support the Development Environment | p. 360 |
| SharePoint Solution Generator | p. 360 |
| Enterprise Content Management Starter Kit | p. 361 |
| Windows SharePoint Services 3.0 Tools: Visual Studio Extensions | p. 362 |
| Business Data Catalog Application Definition Generators | p. 363 |
| Looking Ahead | p. 363 |
| A Thank-You | p. 364 |
| Index | p. 365 |
| Table of Contents provided by Ingram. All Rights Reserved. |