Contact DDS

Analyse our Blueprint

PDF Print E-mail

After quite a bit of effort, we should now have a tracking document or blueprint that lists "close" to every variable and condition we are going to need to produce our document assembly system. I have created a dummy excel file (2002 format) which is an extract from a system I built quite some time ago. You can download this file here. Please be sure to save this to your computer, rather than opening it inside your browser.

Looking At Our Blueprint

This is not a complete system. It is an extract of a debt recovery system which was designed to produce a specific number of claims for a specific client base. The design was to ensure that once the documents were produced, the only proof reading required was to read a data-extract to confirm the data was entered correctly. The extract deals with the following:

  • Rows 2-11 Master computations and variables that "ran" the whole system, usually pulling other computations and variables to make calculations
  • Rows 13 & 14 A help dialog to allow users to "single click" to ASIC's name search page, so they could at least ratify name & ACN/ARBN details supplied by the client were correct.
  • Rows 15-24 The "Overview" dialog, where a user gave answers that guided the rest of the interview - "top level" decisions if you will
  • Rows 25-42 The "Content" dialog, which was all the actual "data" in a given claim. This dialog was highly dynamic (refer rules column), and only ever showed 3-5 variables, depending on which client and claim were selected.
  • Rows 44-53 The "Invoice Schedule" dialog. My client routinely drafted schedules as part of their pleadings, so, I programmed it. They had the option to specify they wanted "a schedule", then a further option to state they only wanted a payments schedule, or a full schedule.
  • Rows 54-87 The "Figures" dialog. This contained all the numeric data associated with the claim, that was to be used in automatic calculations. If I were to design this system today, this dialog & variable listing would be substantially changed

Using the Blueprint

It may take a while to be able to visualize the spreadsheet as a series of dialogs in HotDocs however, with a little practice, it becomes very natural indeed.

Sorting Analysis

Column A is a sequence of numbers. The reason for this is that you can sort your variable list however you want, and will be able to restore it by sorting on column A. For example, you may wish to alpha sort by Column C and Column D to ensure your variable naming has been consistent and without duplicates. Another example is letting excel help you create your dialogs! How you ask? Imagine this list before you have listed what variables belong to which dialog. You could sort by "Prefix" and "Var Name" - if your variable naming was consistent, you should get a very nice variable grouping list. At this point, you can see all variables grouped together by their prefix and then by the variable name. In the excel example, this wont work so well, because it ALL deals with the CLM series - the claim. When building complex systems, I will routinely use a "sub grouping" column for this exact reason: groupings within groupings.

Filtering Analysis

One of the largest benefits to this approach is Excel's ability to "auto-filter". Auto-filtering is enabled when you can see a small drop down box with a triangle pointing down on the top row. This option is toggled in Data -> Filter -> Auto filter.

With auto-filtering, we can minutely scrutinize our list of variables and dialogs. We could filter on "DLG Name" for all blanks to get a list of variables we have not associated with a dialog. Or on "type" to view a list of all variables that have a name, but not a type! Or, if we wish to get tricky, a double filter: "Type" = MC (selected from the drop down list) and "Options" = (Blanks) (selected from list). Or, if you want to get really tricky, use a custom filter with an auto-filter:

  • In the "Type" Column, click the drop down and select "Custom"
  • In the custom filter box that appears, select "does not equal" which is the 2nd option in the first list
  • In the second list, select "CO" then click "OK"
  • Click the drop down in the "Prompt" column. Scroll right to the bottom and select the (Blanks) option

This is telling excel you want a list of all rows where the Type is NOT "CO" (i.e.: not a computation) AND you want to further filter that list for all variables without a prompt (because CO variables do not have prompts...).

Any time excel is being auto-filtered, the row numbers will appear in blue. Furthermore, the columns that have filters active will be marked with a BLUE triangle instead of black. If at any time you feel you have "screwed up" your filtering (or couldn't be bothered resetting multiple filters), simply turn it off and on again to clear all filters.

Why There is a Prefix, Var Name and Type Columns

Auto-Filtering!!! If we put our entire variable name into a single cell, it wouldn't help us very much at all. With the 3 parts of the variable name in individual cells, we gain much greater control and analysis capabilities. In small systems (say, 100-200 variables) this wont make a huge difference. If you are dealing with systems that contain 500 or 1000, this ability becomes a real time saver.

But How Does This Help Create Systems?

Well, so far, we've combined our document variations into our master templates, and recorded every variable needed by the system. We've looked at how Excel can help us analyse this collection of data intelligently and efficiently. This has already assisted us hugely in reducing duplicate variables, affirming constant variable naming, dialog grouping, listing of all rules in a single place for dialog scripts and many other ways. The next post will deal with how we use this to create a master template for the entire HotDocs library, as well as a single component file that every template will point to.