About a week ago I was asked if it was possible to save the information from a hand drawing Orgchart (one done without the wizard). The simple answer was yes, but with a few caveats. It would not be an easy task to extract all the information from the diagram.
Visio allows the user two views of their diagram; the one most people are familiar with is the one that appears on the screen or the printed page; the second is what a program can “see” of the drawing through automation. What may appear logical in the diagram, may not actually be the true representation. For example, the ethernet shape in the network stencil has only eight connection points. By dropping a second ethernet shape on top of the first, it appears that there is a single ethernet shape with sixteen connection points. From the automation side, there would still be two seperate ethernet shapes.
So here are some guidelines for creating Visio diagrams, not necessarily orgcharts, so that they are more automation friendly.
The first suggestion is to standardize on the shapes. It is a lot easier for an automation routine to understand a drawing if all similar shapes have the same master. For example, most diagrams contain extra shapes in addition to the ones used for the connected diagram. There may be legends, title blocks, side comments and company identifiers. Thses shapes can be identified by the fact that they are unconnected, but it would be easier if the automation routine was looking for specific shapes.
Background pages would reduce the number of unconnected shapes on the foreground pages. It would add consistency to the drawings by making sure that common information appears in the same location on each page.
If you are creating your own shapes, keep them as simple as possible. Do not avoid grouped shapes, but make sure they are necessary. Each group shape is a collection of shapes and once one is found, this new collection of shapes has to be processed. Most shape features (connection points, custom properties and various geometry sections) can be contained in a single shape. The only real need for grouping shapes is to add secondary colours, line formats or text blocks.
One of the caveats on the drawing I saw was how was it possible to extract the name and position as seperate items from the OrgChart. Luckily in the example, though the two pieces of information are in the same text block, each had a different format (One was in bold). Using the Characters collection in Visio makes it possible to seperate the two strings. If starting from scratch, it would have been easier to use custom properties and reference the custom properties from the text block.
When connecting shapes, make sure the connection goes to the connection point on the logical shape. I have seen some shapes that appear to connected, but in fact, the free end of it’s connecting line is just sitting near one of the other lines. In another example, a group of vertically stacked individuals appear to be connected to a supervisor, but in fact each shape is connected to the shape above it rather than to the logical shape, the supervisor.
Connecting lines are 1-d shapes and have a beginning and an end. Be consistent as to whether the supervisor is at the beginning or the end of the line. I’ll leave it to the academics as to which one it should be.