Skip to main content Skip to footer

How to Generate a .NET Banded Report in Your Desktop Application

ActiveReports is a flexible .NET report generator with a complete set of controls and extensive API that allows you to design reports in your Visual Studio projects. This post will demonstrate how to create a banded report in ActiveReports.NET using code-based Section Reports. ActiveReports also has two other powerful and flexible report types. Please look at this page to learn more about our different report types.

Launch Visual Studio

Let’s create a simple tabular report of our stock inventory grouped by each product category. We’ll use an existing Visual Studio project, though you can create a new one. We’ll right-click our reports directory and select Add > New Item. Select the ActiveReports 16 Section Report (code-based) in the resulting dialog box and enter a report name. 

Add New Item

First thing, let's establish a connection to a JSON endpoint. On the Visual Studio 2022 toolbar, go to Extensions > Report > Data Source. Alternatively, you can click on the Data Source icon in the Detail band of the report:

Detail Band

Go to the JSON tab of the Report Data Source dialog box. Type in your connection string and query in the appropriate fields as follows:

Report Data Source

If you need help creating your connection string, click on the Build button next to Connection String. Here, you can easily configure your JSON connection. Similarly, if you need help crafting your query, click on the Build button next to JsonPath, which will launch the JSON Query Designer. Once you are all done, click OK

You should have all your fields from the dataset in your Report Explorer. Let's right-click on Fields>Calculated to add a custom field to our .NET report. 

Report Explorer

We'll use this custom field to calculate the value of each product. To do so, we'll set the following properties: 

  • Name: Value
  • FieldType: Double
  • Formula: =UnitPrice*UnitsInStock

Grouping Data

We want to group the data by CategoryID and aggregate the value of each grouping. Right-click the Details band and select Insert > Group Header/Footer. Click on the Group Header and set the DataField property to CategoryID to group the report on this field. Also, set the BackColor property to WhiteSmoke. Finally, set the KeepTogether property to True. This ensures that the grouping will not be broken across multiple pages whenever possible.

At the top of the Group Header, add two labels ("Category:" and "Category Value:") vertically aligned. Next to each, drag and drop CategoryId and Value from the Fields section of your Report Explorer. The Value textbox will display the total value of the category. Therefore, we need to adjust some properties for this textbox:

  • OutputFormat: Currency
  • SummaryGroup: GroupHeader1
  • SummaryType: SubTotal

Creating the Report Layout

At the bottom of the Group Header, add 4 Labels:

  • Product Name
  • Stock
  • Unit Price
  • Value

 

In the Details band, drag and drop ProductNameUnitsInStock, and UnitPrice from the Bound Fields and Value from the Calculated fields. Adjust the size and position of the text boxes to align with their respective labels in the Group Header. Adjust the height of the Group Header, Detail, and Group Footer. At this point, your report layout will look like this: 

Report Layout

Previewing, the sizing looks right now. We also see that the groups are kept together as much as possible. 

Report Designer

Download this sample as an RPX file from the link below inventory.rpx

Learn more about ActiveReports.NET features by visiting our Online Demos

 

comments powered by Disqus