Interactive Report Template
Jump to:
Template Features
Real-World Example
Using the Interactive Report Template
Advanced Tips
General Notes
As of the February 15, 2010 update, m-Power is shipped with a new Report template: The Interactive Report Template. This template is full of new features that will allow both you and your users greater flexibility in accessing your data.
Template Features
- Record Selections and Report Data on a single page for simplified analysis
- Collapsible Record Selection Screen
- Individual Options of the Record Selection Screen are collapsible
- The “In the List” Record Selection Operator offers three new functional layouts for handling multiple selections for a single attribute:
- Drop-Down List
- Toggle Button List
- Toggle Checkbox List
More information about drop-down lists can be found here.
- Smart Record Selection — As users select values, the template shows users which other values are related.
- Execute the report with or without a Run Button. The report will automatically be invoked each time the user picks a selection.
- AJAX-executed report provides a connected/installed application feel for end users.
- Automated Drilldown
- The report loads with the highest level of defined subtotals displayed.
- Each level provides an icon to expand/collapse to drill down into the subsequent level of subtotal/detail.
- A configurable governor controls the pagination as the user drills down to reveal the detailed data for the next level.
- Improved splash screen
- Improved Graphing
- By default, each numeric field is grouped at the highest level of sequencing.
- By default, the graph is enabled to allow interaction with the end user. Each data element is clickable, which will affect the record selection for the current report.
- As always, the graph is highly configurable to enable any type of graph, grouping, level of data, fields, and all other graph properties!
- Since lower levels of detail are shown under preceding rows, Totals are now displayed above subsequent row of subtotal/detail.
- Group-by logic to make large datasets run efficiently.
- Within the same session, the report will “Remember” your end user’s lowest level view of data. If your end user attempts to drill back within the same key, the report will remember their progress and show them all data down to the lowest level they had previously selected.
Real-World Example
Perhaps the best way to show the true value of this template is to illustrate a real-world scenario seen at mrc. A few years ago, we created this BI application. It consists of 3 different reports written over multiple summary tables. Each summary is scheduled to run nightly to create a small data-warehouse to ensure an efficient report.
Looking back on our development, with design, building, painting and testing, it took us about 3 days to promote this report to production. With the complexity of the application and the available options, that is pretty good.
For comparison, the Interactive Report Template can do all of the things illustrated above, but can be done in a fraction of the time. This application accomplishes the same objective as the application listed above. In short, it allows:
- Drilling down into multiple levels of subtotal data.
- Drilling down via the graph.
- The user to see data at whichever dimension they choose.
- Ad-hoc Column sorting.
However, this application took only about 30 minutes to create. Since the Interactive Report Template works over live data, there is no need to create additional levels of data-warehousing as your reports will be lightening quick (thanks to the Group-By Logic). In essence, when creating Business Intelligence reports, this template alone could save you days of development time. More importantly, your end users will love all of the features mentioned above!
Using the Interactive Report Template
To begin, simply select the “Interactive Report Template” from the “Template” selection when creating a new application or from the “Application Settings” screen of an existing template.
After selecting the necessary fields and tables, navigate to the “Sequencing” screen. Within the Interactive Report Template, your sequence key selection is critical, as it determines the basis of your report. You will want to select your sequence keys, in order, from highest level down to more details. For instance, if I wanted to create a report that first showed me sales data by year, then sales for product classes sold within that year, then sales of products sold within that product class, I would set up my sequence keys in the following order:
- Sales Year
- Product Class
- Product
Then at runtime, your users would see a list of valid sales years. They can then drill into one of the years to show all valid product classes sold during that year. Next, when seeing all valid product classes for the year specified, they can choose to drilldown on a specific class. The end user could then select any given product for the given class, to show all sales data for that product. Click here to see this application live.

How-to Use the Template
- Within the template, anytime you see a plus icon, “
” this means that there is something that can be expanded. Whether it is a row of data or simply an option that is hidden, clicking on this will show whatever is hidden within the option. - Conversely, a minus icon “
” means that you
can hide the information for this category. Whether this means hide data or hide a record selection area, clicking on this icon will hide the appropriate information. - The left and right arrows,
&
are only shown when your user has selection criteria from which to choose. They can hide the selection criteria window to allow more of their data to fit on the screen. Alternatively, they can click on the right arrow to “show” a hidden record selection area.
Shown Hidden - The record selection pane is also interactive. You will see that the Interactive Report Template may know the data just as well as you do! Let’s say your report allows the user to pick a given quarter and a given month, from separate drop-down lists. As soon as your user selects a given quarter, let’s say Quarter 2, the Month list will automatically be refreshed. The user will see, in this case, Months 4, 5, and 6 as available selections. All other months will appear greyed out, informing the customer that these options are not related to previously selected lists. If a user decides to next pick December, as soon as they choose December, their Quarter 2 selection will be removed. This lets the customer know that December and Quarter 2 are not related. This logic functions in this manner due to numerous AJAX calls to your database. Each record selection selected, affects the WHERE statement of all Record Selections.
Note: The ability to grey out unrelated record selections can be disabled within the Application Properties, under the option “refresh_selections”.
See this example below:

