Evolving Beyond VBA and VSTO to a True Document Assembly Platform
While large enterprises may follow any number of evolutionary paths towards the ultimate destination of industrial-grade document assembly (document automation), one of the most common includes a pit stop in Visual Basic for Applications (VBA) or possibly in Visual Studio Tools for Office (VSTO), a more highly evolved Microsoft technology already in use in IT departments committed to Microsoft’s .NET framework.Both environments enable practitioners to build document automation characteristics into Microsoft Word documents.
A common scenario is as follows:Some manager in some department within some enterprise, who is responsible for generating, let’s say, complex, commercial lease agreements, finally gets fed up with the cost of generating the agreements or the seemingly endless problems that result from human error. To improve the situation, the manager decides to begin systematizing the process. The first step may be something as simple as attaching a checklist to each lease agreement, showing that the major steps, such as searching and replacing old names with new ones, have been completed in the Word document before printing.
At some point, someone may suggest that keystroke macros could be employed to further streamline the process. Once an enterprise begins down this path—building automation features into a Word document—the logical next step is to begin writing scripting logic into the macros. Sounds simple, but the reality is that keystroke macros can be written by pretty much anyone, while scripting within a keystroke macro is the domain of software engineers having proficiency with VBA or VSTO.
Given the vision, which the manager and everyone else finally sees—a near failsafe document assembly system that will generate the sophisticated lease agreements in a fraction of the time for a fraction of the cost with a fraction of the exposure—the manager pushes through the pain and convinces the IT department to dedicate an engineer to the project. One engineer turns into two as a determination is made to automate other documents, and so on.
The problem is this kind of software application—document automation/document assembly—is extremely volatile, and any number of factors, including changing laws, could dramatically affect the applications, thus requiring reengineering.At some point, the company, which has now spent a fortune on building and maintaining VBA-based document assembly applications (or as the case may be, VSTO-based applications) begins to view the project as a trip down the proverbial rabbit hole.
The fact is while both VBA and VSTO are powerful engineering environments that will allow you to automate MS Word documents, both are general technologies and neither comes equipped with a litany of basic features that any document assembly system needs, such as answer file management and a robust list of prebuilt functions for quickly doing countless, necessary document assembly tasks.
In the end, such companies, beleaguered by the process of automating Word documents with VBA/VSTO but still compelled by the vision, find their way to HotDocs, the gold-standard for enterprise-grade document assembly/document automation technology.