Word and Excel Data Islands

Two recent posts from Paul Cornell and Eric Carter show off the extremely impressive looking data island features of the upcoming Visual Studio Tools for Office 2.0. Microsoft has taken what is probably the most common automation scenario for Word and Excel documents and crafted a nearly perfect solution. Behold:

  • Word and Excel documents will be able to contain data islands that will work equally well in both connected scenarios (data is retrieved from the server at runtime) and disconnected scenarios (data is embedded in the document instance and never connects directly to any server).
  • The data islands will be able to implement caching behavior such that the latest query results from the server can be retained within the document itself just in case the document find itself in a disconnected state (ie on an airplane) the next time it is opened.
  • The data islands can be created or updated from .NET code running on the server without requiring Office to be installed. Presumably, you'll just need to drop a small redistributable .NET DLL into your server-side bin directory and away you go.
  • All of the above features will enable the creation of data-driven reports that can be 1) populated from a server-side web process, 2) downloaded and viewed by users that don't have any direct access to the data source and 3) have their data islands modified and re-uploaded by the user. Any changes can then be committed back to the data store via server side code.

Although it's technically possible to implement some of these features today by autogenerating and/or manipulating the new Word and Excel XML formats directly from server-side code, these new VSTO features will enable developers to create much more robust solutions with only a fraction of the effort required today. This is super-impressive looking stuff... read on for the full details:

Offline and server-based Office document scenarios
VSTO 2.0 and Cached Data: Goodbye Hidden Sheets, Hello Server!