As you can see, the record selection logic correctly alerts me as to what options are related to previously selected options! - Often times, developers enjoy the flexibility of using “Is in the List” rather than “is Equal to” but are concerned about some users being able to select more than one value from the list. The Interactive Report Template addresses these concerns by allowing users to easily select multiple values from an “Is in the List” relationship. When the report is created, users will be faced with a standard dropdown list. However, as they select values from the list, they are notified of their selection and can continue selecting elements.
After successfully adding one value:

After successfully adding two values:

Users can also easily remove unwanted selections by clicking on the red “X”:

Note: After a short time the “Added/Removed” text will fade from view. - To better enhance the template, if a user selects to drill down on any given level where more than 40 records of detail exist, the report will only show 40 records at a time, however the user will have the option to click to see the next 40 records.

Note: This value is controlled within the Application Properties file for each application and can be changed under the Program Options –> drilldown_records value.
Advanced Tips
- The Interactive Report Template also gives you the option, through Application Properties, to turn off the smart selection logic. This may be useful if you are working with a particularly large data set and your results are taking too long to be returned to you. To turn off this feature set the “refresh_selections” option within Application Properties to “No”.
- If you wish to make the template even more interactive for your end user, try removing the Submit button. Simply enter m-Painter, open Application Properties and change the “run_report” value to “Hide run report button”. Now when your end user runs the application, as soon as they select a value from a dropdown list, the report will submit immediately and the dataset will be redrawn. Similarly, if an end user types a value as a record selection, as soon as he clicks away from the text box, the dataset will redraw based on the user’s input.
Note: Without the submit button, after each time the user makes a selection, the template will redraw the screen. For large data sets, this may slow down users from entering multiple selections. If this is the case, please be sure the “Submit” button is displayed. When it is displayed, the logic will only run when the user chooses to submit their Report selections. - If you wanted to see the same information, but laid out in a different order you would simply need to reorder your sequence keys within the m-Power interface, then recompile and overwrite your HTML.
- Developers can also embed their own drill-down links where necessary. If you would like to also include the previously selected record selections within your own drill-down links, you will need to add one small piece of code. Please add
class="link_with_parms"to your<a>tag. - The Interactive Report Template allows you to click the “minus” icon within the record selection title to collapse all record selection windows. If you would like a particular record selection to never collapse, replace
menu_bodywithmenu_body no_collapse. - If you would like to add additional variables to your drill-down links, simply open m-Painter and search for the text
extraParms. Place your additional parameters with the quotationextraParms: ''. For instance, if you want to always pass R001=ABC, your extraParms line would read:
extraParms: '&R001=ABC'
Note: You must begin your first parameter, as well as any additional parameters, with an “&”.
General Notes
- When selecting sequence keys, the option of “Subtotal” and “New Page” are ignored for the Interactive Report Template.
- Fields are added to the output in order. If you return to an application and add a sequence key, that field will not be moved to the leftmost side of the screen. To make the end user experience better, we recommend utilizing the Field Setting screen to “Re-order” your fields so all Sequence keys are listed in order.
- If an end user attempts to use the re-sort option while they have expanded levels of subtotal, all drilldown progress will be reset. However, the report will retain their ad-hoc sorting when they drill down to lower levels of data.
- Your embedded graph will be activated to become a drill-down image only when your first sequence key is also a record selection. This means that, as long as your first sequence key is also a record selection, your end users will be able to interact directly with the graph by clicking on a given bar, to see information as it relates to that particular bar. However, if this is not the case, your graph will show the correct values, but will not be interactive.
Note: The tooltip logic follows the same rule which requires the first sequence key to be a record selection to be active. - As a developer you have the option to add a secondary graph to your application. Please note that your graph can only exist on the default levels (Sub-total Level 1 & Grand Total). If you place your Image Data Collection icon on any other level, your graph will not display.
- This template encourages users to drill-down into more detail where necessary. If you build an application that has more than 6 levels of sub-totals, please be advised that only the first 6 classes will have a formatted look. This is because the standard mrc stylesheet only has the first 6 subtotal classes defined (Classes .s1 through .s6). If you need more, please add new rules for .s7, .s8, .s9, etc by going to the Admin section, Edit Data Dictionary Files, Web 2.0 Servlet Style Sheet (You can copy other .sX lines, and replace with the appropriate colors).
- You can import the right panel (the data set portion of the screen), into other applications. Click here to learn how to accomplish this.
- mrc encourages you to use lists for record selections to help end users. However, you can also use general input (text) fields. mrc also recommends using the “Run Report” button when using text boxes as it will be more intuitive for end users. If you wish to leave the “Run Report” button hidden, please note that the form will only submit when the user presses enter or chooses an item off of a dropdown list.
- Google Maps integration is not currently supported with the Interactive Report Template.
