Buenas tardes,
En su momento tome como una solución rápida obtener los datos del ALV.
Dejo aquí código para poder lograr esto, sin embargo este codigo lo tengo para otro programa, solo es de cambiar nombre de programa y hacer el submit con los parámetros que se necesitan.
Saludos.
&---------------------------------------------------------------------
*& Report ZPR_GET_ALV_FROM_SUBMIT
&---------------------------------------------------------------------
*&
&---------------------------------------------------------------------
REPORT zpr_get_alv_from_submit.
START-OF-SELECTION.
TYPES : BEGIN OF w_tab .
INCLUDE STRUCTURE rkpos . " You need to add structure as per your reqirment .
TYPES: END OF w_tab .
DATA: text TYPE c LENGTH 10,
lt_selscreen TYPE TABLE OF rsparams WITH HEADER LINE.
DATA: it_tab TYPE trty_rfvdaccountreportalv,
wa_tab LIKE LINE OF it_tab,
so_ranl type RANGE OF vdarl-ranl,
wa_ran1 LIKE LINE OF so_ranl.
FIELD-SYMBOLS : <lt_pay_data> TYPE ANY TABLE .
FIELD-SYMBOLS : <lt_test> TYPE any . "LIKE LINE OF it_tab .
DATA lr_pay_data TYPE REF TO data.
cl_salv_bs_runtime_info=>set( EXPORTING display = abap_false
metadata = abap_false
data = abap_true ).
wa_ran1-sign = ‘I’.
wa_ran1-option = ‘EQ’.
wa_ran1-low = ‘0000030000055’.
APPEND wa_ran1 to so_ranl.
SUBMIT rfvd_ioa_calc_mult WITH SELECTION-TABLE lt_selscreen
WITH p_bukrs = ‘1500’
WITH o_ranl in so_ranl
WITH p_stag = ‘20190301’
WITH p_test = ‘X’
*WITH kstgr = ‘1001’
*WITH p_disvar = ‘//COST’
*WITH p_tcode = ‘KSB1’
AND RETURN.
TRY.
cl_salv_bs_runtime_info=>get_data_ref( IMPORTING r_data = lr_pay_data ).
ASSIGN lr_pay_data->* TO <lt_pay_data>.
CATCH cx_salv_bs_sc_runtime_info.
MESSAGE `Unable to retrieve ALV data` TYPE 'E'.
ENDTRY.
cl_salv_bs_runtime_info=>clear_all( ).
LOOP AT <lt_pay_data> ASSIGNING <lt_test>.
MOVE-CORRESPONDING <lt_test> TO wa_tab .
APPEND wa_tab TO it_tab .
ENDLOOP.
sort it_tab.
delete ADJACENT DUPLICATES FROm it_tab.
WRITE: ‘Hola’.