Hola:
Bueno lo complejo del reporte tú mismo lo manejas. Yo por ejemplo para QR he querido hacer algo parecido, pero por tiempo no lo hecho, pero de ser posible sí que lo es. Lo más complicado de hacer esto es generar la consulta dinamicamente (si es que el reporte usa más de una tabla, por las cuestiones de la relación entre ellas), si usas QR, te recomiendo generar los TDBText dinámicamente al generar el reporte:
procedure TForm1.GeneraCamposEnReporte;
var
Campo1 :TQRDBText;
begin
Campo1 := TQRDBText.Create(self);
with Campo1 do
begin
DataSet := MiDataSet;
DataField := MiCampo;
Parent := QRBandTiTulo;
Left := 15;
end;
end;
No sé si la propiedad PARENT en el ejemplo anterior unicamente lleva el nombre de la banda, será que le investigues y las demás propiedades son fáciles de obtener.
Espero te sirva de algo
