src/zgoog_i_bqtr_gen_repl_obj_def.prog.abap (75 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_file_handler DEFINITION DEFERRED. CLASS lcl_tool DEFINITION. PUBLIC SECTION. CLASS-METHODS run. TYPES: BEGIN OF mty_data, trkey TYPE /goog/trkey, dsname TYPE rsoltpsourcer, ds TYPE ddlname, logsy TYPE rsslogsys, appl TYPE rsapplnm, adso TYPE char9, chain TYPE rspc_chain, trig TYPE rspc_variant, durmi TYPE btcpmin, info TYPE rsinfoarea, mfnam TYPE name_feld, active TYPE boolean, END OF mty_data, mtt_data TYPE STANDARD TABLE OF mty_data WITH NON-UNIQUE DEFAULT KEY. PRIVATE SECTION. TYPES: BEGIN OF mty_output, cds TYPE ddlname, status TYPE char10, description TYPE string, value TYPE string, type TYPE bapi_mtype, error TYPE bapi_msg, END OF mty_output. CLASS-DATA: mt_output TYPE STANDARD TABLE OF mty_output, mt_data TYPE STANDARD TABLE OF mty_data. CLASS-METHODS cleanup IMPORTING iv_trkey TYPE /goog/trkey iv_dsname TYPE rsoltpsourcer iv_ds TYPE ddlname OPTIONAL iv_logsy TYPE rsslogsys iv_appl TYPE rsapplnm iv_adso TYPE char9 iv_chain TYPE rspc_chain iv_trig TYPE rspc_variant iv_info TYPE rsinfoarea. CLASS-METHODS create IMPORTING iv_trkey TYPE /goog/trkey iv_dsname TYPE rsoltpsourcer iv_ds TYPE ddlname iv_logsy TYPE rsslogsys iv_appl TYPE rsapplnm iv_adso TYPE char9 iv_chain TYPE rspc_chain iv_trig TYPE rspc_variant iv_durmi TYPE btcpmin iv_info TYPE rsinfoarea iv_active TYPE boolean iv_mfnam TYPE name_feld. CLASS-METHODS display. CLASS-METHODS get_data. CLASS-METHODS add_status IMPORTING iv_ds TYPE ddlname iv_description TYPE string iv_value TYPE string iv_category TYPE c DEFAULT 'C' it_return TYPE bapiret2_t OPTIONAL. ENDCLASS. CLASS lcl_file_handler DEFINITION. PUBLIC SECTION. CLASS-METHODS download_template. CLASS-METHODS f4_file CHANGING cv_file TYPE string. CLASS-METHODS f4_directory CHANGING cv_file TYPE string. CLASS-METHODS csv_to_itab IMPORTING iv_file TYPE string CHANGING ct_table TYPE lcl_tool=>mtt_data. ENDCLASS. CLASS lcl_output_handler DEFINITION. PUBLIC SECTION. CLASS-METHODS: f4_transport_request CHANGING cv_trkorr TYPE trkorr. CLASS-METHODS: f4_bw_logical_system CHANGING cv_logsys TYPE rsslogsys. CLASS-METHODS: f4_rspc_trigger CHANGING cv_trig TYPE rspc_variant. CLASS-METHODS: f4_application_component CHANGING cv_appl TYPE rsapplnm. CLASS-METHODS: change_screen IMPORTING iv_mandt TYPE flag. ENDCLASS.