< Back to White Papers

Reporting Software Evaluation Checklist

The right questions to ask when considering a reporting or document generation solution.

Download the full White Paper

Let’s Get Started!

You’ve identified a need for a new reporting component for your company or product. Now what?

Evaluating reporting software can be a complex process. Vendors make many of the same claims (“We’re the easiest to use, our output is the most flexible, our customer support is the best” – do these sound familiar?) but those claims can’t tell you whether their reporting or document generation software will become your competitive advantage.

For this reason, we’ve created a checklist to assist you in getting to the crux of the matter: determining which specific solution is the best one for your unique situation.

This guide features a series of questions to ask yourself during each step of the evaluation process.

1. Your Business Reporting Needs

Sample Windward template for a trucking company

First, let’s establish a clear picture of your organizational setup,what you do on a day-today basis, and the needs of your customers or end users:

Your Organization
  • Do you need reporting that will be integrated into your own software offering (ISV)?
  • Is your business producing reports for internal or external use (or both)?
  • Does your industry mandate specific reporting standards?
  • How is your company’s data organized?
  • Have you already identified a list of reporting product requirements?
Your Role
  • How much technical knowledge do you have (e.g.,programming, database administration, etc.)?
  • How much time, if any, do you personally have to devote to reporting?
  • What types of data and how much of it are you responsible for reporting on?
Your Target Audience
  • Are they primarily located in one region or are they an international audience?
  • Do you offer your products for a specific industry or for a more generic use?
  • Does your customer base need a fixed volume of reports (e.g., very large or very small numbers) or will it need a scalable solution?

With these answers in hand, let’s move on to considering one of the most important criteria: how quickly and easily you can design templates.

2. Template Design & Ease of Use

Consider the types of reports your company or product generates and their current visual impact.Now think about how you’d ideally like those reports to appear.

Report Layout

  • Do your reports contain large chunks of data that would be best organized in highly configurable tables?
  • Do you need headers, footers and tables of contents to enhance multi-page documents?
  • Are charts and graphs the optimal format for displaying some of the information?
  • Do you want banded reports (where all of the images, charts, paragraphs of text, etc. appear in layers) or reports that will need to take advantage of free-form design?
  • Will you need to use text tools such as vertical text and preset styles in your templates?
  • Do you need “special” layout features such as barcodes, PivotTables, Microsoft® Office shapes,hyphenated text, etc.?
  • Do you have a large set of templates that you or a customer will need converted?
Research tip image

Template Design Platforms

In your evaluation, you should also try to assess how quickly you (or your end user) will be able to get up to speed on the reporting design tool or interface.

Of course you won’t know for sure until you actually use it, but here are some questions to consider once you’ve identified a potential reporting package:

  • How easy will it be to learn the design tool?
  • Is there significant training involved?
  • Have you used a similar program before?
  • Does the tool come with well-written documentation?
  • Is the interface clunky or intuitive?
  • Does it contain all the necessary features identified earlier, or will you need to spend time customizing the software to get the reports to look the way you want them to?
  • Will users have the ability to apply the tool effectively on their own or will they have to rely on others (e.g., the IT group) to design templates?
  • How time-consuming is it to edit templates?
  • How hard is it to convert older templates?
  • If the primary person in charge of system implementation leaves, how easy will it be to carry on with the reporting effort?

Sharing and Co-Creating Templates

  • Do teams need to work together on template editing and design, and does the package offer collaboration tools?
  • Can more than one person work on a particular template and are there additional costs for doing so?
  • Can more than one person view, run, edit and schedule reports?
  • Does each employee need his or her own user’s license?

RESEARCH TIP: Vendor samples can spark design ideas and will give you an idea of whether a reporting package is capable of generating the designs you’ve identified as best for your company.

Downloading a trial and experimenting with the samples will give you firsthand experience as to ease and flexibility of design.

3. Data & Database Connectivity

Getting your data into a report template is often one of the most confusing or elaborate processes in the report generation cycle.Help eliminate some of that confusion by asking yourself these questions:

  • What data sources can you use in your reports?
  • How many different data sources can you use atone time?
  • What types of data (e.g., XML, Big Data) can you include?
  • Does the package ensure data security?
  • Does the software allow you to filter data categories, easily sum totals, and perform other necessary calculations?
  • How difficult is it to learn how to use these data functions?
  • How does the report template itself handle your data? Does it have features you need such as built-in formulas for working with data?
  • Does the software include connection wizards?

