Posts tagged with 'section-based-reports'
Section Based Reports in ActiveReports support newspaper column layouts in both the detail and group sections called Columnar Reports. The documentation provides a step by step walkthrough for creating these.
ActiveReports is designed to run reports as quickly a possible, so generally reports are generated and displayed on the viewer in no time. Since there is no benchmark defined in regards to the length of a report, it could vary from a very small report to a very large report. When working with a very large report, the report generation may take a while; however the user has no option to check on the report progress.
When designing a report there are many features which might be required to be included in the report. A Table of Contents page not only gives a report a more professional look, but also eases navigation for the users viewing the report. In this blog article, I will throw some light on how we can add a TOC page to a report. This will allow users to check what topic is located on which page and will provide them with the ability to directly navigate to the corresponding page using the hyperlink functionality. Let us first see how our TOC page will look like:
ActiveReports provides a lot of export options which include PDF, RTF, TIFF and XLS to name a few. Excel is one format which is very commonly used by programmers. ActiveReports does allow you to export to Excel; however there are some limitations and the output is not 100% WYSIWYG.
When creating professional reports, page numbers are considered to be an important element The section based reports of ActiveReports 7 does have a ReportInfo control available which can be used to automatically write page number on the reports. But there are scenarios when the ReportInfo cannot be used. For example if we are creating multiple reports and merging them together to create a single report, the ReportInfo control cannot be used to write continuous page numbers on the merged report since it works on individual report level. Similarly this holds true for reports which uses subreports within it.
Sometimes when a very large report is previewed or run, Report authors and developers may experience an "Out Of Memory" exception . Before we go further, let's understand that ActiveReports is designed to run reports as quickly as possible and each time a new page is rendered it is stored in memory. This means that there is a linear correlation between the number of pages in a report and the amount of memory required to hold that document in memory.
The extensive ActiveReports 7 API allows developers to completely control the report processing engine to fit their needs. Along with the simplicity of the design that allows the data to pass through quickly from processing to rendering, it provides the ability to present the report data in grouped format. Whether you need a simple listing or need a grouped view, ActiveReports is the solution. Basically, grouping refers to the segregation of data on the basis of a particular field of your data source.
ActiveReports supports different types of data sources. And, it is quite common to use an IList or a collection of objects as the data source for a report. A sample is included with ActiveReports 7 installer which demonstrates this. Default location for the sample is "My Documents\ComponentOne Samples\ActiveReports Developer 7\Section Reports\C#\IListBindingSample ". However, in this article I would like to talk more about a complex/nested IList.
Any reporting tool cannot be called complete without a charting feature. ActiveReports 7 being a very robust reporting tool provides a nice support for different types of charts. In one of the blog posts, I discussed about creating a dynamic Pie Chart and in this blog post I would be discussing about creating a Stacked Bar chart at run time. A Stacked bar chart is a graph that is used to compare the parts to the whole. The bars in a stacked bar graph are divided into categories. Each bar represents a total.
Sorting is currently not supported in the Section Based Reports available within ActiveReports 7. The most common approach which a user has to take to sort a report is to use the Order By clause while defining the SQL query for the data source. This approach works well for a static sorting on a particular column. However, a user is still not able to interact with the report on the viewer and sort it once it is displayed. So what if user wants to sort any column of the report in Ascending/Descending order but only after it gets displayed on the Windows Viewer?