Depending on your requirements there are 2 methods of accomplishing the automatic generation of proposals, contracts and any document that is frequently updated with variable information.
Method 1 – User Input Form
- If you have defined fields (client name, address, proposal number, etc.) that always populate your documents a data input form is the best approach. These forms can include pop-up calendars, drop-down lists, radio buttons and check boxes. Each field, button or check box can also contain logic based on what is selected or checked. With this method you enter the information into the form and press the Generate Document button and all values will be passed from the form into the assigned fields in the template. Document fields can be repeated any number of times in the document or headings and be updated with a single click. The logic based on selections on the form can control which paragraphs or sections of the resulting document will be created, deleted or modified.
Method 2 – A Combination Excel & Word Solution
- Should your project require frequently changing fields or if there are many fields I’ve developed a simple and totally flexible approach using Excel and Word. With this approach you can set up any document to be populated with the field values entered into Excel. This method is extremely easy to learn and use and totally flexible to your needs now and in the future. Sold as a package solution for $500 for 1-5 users including a 15 minute training session via a web meeting. Enterprise license agreements for larger organizations can also be arranged. Additional code can be developed to bring over entire table ranges from your Excel file into your Word template in defined locations, contact me to see a demonstration of how this could work for you. Change the data, click and DONE.
Watch this short video to see how easy this process can be.
var _gaq = _gaq || ;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script'); s.parentNode.insertBefore(ga, s);