REPORTING SOLUTION CATEGORIES:

  • Ones that require heavy coding to link to the data source
  • Solutions with features that eliminate coding,giving the end user the ability to insert data into reports
  • A hybrid mixture of the first two: they typically require an IT staff member to create the data placeholders, but also enable the business user to modify these placeholders.
Broad categories of reporting solutions

4. Production Speed

Granted, you don’t have a crystal ball. But after you’ve identified a reporting solution, try to answer these questions as best you can:

  • How long does it take to design a template?
  • How long does it take to add data to that template?
  • How long does it take to run the report?
  • How long does it take to modify a template and re-run the report?

And finally:

  • What sample performance metrics can the software vendor show me?

5. Scheduling & Sending Reports

Picture this: You or a customer generates a report and presents it at a staff meeting. Two weeks later, the boss asks for a copy of the updated report, ASAP. But there isn’t the ability to rerun the report because only a third party can do so.

With that scenario in mind, consider how you will need to generate ongoing reports:

  • Can you simply make a request with a button click to access an updated report or do you need to take multiple steps?
  • Does the solution have a built-in scheduler?
  • If so, how flexible is the scheduler?
  • Can you schedule reports to be automatically printed or sent via email?
  • Where are the reports stored?
  • How many iterations of each report can you store?

6. Output Formats

Keyboard with a Format key added in another color

Some reporting solutions offer only a couple of proprietary outputs, while others offer a much broader range.

  • What output formats, if any, do your report recipients (or customers) require?
  • Does the solution let you generate reports in digital formats that can be viewed but not altered?
  • Do your customers and employees need reports where they can analyze and manipulate subsets of the data themselves?
  • Are you generating letters, policies or other types of documents that must be printed first before being sent via snail mail?
  • Are your customers or colleagues receiving or sending reports via email?

7. Training & Support

Report showing graphs and charts

Training, professional services and ongoing day after-day costs aren’t nearly as exciting as flashy template design features, but they are important.

Vendor Communication

  • How accessible is the vendor?
  • What is the vendor’s customer service reputation (e.g., what do online reviews say)?
  • Does the vendor supply user references?

Documentation

  • What user guides, instructional videos, tutorials,and other documentation are available?
  • Are there additional fees for this documentation?

Samples

  • Does the reporting program include sample reports?
  • Do the samples show you how to accomplish your design goals?

Initial Training

  • What kind of training does the vendor provide?
  • Will the vendor walk you through a training session, and is its staff available to answer questions by phone or email?
  • Does the vendor hold online seminars where users can ask questions and learn from other users?
  • Once someone in your organization is versed in a product, how much time and energy will he or she spend teaching others how to use it?

User Communities / Forums

  • What user groups are available?
  • How is information shared in these groups?
  • How well are user questions answered and issues resolved?

Technical & Ongoing Support

  • What support packages are offered and at what charge?
  • What free support options exist?
  • How available is the support team?
  • Is there a searchable knowledge base?
  • How does the vendor handle ongoing support?

8. Infrastructure & Cost

And finally, we come to the price tag. It’s impossible to determine in advance exactly how much a reporting solution will cost, but you can arrive at a fairly solid estimate when you look at the options, services and conditions that will affect your ROI (Return on Investment) and TCO (Total Cost of Ownership).

System Compatibility

  • Will the solution integrate into your current infrastructure or product?
  • What programming languages are required?
  • How long will it take to embed the solution into your software product (ISV)?

Scalability

  • Will the solution grow as your company does?
  • Does licensing change with increased output or number of users?

Implementation Costs

  • What will your expenditures be in terms of time spent and resources devoted to implementation?

Hardware and Software Costs

  • How much up-front investment will you need to make in software?
  • Will you need to upgrade any related software?
  • Will you need to buy or lease new hardware?

Administration Costs

  • How much will you spend in on going maintenance of the reporting solution?
  • Does this solution require a dedicated IT resource?

Why the Windward Solution?

At Windward Studios, we believe that reporting and document generation should be simple, that free-form template design is a must. You deserve attractive, informative and impressive reports. But most of the solutions companies build or are forced to rely on make it overly complex and tedious. Why can’t designing and generating reports be as simple as creating a Word document, Excel® spreadsheet or PowerPoint® deck? That’s the problem we set out to solve. Windward provides a unique experience using Microsoft Office to format and edit report templates. Windward delivers a solution (see below) that allows IT professionals to create basic templates and business users to customize those templates and create variations to meet their reporting needs. Behind the scenes, the sophisticated engine pulls data from multiple sources and merges that data into your reports, creating a hassle-free experience that can actually make generating reports fun.

