An addon of abap2UI5
Classic ABAP reports, as UI5 apps - on ABAP Cloud and down to 7.02
Selection screen, WRITE list, ALV grid, START-OF-SELECTION,
AT LINE-SELECTION, MESSAGE: write a class that reads like a report and get
an app in the browser. The reports you have already convert with report2cloud -
try it below, nothing leaves your browser.
No SAP GUI on ABAP Cloud
No selection screens, no lists, no CL_SALV_TABLE. A report of ten minutes on premise
turns into RAP, CDS and a Fiori app. abap-cloud-gui keeps the report model and renders it with abap2UI5.
The concepts you know
Event blocks are methods of the same name, PARAMETERS and SELECT-OPTIONS are
attributes, write( ) writes the list, alv( ) shows a grid - with drilldown,
value helps, variants and messages. No UI5 knowledge needed.
Converted, not rewritten
report2cloud turns a .prog.abap into a report class: FORMs into methods, the list and the
ALV into their counterparts, dynpros and SAP GUI controls into stand-ins. What it cannot convert it
refuses with the line - it never guesses.
A report as a class
CLASS zcl_hello DEFINITION PUBLIC INHERITING FROM z2ui5_cl_cgui_report FINAL CREATE PUBLIC.
PUBLIC SECTION.
DATA p_name TYPE string.
DATA p_times TYPE i.
PROTECTED SECTION.
METHODS selection_screen REDEFINITION.
METHODS start_of_selection REDEFINITION.
ENDCLASS.
CLASS zcl_hello IMPLEMENTATION.
METHOD selection_screen.
screen->parameter( val = p_name text = `Your name` obligatory = abap_true
)->parameter( val = p_times text = `Lines` ).
ENDMETHOD.
METHOD start_of_selection.
write( |Hello { p_name }!| )->uline( ).
DO p_times TIMES.
write( |Line { sy-index }| )->new_line( ).
ENDDO.
ENDMETHOD.
ENDCLASS.
Start it like any abap2UI5 app (?app_start=zcl_hello): the selection screen comes up,
Execute runs the report and shows the list, Back returns.
report2cloud playground
Paste a classic report of your own, or pick an example, and it is converted as you type. The converter
runs in this page - the same code as npm run report2cloud; nothing is sent anywhere.
Includes and the repository's DDIC are not there, so a report that needs them converts with TODOs.
Text pool .prog.xml, optional - the selection texts and text symbols
The generated class appears here.
Measured on the web
Every week the converter runs over the open-source ABAP of the web - the share that converts, the refusals ranked, and how many of the converted reports start in the transpiled runtime.
Checked like code
abaplint against ABAP Cloud and 7.02, the abap2UI5 linter, ABAP Unit in a transpiled runtime, and a runtime test that drives every converted sample report through the UI5 protocol.
Open source
MIT licensed, installed with abapGit, part of abap2UI5-addons. Issues and pull requests welcome.