ABAPintermediate

ALV (ABAP List Viewer) Reporting

Building interactive, sortable, exportable list output using the ALV Grid and ALV Object Model frameworks.

Almost every functional consultant's requirement eventually becomes "show me a report with totals, sorting, and export to Excel," and ALV is SAP's standard answer, so it appears constantly in interviews for both developers and technical consultants. There are three generations to know: the function module interface (REUSE_ALV_GRID_DISPLAY), the classic OO ALV (CL_GUI_ALV_GRID), and the modern ALV using CL_SALV_TABLE which dramatically reduces boilerplate for standard cases.

ALV is like a spreadsheet engine bolted onto your SAP report - you hand it rows and column definitions, and it gives users sorting, filtering, and Excel export for free, the way a pivot table gives you interactivity without writing rendering code.

Key Concepts

1
A strong candidate explains the field catalog concept - metadata describing each column (text, data element, edit-ability, hotspot) - and how it can be built manually, derived automatically from a DDIC structure, or merged from both. They should know how to add custom toolbar buttons and handle user commands through the HANDLE_USER_COMMAND event, and how to trigger hotspot navigation with HANDLE_HOTSPOT_CLICK.
HANDLE_USER_COMMANDHANDLE_HOTSPOT_CLICK
2
Sorting, filtering, subtotals, and color-coding individual cells are common requirements achieved via the layout structure and sort table. For performance, candidates should mention that ALV rendering itself is not usually the bottleneck - the underlying SELECT and internal table build are - so ALV should be considered a presentation layer bolted onto already-optimized data retrieval.
3
In S/4HANA and Fiori contexts, ALV is being progressively replaced by SAP Fiori Elements list reports built on CDS/OData, so a mature answer acknowledges ALV as the classic SAP GUI answer while being aware of the modern equivalent.