Windward Designer and Engine graphic with output examples
The Windward Embedded Solution is ideal for anyone who needs to add Reporting and Document Generation functionality to their desktop, online, SaaS or mobile products. It’s as simple as embedding the .NET or Java Engine into your product, designing your template with AutoTag, which connects the Microsoft Office template with your data source, and delivering your documents in whatever format your users require.

Applying the Checklist to Windward

So, how do we rate? We’re happy to answer any or all of the questions above. Our responses include:

Simple yet flexible report design: Use all of the powerful features you already know in Microsoft Office, including charts, PivotTables,shapes, headers, footers, images and more.

Multiple data source support: Connect to as many data sources as you need in a single report, including Big Data, file-based data and most every data source.

Efficient report production: We move the template creation and modification from the IT department to the business professional.

Easy to embed: You can embed it into your new or existing software application in as little as 14 lines of code.

Flexible output generation: Reports at the click of a button, to the standards of your organization and customers: DOCX, RTF, PDF,HTML, XLSX, or even directly to your printer.

Abundant learning resources: We offer a website filled with samples, tutorials and product documentation.

Flexible licensing and pricing: Windward requires no hardware, and we offer a variety of cost-effective licensing options for SaaS, mobile,desktop and enterprise deployments.

Download the full White Paper

A Guide to Evaluating Document Automation & Document Generation Products

White Paper | June 2020
Download the White Paper

INTRODUCTION

This guide will walk you through how to determine which document automation solution and document generation product is best for you. No one product, not even ours, is best for all use cases.
This guide only discusses the document template design component. While just a part of any solution, this is generally the most important part as it’s where the lion’s share of users’ time will be spent and limitations in this restrict the types of documents that can be created. So find out how you can start building document generation systems from templates in this article.
DEFINITIONS

Document Automation (also known as document assembly) is the design of systems and workflows that assist in the creation of electronic documents. These include logic-based systems that use segments of preexisting text and/or data to assemble a new document.

Document Generation is the process of creating hundreds, thousands, or even millions of personalized and distinct documents for internal or external use from a single template. While Document Generation is a subset of automation, for some products (not all) you can’t get just the Document Generation component of a Document Automation solution.

Reporting Software is a subset of Document Generation. Reporting software can’t do documents. But Document Generation software easily creates reports.

Tags are elements placed in the automation documentation template (DOCX, PPTX, XLSX) that the docgen system acts on when generating a document. These tags can be data to insert, business logic rules to conditionally display or suppress content, and much more. Each vendor has their own term for “tags.”

NOTE:

Going forward, the word docgen will be used to stand for Document Generation system in this guide. When something is template based Document Automation system, the word docauto will be used.

THE DESIGNER - MICROSOFT OFFICE

Every modern docgen product uses Microsoft Office as the template designer. While you can find a few very old products that have their own designer, you want to limit your consideration to those built on Office as it is far superior.

Some document generation solutions work with Word, Excel, & PowerPoint while others are Word only. If you need Excel & PowerPoint, then obviously, go with a solution that supports them too. If you only need document automation tools using Word, think carefully if you might want Excel or PowerPoint someday in the future.

Again: if you go with a Word document automation solution, be very sure you won’t ever want Excel or PowerPoint. Ever!

Google Docs, Star Office, etc.

The docgen solutions that have a separate addin or no add-in can usually work with any Word processor that can save as a DOCX file. It all tends to work exactly the same. For a full Word clone, this can work every bit as well.

Google Docs in this case though tends to be problematic because Google Docs does not have the layout and formatting capability of Microsoft Word. Not even close. Your limit here is not the docgen app; it’s Google Docs. For most use cases, Google Docs is not up to the job.

CRITICAL FUNCTIONALITY

The following eight items are key to the success of the docgen solution you select. If any of these is a mismatch for your needs and requirements, you will at best have a lousy solution. And you could very well fail. Understanding how each aligns to your use cases is critical to your success.

DESIGNER ADD-IN

Some docgen solutions include an add-in to help you place & edit the tags in the template. These come in two flavors; one much better.

First, some automated document creation solutions have no add-in to assist in crafting tags. You usually end up with notepad open where you write all the various tags and you copy from there and paste into Word. And for special uses, you type in, from memory or other notes, the additional properties.

