Это обычно называется отношением Master-Detail между задействованными наборами данных.
В Delphi вы настраиваете его, подключая набор данных Detail к источнику TDataSource, набор данных которого связан с набором данных Master.Это можно сделать на стороне сервера (т. Е. Между двумя запросами, используя свойство DataSource
объекта Detail, или между двумя наборами клиентских данных, используя свойство MasterSource
объекта. Деталь. При выполнении этого на стороне сервера вы пишетеSQL для запроса как параметризованного запроса, с параметром, значение которого совпадает с PK Мастера, как в
Select * from mydetailtable where masterid = :masterid
Как только отношение Master-Detail установлено между двумя наборами данных, оно должно работать практически слюбой генератор отчетов, включая FastReports.
См., например, http://docwiki.embarcadero.com/RADStudio/Rio/en/Setting_Up_Master-Detail_Linked_Relationships, в котором говорится об этом с точки зрения компонентов DBExpress, но принцип применим к другим компонентам набора данных Delphi.