We write directly to the Database on the bigger problems. We have a lisp that creates a new project for us, inserting all of our sheets, most of the parts, including all of the PLC , on their proper pages. It took a lot of programming. For most of it, we are just inserting saved circuits, based on the selection the user makes when the program starts. We use DCL to build selection windows for all of the components.(power supplies, fans, heaters, Surge suppressors. etc.) , We use the parametric builder for the PLC stuff, but communicate directly with the Database to do that. We use a spreadsheet to populate the PLC data, which we can use repeatedly as the project gets modified. We can build a project of 20 sheets, including an 8 card PLC, in about 2 minutes, when it would have taken over a full day without the Programming.
autolisp is awesome, and when combined with all of the other tools, and a lot of time, It can save more hours than you can count, and reduce errors.