This “no add-in” approach is slow, painful, & error prone. If you have 5 templates, each with 5 tags – then no big deal. But if every month you’re creating 100 templates, each with 150 tags, you’re now in hell.

FROM OUR CEO

While Windward can legitimately claim to be a "no Add-In" solution for designing on platforms other than Windows - we find that approach so inferior, we state that we cannot be used for this use case.

We prefer to not get your business rather than provide you a significantly inferior approach.

Not only is it slow & expensive, but because it is a death march, designers will not put in the effort to make a business document template shine. They just want to be done.

The second approach (much better) is a second application (usually in a browser) that helps you write tags. You still have to copy & paste between this second app and Word, but the add-in provides all possible choices for tags and helps you write your queries.

Not all the side-by-side add-in approaches are the same. Play with each carefully to see how it works for you; not in simple sample cases, but in the more complex document templates you will need to create.

The third approach (best) is an add-in that becomes part of Word; adding additional tabs to the ribbon. This makes adding and revising tags a breeze because it works on the tag in the template. And while helping to write each tag, it can do so in the context of where it is in the template.

The incorporated add-in approach is by far the best in template based document generation. But by definition, it is limited to Office on Windows.

This add-in is one of the two features (the query wizard below is the other) that determines how much time your team will spend to design document templates, day after day, week after week, year after year. If one approach is 15 seconds longer, and you are going to create 500 templates each with just 35 tags (that’s low), that’s 73 hours.

CODE BEHIND

While all the Document Generation solutions require you write code to call them (docauto is a no-code solution so not an issue), some of them require additional code for each template. This is called “code behind.”

In some cases, this code behind is defining different data specifications, such as you now also need the hire date. For these solutions, you don’t need code for each template, but a fair number of times templates will require additional data, or data ordered differently, and you have a code change.

Even worse, some require code behind for each template. Therefore, each new template based document generation means additional code. This is a giant hit.

Why? First you have programmers involved in template design. That’s expensive and slows the process down. Second, each new template requires rebuilding your application and pushing it through test & staging.

The one advantage to code behind is the developers can build data on the fly as it’s needed, including data generated according to business rules within the code. But in almost all cases, doing so directly in the template, as opposed to in the code behind, is superior.

In other words, you want the template file to be everything.

DRAG & DROP DOCLETS

One (or several) users can create content for a template that are saved off. Then they or other users can drag those saved doclets to drop onto a template. This provides template designers a way to create very complex templates easily by dragging the needed components. It also eliminates repetitive tasks.
For each docgen app, evaluate their drag/drop on the following criteria:

1. How do you create a doclet?
The best solution is to select content in Word and save that as a doclet. If it's more restrictive than this, will those restrictions stop you from creating very useful doclets?

2. Does it bring the full formatting of the doclet into the document it is dropped into?
This is actually a very hard thing to do in Word if the doclet uses styles that exist in the template with the same name - but different settings.

3. What can be saved?
Just template content? Or can you also save datasources, parameters, and more? This is not as important, but it is still a timesaver.

4. After you drop is it complete? Or do you need to perform additional steps? For example, if a doclet uses a different datasource, is that datasource now also tied to the template?
Not that important, but nice to have.

5. Can doclets in a template be updated?
If a doclet is the company logo and the logo changed, can all the templates using that doclet be updated to the new logo universally?

The dropped doclets come in several flavors. The optimum are linked doclets where the content of the doclet is displayed in your template in full, fully laid out and formatted. And as it is linked, when the doclet itself is revised, that change immediately appears in your template and is used in every generated document.

Once you drop a doclet into your template, you can can adjust it any way you wish from formatting to tags in the content. But if the original doclet is changed, that change is not applied in your template. In some uses this is preferable when you don’t want changes applied to existing templates.

The third approach is there is a tag that will import the doclet. You don’t see the contents of the doclet in your template, but when the template is processed, it will pull the live copy of the doclet. This is valuable when you have a select that will determine which doclet to import. This is useful for cases like you need to pull in content based on the State the recipient of the document lives in.

The optimum of course is to have all three flavors available to use each as appropriate.

QUERY WIZARDS

Your most common activity creating templates will be writing the queries to select the data. You do this to select blocks of data such as all stocks you hold for a portfolio statement. You also do this for conditional logic in the template such as adding insurance requirements for an offer letter if they reside in California. Or when placing a name in loan papers.

Some docgen products do not have query wizards. With no wizards, then template creation is a developer-only task. And for developers, it will be slower. No wizards mean you can never turn template creation over to business users.

