The Microsoft Office suite of applications can be manipulated by
another application, or used as the host environment for a program
that extends the application's capabilities.
Microsoft Office applications support the Automation interface,
which means that other programs can use the functionality of the
applications. For example, a program could take advantage of the
printing or formatting capabilities of Word, use the graphing facilities
of Excel, or open reports stored in an Access database.
Using MS Office as a component of a system saves development time
becase complex functionality doesn't have to be written from scratch,
and also offers the reassurance that the functionality has been
thoroughly tested. With a large amount of company data stored in
Access databases, Excel spreadsheets and Word documents, there is a
strong argument for writing systems that report directly from
this data, or can even be run from within the Office application.
MicroMac recently had the requirement of automating an operation
that depended heavily on a library of technical documents created
using Word. To achieve this the the structure of the documents
was formalised, so that they could be submitted to a database, but
could also continue to be edited using Word.
This functionality was implemented using a Word Add-In that
displayed the submitted documents. The program also provided an
interface to perform tasks such as re-generating the documents from
the database for further editing, or printing documents with
bar-code information for the automation of subsequent tasks.