The HotDocs Computation Archive

0139 - Signature Block: Parallel Columns


How to create a repeated signature block with two parallel columns.


• Explanation •

Where a document will have a long list of signatories, having two signatures to a line can be much neater and more professional-looking. Accomplishing this with a HotDocs REPEAT, however, is very difficult since a REPEAT will only accommodate one item per line.

This template demonstrates a signature block that accommodates two signatures per line. This is an exceptionally nice model because it senses if a line will only have one signature on it, and automatically advances that signature to the right column.

•  •  •  •  •  •  •

SET signCounter-n TO 1
REPEAT Dialog::::oddOnly-f
IF signCounter-n < COUNT( Dialog )
Name-tSET signCounter-n TO signCounter-n + 1END IF
Name-t [signCounter-n]SET signCounter-n TO signCounter-n + 1

• Explanation •

The above is provided to show what the signature block table looks like when coded. Table lines are left in place to show where the cells are. Normally table lines would not be displayed. The two key elements of this scheme are a temporary number variable called signCounter-n and a filter (computation variable) called oddOnly-f which contains this script:


The logic is a little bit difficult to explain. In a nutshell, our filter only lets odd-numbered items pass in our REPEAT. These will normally go on the left side. We then place the even-numbered items manually using our custom counter signCounter-n. If a particular row will only have one item on it, that item will appear in the right column.

The scheme is a bit complicated but works nicely. The model template below has a working version you can experiment with.

•  •  •  •  •  •  •


• Model Template •

This template has everything you need set up and configured for you. It will work as-is, or can be adapted to your variable and dialog names. It contains: 1) sample Word and WordPerfect templates (or an Automator form) to demonstrate an implementation of the computation, 2) a component file containing the computation and all supporting dialogs and variables, and 3) instructions for adapting the computation for your use.

(Go to the download page)


• Contributors •