FROM OUR CEO

You will do this hundreds of times in complex templates. Thousands of times across all the templates. You want this to be quick & easy. This functionality, more than everything else put together, determines how much time you will spend designing templates, and how pleasant it is.

- David Thielen

When you evaluate different document creation automation solutions, have a business user use the system to craft the queries and see how well they do. They’ll be slow & hesitant at first. But it’s key to see if they can learn it and then be successful on their own.

In the case of conditional tags (if, switch, etc.) make sure it also works well on elements returned by other tags (usually the iterative tags). Because in this case, it’s not a query of the data, it’s a condition on data already returned.

Finally, keep in mind that no matter how brilliant the query wizards are, the user will also generally struggle with the structure of the data (the metadata). This can be displayed to the user, but they still need to learn what is where. Reducing what metadata is displayed, providing the descriptions for each node in the metadata, etc., can make the difference between a usable and unusable solution for business users.

MULTIPLE DATASOURCES

If you have a single datasource, then skip this section – you don’t care.

Ok, you have multiple datasources, for example Salesforce & Marketo. And you have documents you want to populate with data from each. In this case you must get a docgen solution that lets you have tags in a single template that are marked for which datasource that tag is to be applied to.

Some automate document generation providers implement this in two passes:  First applying all the Salesforce tags and then starting over and applying all the Marketo tags. This works fine if you are not intermixing the data.

Sometimes you need to intermix the data: for example, if your document lists all Account Executives (from Salesforce) and then within the data for an AE it lists the emails they were sent (from Marketo). Then you need a solution that processes all datasources simultaneously.

If you have multiple datasources, you almost certainly will eventually need the best automated document assembly software that processes multiple datasources simultaneously. If it’s not a must-have today, it probably will be a must-have in a year.

TAGS START & END LOCATION

Some tags have a start and end location, such as the if and forEach (iterative) tags. Generally, these are used to repeat or conditionally include a row in a table or a paragraph of text. All solutions do this.

But as time goes on and you create more advanced & complex templates, you will find yourself wanting to start the iteration in the middle of a table or an if that removes two cells and adjusts the table correctly.

In addition, you almost certainly will need a forEach (iterative) tag that adds columns in a table, as opposed to rows. You may want a column for each product or each month in a dataset. Finally watch out for any limitations on combinations. At the start you need a single forEach tag. A year later you are nesting five forEach tags within each other as it’s the only way to get what you want.

This is an area where it’s impossible to give guidance on what you may someday need. Your best bet is to select a solution that has no limitations on the start & end location.

OPTIONALLY HIDING CONTROL TAGS

For a simple template, this doesn’t matter (much). But as the logic expands in a template, you find that you are adding a lot of control tags. The most common are the iterative (forEach) and conditional (if) tags. But even a moderately complex template will also have numerous query and set tags along with several additional tags.

These tags, if displayed, pollute the template and enlarge the layout in the template. Usually you’ll find the template looks quite different from the final generated report. This makes it difficult to truly imagine the final document from the template. It’s frustrating to have to constantly run test documents to see what you’re going to get.

You’ll be much happier if the designer can at the click of a button hide or show the control tags. Show them when you’re working on the template logic. Hide them when you’re working on the final layout and formatting. This option will save you time and more importantly will make the design experience more pleasant.

Even on something as simple as this table, the ability to hide the control tags is a clear benefit.

IMPORTED TEMPLATES

The best way to use content across multiple templates is to have that content in a child template that the parent templates all import. These imported templates can be brought in as an explicit filename or as a data query that returns the filename.

Trust me: unless your needs are incredibly simple, you need this. You can work around it even if you repeat the same content in 100 templates, but you’re giving yourself too much extra work when wording changes due to company directives or legislation.

One critical detail on imports:  Does the system process tags in the imported child template? If all of your child templates are static text (legal clauses), then this does not matter. But if you need to include anything live (a person’s name, a date, a state of residence), then you need a solution that process tags in the imported child template.

Finally, for Word only, how does it handle style mismatches? If the parent has the Normal style set to Times New Roman 12pt and the child has Normal set to Verdana 10pt, then what should the child paragraphs be styled as? This can be a royal pain because different users never have their styles matching.

Some systems convert the child to the parent formatting. Some retain the child formatting. And some (best solution) give you the option of either. The option is best but if it’s forced one of the two ways, make sure the system you get works that way.

Not having the expected styling on output is guaranteed to get upper management upset.

