abapEasyALV
Wrapper classes over the classic ALV and SALV frameworks that collect commonly used reporting actions behind fewer method calls, so a report displays a table with set_data and display_data.
Both the classic ALV and newer SALV frameworks expose many rarely used methods, while an ordinary action such as setting a column's text in SALV needs several method calls arranged in the right order. abapEasyALV wraps each framework in its own class, zcl_ea_alv_table for ALV and zcl_ea_salv_table for SALV, so a report can display a table with a set_data and a display_data call. Its README steers towards the SALV wrapper by default, since SALV needs no container, and keeps the ALV wrapper for cases needing cell editing or drag and drop, features SALV lacks. A layout variant is passed straight into display_data and can be picked through an F4 helper on the same object.
Facts
Where it sits
Who is behind it
In the atlas: maintains 6, contributes to 8@Kaszub09maintainer
What it declares
Every artifact
- Type
- Package
- Origin
- Independently maintained
As a package
- Where it runs
- does not say
- Distributed through
- abapGit
Connections
Building screens, lists and interactive controls for the SAP GUI
Maps clipboard, Excel or text data onto a declared ABAP structure
Report listing user-exits, BAdIs and enhancement spots of a program
Download
README
quoted from Kaszub09/abapEasyALV under MIT, readabapEasyALV
Wrapper classes for ALV/SALV frameworks for easy reporting. Check examples for usage.
Installation
Via https://github.com/abapGit/abapGit.
Why
There are numerous methods in both frameworks which are rarely used, while some common actions (like setting text for column in SALV framework) require calling several methods. So the purpose of wrappers is to collect and expose commonly used functionalities.
Why both
While SALV framework is newer and more easier to use (especially since it doesn't require container), it lacks some features like being able to edit cells or drag&drop functionality. So SALV is preferred unless you need them.
Example usage - simple report with ALV.
REPORT zea_alv_ex_simple_report.
TABLES: sflight.
SELECT-OPTIONS:
s_carrid FOR sflight-carrid.
PARAMETERS:
p_layout TYPE disvariant-variant.
INITIALIZATION.
DATA(alv) = NEW zcl_ea_alv_table( ). "Initialize there so you get f4 for layout.
START-OF-SELECTION.
SELECT * FROM sflight WHERE carrid IN @s_carrid INTO TABLE @DATA(sflight_tab).
alv->set_data( REF #( sflight_tab ) ).
alv->layout-name = p_layout.
alv->display_data( ).
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_layout.
p_layout = alv->get_layout_from_f4_selection( ).
Example usage - simple report with SALV.
REPORT zea_salv_ex_simple_report.
TABLES: sflight.
SELECT-OPTIONS:
s_carrid FOR sflight-carrid.
PARAMETERS:
p_layout TYPE disvariant-variant.
INITIALIZATION.
DATA(salv) = NEW zcl_ea_salv_table( ). "Initialize there so you get f4 for layout.
START-OF-SELECTION.
SELECT * FROM sflight WHERE carrid IN @s_carrid INTO TABLE @DATA(sflight_tab).
salv->set_data( REF #( sflight_tab ) ).
salv->display_data( p_layout ).
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_layout.
p_layout = salv->get_layout_from_f4_selection( ).Others providing
Compare all 10 on the SAP GUI screens and lists page →- abeljohny/ZAPabeljohny/ZAPA tiny DSL included into an ABAP report that replaces a SELECT and an ALV call with a pair of macros, _select to read a table and _display to show the result as an ALV list.independent, abapMacro DSL turning a one-line select into an ALV listfrom ABAP
- abap-ui-toolboxabap-ui-toolboxA collection of ABAP classes for classic SAP GUI development: an enhanced, editable ALV grid, a single-container screen framework, and a tree wrapper.independent, abapABAP classes for classic SAP GUI development: ALV, screens, treesfrom ABAP
- alv_utilitiesalv_utilitiesA single ABAP class that wraps the SALV framework so a report, dynpro or popup listing sets column text, colour, alignment, layout and sorting in single method calls, built against ABAP 7.0.independent, abapABAP class wrapping SALV to set column properties in one callfrom ABAP
- abap-alv-struc-viewerabap-alv-struc-viewerAn ABAP tool that generates an ALV table view straight from a DDIC structure, as a control-driven substitute for classic dynpro fields, with search help, validation and formatting from the structure.independent, abapALV table view generated from a DDIC structurefrom ABAP
- abap-ui-toolsabap-ui-toolsA helper class for the classic ABAP dynpro UI: hiding, disabling and requiring screen fields, setting dropdown values, and asking yes/no questions, in single calls.independent, abapHelper class for classic ABAP dynpro field handling and popupsfrom ABAP
- cds2alvcds2alvAn ABAP tool that generates an ALV list report directly from a CDS view's own field definitions, maintained on SAP_ABA 750 SP26, with further extensions shipped from a separate repository.independent, abapGenerator for ALV list reports from a CDS view's field definitionsfrom ABAP
- guidrasilguidrasilA visual designer for classic SAP GUI screens that wraps containers and controls in a generic shell and generates the ABAP program that displays the layout it places.independent, abapVisual designer generating ABAP code for classic SAP GUI screensfrom ABAP
- abapMermaidabapMermaidAn ABAP package that renders Mermaid diagrams inside an SAP GUI container through the Edge Chromium Control, from a diagram's own text syntax passed at runtime.independent, abapRenders Mermaid diagrams inside an SAP GUI containerfrom ABAP
- ZwdDynscreenZwdDynscreenAn ABAP library that generates a selection screen or a popup for a handful of parameters from objects typed by DDIC elements, without a dynpro created in the program.independent, abapSelection screens and popups generated from ABAP objects, no dynprofrom ABAP
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
abaplint
History in the atlas
- First seen.
For your agent
- Ref
artifact:kaszub09-abapeasyalv- JSON
- /artifacts/kaszub09-abapeasyalv.json
- MCP
- Connecting an agent