We get up early so that you don't have to. |
dtsdoc 1.0.0, $39.95
Logica2
http://www.dtsdoc.com/document-sqlserver-dts.html
One of the joys of developing software is documenting what you've done, and somehow a few things always seem to fall through the cracks. Around here, keeping track of the contents of SQL Server 2000 DTS packages has always been one of the troublesome areas of documentation, which is why I was happy to see dtsdoc come out last week. I got hold of a copy and put it through its paces, and while the 1.0 release still has a few rough edges, it's definitely going to save me more than enough time to justify its purchase price.
Using dtsdoc is very easy. First, you point it at the package you want to document, either by logging in to your SQL Server or by browsing through the file system. Once connected to a server, you can get a list of all packages on the server and pick the one you want to document. The utility didn't have any trouble finding packages, and the user interface is attractive and easy to follow. Next, you set your output options. dtsdoc works by generating an XML representation of the DTS package and then applying an XSLT transform to prettify it; you select the transform from a list (in the 1.0 release, this is limited to a single transform that produces nice, if somewhat plain, HTML, though there's no reason you couldn't add your own options) and you can optionally save the raw XML as well. Press a button, wait a bit, and your documentation appears. There's also a command-line version in case you want to make documentation part of an automated process.
The documentation itself captures everything you might need to know to rebuild the package in case of disaster: the package properties, steps, connections, tasks, and global variables. Everything is presented in text and tables; if you did have to rebuild, you'd need to figure out what the graphical view looked like yourself, but that shouldn't be a big nuisance. I ran it through our production servers and only had one problem, on a huge file system package containing multiple versions of several very complex DTS packages, which dtsdoc was unable to document. Everything else worked perfectly.
There's room for a bit of improvement here (I'd like more templates, and of course I'll be sending the problem package over to Logica2 for a diagnosis), but compared to having no documentation at all, this is a great investment. It's easily saved $40 worth of my time already. You can download a trial version that inserts some random strings in the output.
Mike Gunderloy is the lead developer for Larkware and author of numerous books and articles on programming topics.
Published April 3, 2006