The iRise Custom Reporting Engine is a powerful tool that allows a user to instantly report on their project in a multitude of different ways. You can display screens, requirements, and comments all within a single report that can be exported to either a PDF or a word document with the click of a button. This article will outline how to go beyond the basic out of box reports and customize them to fit your specific goals and needs. 

To understand the necessary changes, every user should be familiar with the different components used to generate the custom reports.

In this article, the default Functional Specification report will be used to demonstrate how to make customizations.

Part 1: Requirements Schema

Before reporting on the project, it is important to consider what exactly you need to include in the report. Look at your requirements and determine which attributes you want to display in the report. Finalize the project requirement schema prior to customizing the report itself. 

Follow the link here to learn more about updating the requirements schema.

Part 2: Reporting Engine & Scripts

The new Reporting engine utilizes DustJS templates to render the available information in an easy to digest report that is customizable. By manipulating the dust scripts, you can fine-tune the report and define and filter the data you would like to display. 

Each subsection of a report is broken down into a basic script that is comprised of multiple pieces. The parts of the report can be categorized as the Configuration, the Section Template, and the CSS Styling.

As you can see from the screenshot below, the Configuration script calls the Section Template scripts to build the report. 

The Section Template script creates a specific section within the report to display data. You can format this script in various ways to configure the report layout.

The CSS template changes the way your report looks and is formatted. This is where you can set specific report level attributes for things like font and color. 

Part 3: Referencing Attributes

Attributes that can be referenced in the reports are dependent on the requirements schema of the project that you're creating. From the editing panel, the attributes are organized based on the Category that they belong to. The naming convention of the full attribute is {category-attribute name}. For example, the attribute Type under the General category would be listed as {General-Type}. 

To reference this within the report, you would call an attribute with that naming convention in the relevant script. 

In the Functional Specification report, we will update the table to call the Type as opposed to the Status. 

Within the script for the requirements, update the table column and the attribute being referenced to configure the report.

Before manipulating anything in the script, confirm that you are updating the correct section. There are a lot of different components within the script that you will need to track.

Every component of the report is broken down into different Section Templates within a <script> tag. 

In the example below, we will be editing the Screen Requirements script.

Once you have located this specific script, we can move on to updating the contents. 

As you can see from the screenshots below, updating the column title and the referenced property will update the report. We replaced the Risk property with the Type property and updated the table to display that in the column header.  



Part 4: Editing Tables and Displays

Similarly, you can update the way tables and other details are displayed by updating the report. Within the report, you can adjust tables and add or remove rows to fit more data or change the color of text depending on their values. 

As you can see from the screenshots below, <discuss updating tables>



That is a brief introduction to customizing reports. If you have any questions, feel free to contact us at or check out the support portal at You can also reach a member of support by using the 'Chat with us' button at the top right of your Definition Center interface. 

Did this answer your question?