How to make a report like Master-Detail

2019-09-04

The variety of electronic documentation sometimes seems to be limitless. However, in practice, not many types of documents are commonly used.

In electronic reporting, the most common type of document is a simple list. Then, there go complex lists. There can be many variations of complex lists, but the main one is a report of the type “Main” - “subordinate”. The essence of this type is that there is a dependency between data entities in a one-to-many scheme. That is, one record in the main table can correspond to several records in the subordinate. In practice, it looks like this:

Entries from the main table contain the name of the categories, their brief description and picture. Each category contains specific products. This example shows only one dependency “Main” - “subordinate”. But the subordinate table can also have its subordinate table, and then it will already be the main one for the second connection. Such hierarchical dependencies can be arbitrarily many. And now in practice, let’s consider how to create such a report.

First of all, we need a data source in which there will be two logically related tables, as in the example shown above.

Add a data source to the report. In our case there will be two related tables:

customer and orders.

In the “Data” window it looks like this:

 

Now we need to link these tables. To do this, click the Actions button in the data window. A drop-down list will open:

 

You need to select the item “New Relation”. In the relation edit form, we need to define the main and subordinate table, as well as the field by which they should be linked:

 

The main table is ‘customer’, its primary key is CustNo. The subordinate table is ‘orders1’, its foreign key CustNo. After successfully creating the connection, we will see it in the data window:

As you can see, a link to customer appeared in the orders1 table. If you open it, we will see all the same fields that are in the customer table.

We have prepared the data, now you need to create a report template.

By default, a single band Data is available in a blank report. Let's add some fields from the customer table: customer.Company, customer.Addr1, customer.Phone, customer.Contact. We will place these fields so that we get a certain company card:

 

Right click on the band header ‘Data’:

 

And select the item “Add detailed data band”. Click on the Configure bands ... link:

And add a header band for the Data2 band. To do this, select the Data2 band with the mouse and click the Add button. In the drop-down list, select Header.

After that, you can add fields from the orders1 table to the detailed “Data” band: orders1.OrderNo, orders1.SaleDate, orders1.AmountPaid. At the same time column headings will be added automatically. Format the headers, and our template is almost ready:

Double-click on the header of the “Data” band:

We select the customer table as a data source. Now let's do the same for the detailed “Data” band:

Now our report is ready to run. Let's see what we got:

.NET .NET FastReport FastReport
12. Oktober 2026

Einen Bericht exportieren in XML aus der Vorschau in FastReport .NET

Erfahren Sie, wie Sie einen Bericht in FastReport .NET im XML-Format speichern können: Export aus der Vorschau ohne Programmcode und programmgesteuerter Export über XMLExport mit anpassbaren Parametern.
12. Oktober 2026

Wie Frieren Sie Zeilen und Spalten Beim Exportieren von FastReport .NET

Erfahren Sie, wie Sie beim Export von Berichten aus FastReport .NET in OpenOffice Calc und Excel Zeilen und Spalten fixieren können, um große Tabellen bequem anzuzeigen.
12. Oktober 2026

GS1 DataBar Expanded Stacked: Funktionen und Konfiguration, die in FastReport .NET

Anleitung zum GS1 DataBar Expanded Stacked-Barcode: mehrzeilige Kodierung von GTIN, Verfallsdaten, Gewichten und Chargennummern. Erfahren Sie mehr über die Datenstruktur, das Scannen und die Konfiguration von FastReport .NET-Segmenten.

© 1998-2026 Fast Reports Inc.