IMPORTANT FUNCTIONALITY

One of these might be critical to your use case. Several might be useful. But in most cases, none is a must have. They do however provide a picture of the breadth of each product.

FUNCTIONS (MACROS) INCLUDED & CUSTOM

For the solutions that allow queries in the tags, you want one that also supports complex functions operating on the data. And not just simple functions like SUM() and COUNT() but most of what’s available in Excel. You will use Text and DateTime  a lot.

In addition, can you add your own functions? Adding custom functions is often a significant component of providing a simple & easy design experience to business users. It’s also a lot safer.  For complex calculations you write it once in the function and test it carefully. No worries about someone screwing it up writing it by hand in a template.

ACCESS PROVIDERS

All of the products (I believe) support reading files from BASIC, Digest, Negotiate, & Oauth2. But what about a special Authenticate & Authorize you created in your company for one set of files? Or something special to get to a JSON file from a REST service that is home grown?

First off, make sure the solution supports the standard protocols you use. You should get a yes. And if that’s all you have – fantastic; you can skip to the next section. If  you have a home-grown A&A. find out what needs to be done to have the system access it. This is a custom Access Provider. And make sure that the same Access Provider is used for reading data files (XML & JSON), accessing OData, and importing files (templates & pictures).

DOCUMENT LOCKING

If you want to create DOCX or XLSX files where an employee can then edit parts of it, this is incredibly valuable. For example, you are generating portfolio statements and the legal disclaimers and actual financial results must not be changed, but there is a paragraph where the financial advisor can write up more summarizing the performance.

In this case, some of the solutions will carry document locking in DOCX & XLSX (PPTX does not have this) over to the output. So, if the template has locked all except one paragraph, then the generated DOCX will be locked except for that one paragraph.

FROM OUR CEO

Having the document locking functionality tends to make your lawyers very very happy. It eliminates a source of serious legal liability.

- David Thielen

VALIDATION, ERROR & WARNING HANDLING

What is provided here is all over the board. And it’s difficult to get specific about what is most useful to you, as opposed to the next person. The best advice here is just look at what they have and try it out when evaluating.

One tool is validating a template. Not running it, but inspecting it and providing information on errors found. A second tool is to generate the document and deliver a list of errors and warnings. For example, if some content is placed off the page, it was rendered but you don’t see it. In this case it’s useful to have a listing of content off the page.

In this category you can include tag settings -  what to do if a select fails, returns nothing, etc. Some of these are particularly useful but in other cases, you can find yourself investing more time than it’s worth.

PROCESS EMBEDDED OFFICE OBJECTS

What if you are generating portfolio statements using a Word template? It has descriptive text, a chart showing performance, legal disclaimers, etc. But where it has a table showing the actual numbers, you want to place an embedded spreadsheet with the numbers.

Why? Because this way the recipient can open that spreadsheet and then, using Excel, measure that data any way they want. It’s a much-improved portfolio statement and something that makes the recipient go WOW.

If you want this, verify that the document automation vendors you select not only carries embedded objects to the output, but that the embedded object, if a DOCX/PPTX/XLSX file, has tags in it processed. To make good use of this functionality the embedded object must be treated as a live template, not a static document.

If fully implemented, the output to any format, such as PDF, will include the displayed embedded object.


This is generally not required, but it is an opportunity to make people love what you create.

WORD FORM FIELDS

This is a DOCX -> PDF issue. Do you need to have form fields in the DOCX such as drop down, list or check box become the equivalent thing in PDF output? If so, you need to verify that this feature is supported.

In addition, make sure that the initial content/value in the form field can be set from data. If it’s just static values from the template, that tends to not be sufficient for all use cases.

And a suggestion. When you need an empty or checked box depending on data, don’t use a form field. Use the Wingdings characters  and .

EXCEL REFERENCES & PIVOT TABLES

This is two XLSX -> XLSX issues. First, verify that a formula like SUM(D5:D5) expands to SUM(D5:D15) for the case where the row 5, inside an iterative loop, becomes rows 5 to 15. It’s very useful to have the formula adjusted (some products just write the literal value) on the output. This way, when someone adjusts say D7 to see what happens, all the formulas now adjust to that difference.

The same for pivot tables. If a pivot table is for D1:H5 and the generated XLSX now has those rows as D1: H125, the pivot tables are adjusted to match. This is necessary to use the pivot tables in the generated XLSX.

If you’re going to generate XLSX for Excel Power Users, this is key.

CAPABILITIES

