We have our own way to create reports.
Firstly, we have XML Report Definition files. You define the structure of the report in XML, with embedded SQL.
The GUI for the user to select the parameters of the report, select columns to display, and define the sorting, is developed using OpenPetra Forms defined in YAML.
See also a tutorial about HowTo develop a new report.