src/zgoog_i_bqtr_gen_repl_objl_im3.prog.abap (112 lines of code) (raw):
**********************************************************************
* Copyright 2024 Google LLC *
* *
* Licensed under the Apache License, Version 2.0 (the "License"); *
* you may not use this file except in compliance with the License. *
* You may obtain a copy of the License at *
* https://www.apache.org/licenses/LICENSE-2.0 *
* Unless required by applicable law or agreed to in writing, *
* software distributed under the License is distributed on an *
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, *
* either express or implied. *
* See the License for the specific language governing permissions *
* and limitations under the License. *
**********************************************************************
CLASS lcl_output_handler IMPLEMENTATION.
METHOD change_screen.
LOOP AT SCREEN.
IF iv_mandt = abap_false.
IF screen-group1 = 'M01'.
screen-input = 0.
screen-invisible = 1.
MODIFY SCREEN.
ENDIF.
ELSE.
IF screen-group1 = 'M01'.
screen-input = 1.
screen-invisible = 0.
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
ENDMETHOD.
METHOD f4_transport_request.
CALL FUNCTION 'TR_F4_REQUESTS'
IMPORTING
ev_selected_request = cv_trkorr " Selected request
.
ENDMETHOD.
METHOD f4_bw_logical_system.
DATA: lt_ret_tab TYPE STANDARD TABLE OF ddshretval,
lt_field_tab TYPE STANDARD TABLE OF dfies,
ls_ret_tab TYPE ddshretval,
lv_value TYPE help_info-fldvalue.
FIELD-SYMBOLS: <ls_field> TYPE dfies.
SELECT * FROM rslogsysodp INTO TABLE @DATA(lt_rslogsysodp).
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'LOGSYS'
value_org = 'S'
value = lv_value
TABLES
value_tab = lt_rslogsysodp
field_tab = lt_field_tab
return_tab = lt_ret_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc = 0.
READ TABLE lt_ret_tab INTO ls_ret_tab INDEX 1.
IF sy-subrc = 0.
cv_logsys = ls_ret_tab-fieldval.
ENDIF.
ENDIF.
ENDMETHOD.
METHOD f4_application_component.
DATA: lt_ret_tab TYPE STANDARD TABLE OF ddshretval,
lt_field_tab TYPE STANDARD TABLE OF dfies,
ls_ret_tab TYPE ddshretval,
lv_value TYPE help_info-fldvalue.
FIELD-SYMBOLS: <ls_field> TYPE dfies.
SELECT roappl~applnm, roapplt~txtlg FROM roappl LEFT JOIN
roapplt ON roappl~applnm = roapplt~applnm
AND langu = @sy-langu
INTO TABLE @DATA(lt_roappl).
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'APPLNM'
value_org = 'S'
value = lv_value
TABLES
value_tab = lt_roappl
field_tab = lt_field_tab
return_tab = lt_ret_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc = 0.
READ TABLE lt_ret_tab INTO ls_ret_tab INDEX 1.
IF sy-subrc = 0.
cv_appl = ls_ret_tab-fieldval.
ENDIF.
ENDIF.
ENDMETHOD.
METHOD f4_rspc_trigger.
DATA: lt_ret_tab TYPE STANDARD TABLE OF ddshretval,
lt_field_tab TYPE STANDARD TABLE OF dfies,
ls_ret_tab TYPE ddshretval,
lv_value TYPE help_info-fldvalue.
FIELD-SYMBOLS: <ls_field> TYPE dfies.
SELECT rspctriggert~variante, txtlg FROM rspctrigger LEFT JOIN
rspctriggert ON rspctrigger~variante = rspctriggert~variante
AND langu = @sy-langu
INTO TABLE @DATA(lt_trigger).
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'APPLNM'
value_org = 'S'
value = lv_value
TABLES
value_tab = lt_trigger
field_tab = lt_field_tab
return_tab = lt_ret_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc = 0.
READ TABLE lt_ret_tab INTO ls_ret_tab INDEX 1.
IF sy-subrc = 0.
cv_trig = ls_ret_tab-fieldval.
ENDIF.
ENDIF.
ENDMETHOD.
ENDCLASS.