These are mostly yes/no items. If you have data in SQL, the product needs to support SQL and you don’t care if it supports JSON. Same for programming language & output formats. So fast check-off here.

PROGRAMMING LANGUAGES

This is not an issue for docauto, just document generation.

There are three ways to call a docgen engine: Direct calls to a library, calls to a RESTful server on premises, and calls to a hosted (SAAS) RESTful server. Ask if they have what you want.

One note on Hosted solutions:  You will be sending data to that system. First, you want to make sure that the vendor is providing adequate security. Second, if your data is not allowed to go outside your country or region (E.U.), find out not just where the default server is, but also the failover server.

If you’re concerned enough about security to be asking these questions, you should probably host the RESTful server yourself. Even if you place it on AWS or Azure, you are controlling access to the server and its location.

SUPPORTED DATASOURCES

If all your data is JSON (or any other type), you don’t have to worry about what else the system can access. With that said, everything is getting more interconnected and odds are sooner or sooner you will have to access other datasource types.

Life is a lot safer if the solutions can use data from SQL, XML, JSON, & OData. (And why OData? 150 other vendor’s datasources, from ACT to Salesforce to Zoho.) Not a deal breaker but it will turn out to be useful.

See if you can create datasets from datasources. This is akin to views in SQL but you are creating them in the template (no DBA needed). And you want them for XML, JSON, & OData too. A good guide to how robust the dataset implementation is–do they basically become another datasource? If so, that’s a full implementation.

Furthermore, it can take time and bandwidth to download the metadata from a datasource. We saw one DB2 database take 28 minutes to download the full metadata (yes – truly!). If you have datasources with large metadata structures, find out if they have a way to read the schema once and reuse that. (This is unlikely to ever be needed for XML or JSON–it’s SQL, OData, & any custom datasources.)

Finally, for XML, make sure it uses the XML schema if one is available.

OUTPUT FORMATS

Check that it renders in the output formats you need. Everyone does PDF, HTML, DOCX, XLSX, & PPTX (last two if they support that template type). Additional output formats might be useful, but odds are you’ll never need them.

Check the accuracy of the PDF output. Everyone is imperfect on this. And in their, and our, defense, Microsoft does not document how Word calculates page layout. It does not specify the calculation between 2 lines of single-spaced text. And it’s impossible to reverse engineer accurately–Word is clearly performing complex calculations, not just using the font metrics.

Everyone does their best. Some come closer than others. Look for a good match but accept it won’t be perfect.

MISCELLANEOUS

Are you still here? Wow – congratulations! We’re now into some features that you may find useful but are unlikely to be major. But these do make good tiebreakers in your decision. And you may find one of the below to be major; for example, output that must be auto-hyphenated.

PARAMETERS

All products have a way to pass parameters to the template to use in the queries. Check that they have all the data types you need (they probably do).

Check that parameters can be set in a select as both a parameter (avoid injection attacks) and as a string substitution if desired. Setting as a parameter is valuable not only to avoid an injection attack, but to handle the cause of passing the name O’Malley.

CONDITIONAL FORMATTING

Excel has conditional formatting for a cell. But Word and PowerPoint do not. If you need conditional formatting, check if the solution you are looking at has it, and if so, if it’s sufficient.

AUTO-HYPHENATION

For output to PDF and a printer, if you want auto-hyphenation, make sure the solutions you are looking at offer it. Most people don’t care about this, or at least don’t care that strongly. But it’s a “must have” for a few.

TAG TREE

Does the designer have a way to show the structure of the tags in the document? And clicking on one, go to that tag? There is no need for this in simple templates. but when you get to 30+ tags it becomes useful. And at 80+ it becomes essential.

If you’ll always be under 50 tags, no big deal. But if you start under 50 tags and will grow to 200+ tags in a template, not having this will become a big deal. So think about where you’ll be in 5 years.

DATA COUNT

If you run a template and it takes forever, or it completes but it’s 2,00 pages long when you expected 2 pages – why? You can ask a DBA and they can track your selects and tell you the problem.

It’s faster & easier if the template add-in has a tool that tells you for each iterative select how many rows of data it returns and how long the query took to complete. From this you can quickly find what is wrong.

Useful, not essential.

GENERATE CODE

This is used once and saves at most 15 minutes - but it is very nice to have. This is irrelevant for the solutions that have code behind – they create code for each template.

For the one-time code to illustrate  what code is needed to add to your application to use the docgen system, it’s ideal if they include a generate code feature that provides you sample code.. And in addition, you know the correct way to call the engine.

