ABAP Report Generator

Many reports are simply built on a SQL query, that mostly can be restricted via select options. A report puts the result usually into an ABAP list, ALV list or ALV grid. The core of the report is the query itself, the rest is always the same boring and repetitive work: definition of types, declaration of variables and internal tables, displaying the output. Putting this together takes at least a few hours, or even one or two days. Now there a new tool that can amazingly accelerate the implementation of reports: you only have to write the query, and the program will generate the complete ABAP source code of the report! This can reduce the development time to a few minutes.

The Hovitaga Report Generator is built on top of the Hovitaga OpenSQL Editor so they have basically the same UI


The Report Generator can also execute OpenSQL queries, for further details see the blog post about the SQL Editor. Here I will present only the generation of reports.

The first step is to build the OpenSQL query. You can use aggregator functions, aliases, join several tables, build a complex WHERE clause and so on. Basically every syntactically correct SELECT statement is allowed. You can instantly execute it to check if it works correctly. Then you have to choose the settings for the report to be generated:


You have to enter the program name and report title, and optionally the transaction code. You can choose to create a new dictionary structure for the output list – otherwise the structure will be defined locally in the program. The report generator detects which tables are accessed in the query, and the fields of the tables are shown in a list. You can choose which fields shall be displayed as parameters or select options on the selection screen of the new report.

You can decide what kind of output you would like to use: the most populars are probably the ALV list and the class based ALV grid. It is also possible to generate the frame of event handler methods for the selected control. Later on you can modify the generated report and add your own coding to the method body.

The report can be created locally or assigned to a package and a transport request, you will see the standard dialogs that are shown when saving a report. The report is exactly as any other ABAP program you have created manually. The coding is easy to read and can be enhanced or modified any time: