Hi ,
I'm stuck on an Abap program
I have to execute a Bex Query then store the retreived data, the old logic uses classe cl_RSR_Query_variables, this doesn't exist any more.
I want to keep my logic and substitute only the type of my query variable
here it is the part of logic to modify
DATA: wf_query_var TYPE REF TO cl_rsr_query_variables .
DATA: r_request TYPE REF TO cl_rsr_request.
DATA: r_dataset TYPE REF TO cl_rsr_data_set.
MOVE: query_name TO cube_name .
Convert the query name to technical id
CLEAR p_genuniid .
CALL FUNCTION 'CONVERSION_EXIT_GENID_INPUT'
EXPORTING
input = query_name
IMPORTING
output = p_genuniid.
IF p_genuniid IS INITIAL .
RAISE query_not_found .
ENDIF.
Create instance of cl_rsr_request
CREATE OBJECT r_request
EXPORTING i_genuniid = p_genuniid .
Create instance of cl_rsr_variables
i_var[] = query_variables[] .
CREATE OBJECT wf_query_var
EXPORTING
i_r_request = r_request
i_t_nvar = i_var
EXCEPTIONS
user_not_authorized = 1
no_processing = 2
bad_value_combination = 3
x_message = 4
OTHERS = 5.
IF sy-subrc <> 0.
CASE sy-subrc .
WHEN 1 .
RAISE user_not_authorized .
WHEN 3 .
RAISE bad_value_combination .
WHEN OTHERS .
RAISE unknown_error .
ENDCASE .
ENDIF.
Set the variable and execute the query
TRY.
r_request->variables_set( i_t_var = i_var ).
r_request->variables_start( ).
r_request->read_data( ).
r_dataset = cl_rsr_data_set=>get( i_r_request = r_request ).
.....
Thanks for any suggestion