The users of your reports are usually in a hurry. They do
not have time to read everything on the report, and often just scan the report
and find the pertinent information. It is very important that you take this
into consideration and create a clear visual hierarchy in the report. Reports
should be broken down into a clearly defined header, body and footer. The
header should contain data such as the title and filter criteria. The body
should contain the report data sorted into a logical hierarchy that is easy for
the user to read. The footer should always contain the page number and the date/time
the report was created.
Figure 1: A clearly defined report hierarchy
The report above was created using only the tools and
techniques we have discussed so far. The images were downloaded from Stock Exchange, the color scheme was created
using Adobe Kuler, and Paint .net was
used to create the images with rounded corners. Notice the hierarchy of this
report. Often times when printing product images or employee images within a
group, it is difficult to maintain an easy-to-understand hierarchy. In Figure 1,
you will notice the employee information and sales numbers are indented
slightly to the right to make the hierarchy visible.
How to Get your Message Across
When creating your reports, keep the message you want to
convey in your mind as a priority. This message may be as simple as "Sales
by Quarter" or maybe "Order Fulfillment." If the message of your
report is "Sales by Quarter" I would assume the total number of sales
would be a vital piece of information. The message should be displayed near the
top of the report allowing the user to see the message right away. If the
message is "Order Fulfillment," you may want to fit as many orders on
the same page as possible. Report names are important when trying to get your
message across. If a user does not know what data is contained in a report
based on its name, it is a sign you are not getting your message across. If you
have reports that do not allow filter criteria, but that are filtered by a
value, include it in the report title i.e. "Order Fulfillment for Current
Figure 2: Getting your message across
The report in Figure 2 contains a large amount of data, with
a very clear message. The alternating row color also improves the readability
of the data.
To add alternating row color to your report, in the Section
Expert choose the color tab for the details section and click the formula (the
Figure 3: The Section Expert
Figure 4: Alternating row color formula
Large Amounts of Data
Often times when reports are created, they are not developed
using a dataset that is representative of production data. This causes issues
in design when you only expect to render a small set of data. For example, an
"Order Fulfillment" report has the potential to be a very large
report depending on the number of orders. Since this report may contain many
line items, you will want to take care that each line item does not take up any
extra space. If you are not using data that is representative of production,
you may run into issues with overlapping fields, incorrectly formatted fields,
unexpected page breaks, hundreds of pages, and performance issues.
Figure 5: Overlapping fields
Pick a common format for your field values and stay
consistent with this format through all your reporting applications. If you
decide negative numbers should be enclosed in parentheses and the font should
be red, stick with this format throughout every report in your application. In
most business cases a negative number is a bad sign. I have found that users
react better to negative numbers with a font color that is maroon instead of
"fire engine red."
Figure 6: Maroon instead of "fire engine
Ensure your fields only take up as much room as they need,
this helps keep reports clean.
For reports with large amounts of data use a small font such
Select the "Can Grow" option for large data fields.
Set tool tips to describe complex fields in more detail.
Logical Grouping of Data
The flow of most reports depends on how the data is grouped,
how the data is sorted, and whether the data is contained in a cross-tab.
Sometimes these questions are addressed in the business requirements, other
times it may be upon the developer to make these decisions. At the minimum,
developers should take care in ensuring that all data is sorted logically and
consistently. Grouping data allows reports to be read easier.
Grouping by Field
Grouping data by fields allows analysis of the field
summarized into a logical grouping.
Figure 7: Orders grouped by order month