Developing for Office 2007

SharePoint and Groove

This article was originally published on DNJ Online
DNJ Online
This article was originally published on DNJ Online
DNJ

Working with SharePoint

One of the things you notice as you start to use the Office 2007 applications is the presence of ‘Finish' and ‘Publish' options on the new file menu, alongside the more usual ‘Save' and ‘Print'. Explore further and you will discover that the Publish option allows you to ‘Save to a Document Management Server' and ‘Create a Document Workspace'.

These are present because Microsoft has realised that, for most organisations, documents are rarely stand-alone pieces of work but more often part of a workflow. Orders are checked, fulfilled, billed and paid. Presentations may be drafted, amended, approved and distributed. With 2007 Microsoft Office system, much of this can be automated.

The key to this is Microsoft Office SharePoint Server (MOSS) 2007. SharePoint Server is essentially a set of pre-built and highly customisable ASP.NET applications that sit on top of Windows SharePoint Services and SQL Server. Windows SharePoint Services (WSS) 2.0 ships as part of Windows Server 2003 R2 or can be downloaded free of charge from the Microsoft Web site, and underlies SharePoint Server 2003. SharePoint Server 2007 is built on top of WSS 3.0 and can work with either SQL Server 2000 or 2005.

WSS is primarily a document store, providing version and access control and exposing a rich object model. It comes with a Collaboration application which delivers an ASP.NET Web site that supports document tracking, discussions, shared calendars, email integration and presence (notifying you of the current status of the users). MOSS 2007 adds further applications implementing enterprise content management (replacing Content Management Server 2002), personalisation, search, business process integration (including support for BizTalk Server) and business intelligence through KPIs (Key Performance Indicators) and Dashboards.

A SharePoint site is most usually used to coordinate a team of people, either working in a single organisation or loosely connected through an ‘extranet'. A SharePoint site is controlled by a Site Definition: an XML document that describes how the site should behave. Site Definitions are configured through browser-based administrative pages, however individual users are usually given considerable control over the site that is delivered to them. After all, these are ASP.NET 2.0 applications which can make full use of .NET Personalisation and Web Part technologies. SharePoint sites support a SafeControl list which identifies Web Parts that can be added to the site by end users.

SharePoint opens up a wide range of options for software developers. Site Definitions can reference custom Web pages, Web Parts, workflow assemblies (Windows Workflow Foundation is hosted by WSS 3.0) and custom event handlers, all of which you can create using Visual Studio or the new Office SharePoint Designer 2007 which replaces FrontPage and includes a workflow designer.

MOSS 2007 also comes with a number of Shared Services that can be referenced by SharePoint sites. These include not only indexing and search services, but also Excel Services which can render an Excel document saved to SharePoint as a Web Part (called Excel Web Access) and as a Web service that can be accessed by your application. This is accompanied by InfoPath Form Services which renders InfoPath forms as HTML. Indeed InfoPath forms can become an integral part of your workflow as they are also able to access XML data held within Word, Excel and PowerPoint documents thanks to the Open XML file format.

In the Groove

And finally there is Office Groove 2007. Although new to the Office system, Groove has been around since 2000 when Ray Ozzie's company Groove Networks shipped the first beta version. Microsoft bought Groove Networks last year and Ray Ozzie has now replaced Bill Gates as Microsoft's chief software architect.

Groove takes a peer-to-peer approach to collaboration, in contrast to SharePoint which is a client/server solution. Using Groove you create workspaces on your desktop which you can invite other people to join. Once they accept your invitation – and if necessary install their own copy of Groove – the workspace is duplicated on their desktop, and from then on each copy of Groove endeavours to keep each copy of the workspace up-to-date by transmitting encrypted ‘deltas' between members that contain just the information that has changed.

If you go off-line then you can continue to work with your copy of the workspace, although obviously it can't synchronise with the other copies until you connect back to the Internet. This is done through a central Groove relay service that provides a ‘store-and-forward' service.

The Discussion tool in Groove 2007

Groove comes with a number of workspace ‘tools' ready-built that support not only file-sharing but also discussions, shared calendars, meetings organisers and so forth. However it also has a built-in forms designer where you can build tools specific to your needs. Alternatively, new to Groove 2007, you can import forms created by InfoPath 2007.

This article can only briefly introduce the many possibilities opened up for the software developer by this new version of Microsoft Office. Although unlikely to be released for some time yet, it is certainly worth downloading the current betas of Office 2007 and VSTO ‘Cypress' or ‘v3' and getting yourself ahead of the game.

You might also like...

Comments

Contribute

Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“Anyone who considers arithmetic methods of producing random digits is, of course, in a state of sin.” - John von Neumann