Nice, not essential.

DEBUGGERS

Fortunately, these are rarely needed. But when needed, they can be a big time saver. There are several different debuggers that may be in a docgen template designer add-in.

  • Template Debugger - This is a means to step through applying data to a template to generate the document. You want the common features of breakpoints, single step, and viewing all data and state when you brake into the debugger. This helps you debug the business logic in your template.
  • Connection Debugger - This is a means to help you find the right connection string to a datasource. (Usually SQL but it can also be a URL to XML/JSON/OData.) This will attempt the connection and if it fails, provide all exception information. It will also help with writing the connection string.
  • Query Debugger - This is a means to determine why a select is invalid. Again, the main use here is try different selects and then see the exceptions return. It's a fast way to go through trial & error.

As stated above, these are rarely needed so they're in the "useful but not important" category - except that one time you really really need it.

TAGS

Every product has different names for the various tags. Here we use the tag names from Windward, but everyone has most of these.

It’s also important to look at the specific functionality of some tags. Can the import tag optionally insert a section break (Word) before/after the import? Can the forEach tag insert a section break, new workbook, and/or new slide on each iteration? Are bitmap & chart tags actual Office pictures & charts?

  • out
    Place the data from a select at this location
  • import
    Data returns a filename or URL, place what's in that file at this location
  • bitmap
    Some solutions handle bitmaps as part of the out & import tag. Others have a distinct tag for bitmaps (sometimes called pictures).
  • set
    Set the value of a parameter (new or existing)
  • query
    Reads one row of data to be used by other tags
  • forEach, endForEach
    Iterate through the rows of data in the query repeating the template content between them once for each row of data returned.
  • if, else, elseIf, endIf
    Conditionally include content between if and else or else and endIf based on the result of the query. The else is optional. Note: Windward does not have elseIf.
  • switch, case, endSwitch
    Like if but has multiple case statements within the switch.
  • link, endLink
    The query returns a URL for the link. The link is applied to all content between the start and end tag.
  • bookmark
    A link anchor inside the document. The name set from the data.
  • chart
    A chart built from data. Some systems for DOCX/XLSX/PPTX output create an Office chart object (good) while some create a bitmap rendering of the chart (poor).

It's fascinating the power of what you can create with this set of 11 tags. There really is no limit, yet it's with a moderately sized set of constructs. The power is in what each of those do under the covers.

DOCUMENT GENERATION PRODUCTS

Here is a list of document generation software that you can embed into your applications or solutions. The template design functionality is most of what’s key for these solutions.

  • Docmosis
    Generate documents and reports based on templates. Output in PDF/Doc/ODT from Java, PHP, C#, Ruby and more.  
  • Ecrion
    At Ecrion, we make customer communications management software for companies who want to establish genuine connections across multiple engagement channels.
  • Formstack
    Use Formstack document generation software to merge data into custom-built documents. It save hours of time and money.  
  • HotDocs
    No matter your industry or company size, HotDocs from AbacusNext has a solution to help speed up your document creation workflow.
  • Windward Studios
    The Global Leader in Document Generation Solutions. Revolutionize your docgen. Windward provides seamless integration in your CRM or custom apps.
  • XPertDoc
    Our specialty is document generation and automation. Our mission is to enable organizations to digitally transform their document processes.

DOCUMENT AUTOMATION PRODUCTS

Here is a list of Low Code/No Code solutions that provide an end-to-end document automation solution. This guide focused solely on the template design step of these total solutions. You need to also evaluate the additional functionality each provides.

  • Conga
    Conga’s end-to-end AI digital document transformation increases business-critical efficiencies, leads, and revenue generation. Automate for ROI...
  • Formstack
    Use Formstack document generation software to merge data into custom-built documents. It saves hours of time and money.  
  • Nintex
    Nintex is the market leader in end-to-end process management and workflow automation. Easily manage, automate, and optimize your processes with no code.
  • Templafy
    Templafy helps companies perfect every aspect of business document creation. Enable your employees to work faster & within company standards every time.
  • Windward Studios
    The Global Leader in Document Automation Solutions. Revolutionize your document generation. From a comprehensive SaaS or desktop solution, to seamless integration in your CRM, we have you covered. Take advantage of document automation using Word when you choose our software.

Document Automation for high volume output and a familiar user-friendly design environment

Start your FREE trial!
Call us with questions at 1.303.499.2544
Windward © 2021 All Rights Reserved.