From 074ae5a69b8d7717b2b0269e64ab3f842508e54f Mon Sep 17 00:00:00 2001 From: Marc Bernard <59966492+mbtools@users.noreply.github.com> Date: Mon, 10 Jan 2022 09:27:17 +0100 Subject: [PATCH] Refactor: Calling batch input (#5252) * Refactor: Calling batch input Standardizes calling batch input API and handling errors. * Fix indent * Add new window Co-authored-by: Lars Hvam --- .../core/zcl_abapgit_gui_jumper.clas.abap | 38 +++++++++++++++++++ src/objects/zcl_abapgit_object_chdo.clas.abap | 19 ++-------- src/objects/zcl_abapgit_object_cus1.clas.abap | 17 ++------- src/objects/zcl_abapgit_object_dial.clas.abap | 18 +++------ src/objects/zcl_abapgit_object_doct.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_form.clas.abap | 13 ++----- src/objects/zcl_abapgit_object_idoc.clas.abap | 18 ++------- src/objects/zcl_abapgit_object_iext.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_iwmo.clas.abap | 18 ++------- src/objects/zcl_abapgit_object_iwsv.clas.abap | 18 ++------- src/objects/zcl_abapgit_object_nrob.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_pers.clas.abap | 18 ++------- src/objects/zcl_abapgit_object_shi3.clas.abap | 19 ++-------- src/objects/zcl_abapgit_object_shma.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_sicf.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_ssfo.clas.abap | 13 ++----- src/objects/zcl_abapgit_object_ssst.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_styl.clas.abap | 18 ++------- src/objects/zcl_abapgit_object_tran.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_udmo.clas.abap | 18 ++------- src/objects/zcl_abapgit_object_ueno.clas.abap | 16 ++------ src/objects/zcl_abapgit_object_vcls.clas.abap | 16 ++------ .../zcl_abapgit_object_w3xx_super.clas.abap | 16 ++------ src/ui/zif_abapgit_gui_jumper.intf.abap | 11 ++++++ 24 files changed, 121 insertions(+), 295 deletions(-) diff --git a/src/objects/core/zcl_abapgit_gui_jumper.clas.abap b/src/objects/core/zcl_abapgit_gui_jumper.clas.abap index 2d9ba80e1..6cc23ef17 100644 --- a/src/objects/core/zcl_abapgit_gui_jumper.clas.abap +++ b/src/objects/core/zcl_abapgit_gui_jumper.clas.abap @@ -179,4 +179,42 @@ CLASS zcl_abapgit_gui_jumper IMPLEMENTATION. ENDIF. ENDMETHOD. + + + METHOD zif_abapgit_gui_jumper~jump_batch_input. + + DATA lv_msg TYPE c LENGTH 80. + + IF iv_new_window = abap_true. + CALL FUNCTION 'ABAP4_CALL_TRANSACTION' + STARTING NEW TASK 'GIT' + EXPORTING + tcode = iv_tcode + mode_val = 'E' + TABLES + using_tab = it_bdcdata + EXCEPTIONS + system_failure = 1 MESSAGE lv_msg + communication_failure = 2 MESSAGE lv_msg + resource_failure = 3 + OTHERS = 4. + ELSE. + CALL FUNCTION 'ABAP4_CALL_TRANSACTION' + EXPORTING + tcode = iv_tcode + mode_val = 'E' + TABLES + using_tab = it_bdcdata + EXCEPTIONS + OTHERS = 4. + ENDIF. + + CASE sy-subrc. + WHEN 1 OR 2. + zcx_abapgit_exception=>raise( |Batch input error for transaction { iv_tcode }: { lv_msg }| ). + WHEN 3 OR 4. + zcx_abapgit_exception=>raise( |Batch input error for transaction { iv_tcode }| ). + ENDCASE. + + ENDMETHOD. ENDCLASS. diff --git a/src/objects/zcl_abapgit_object_chdo.clas.abap b/src/objects/zcl_abapgit_object_chdo.clas.abap index d8ee50ded..f1ec92234 100644 --- a/src/objects/zcl_abapgit_object_chdo.clas.abap +++ b/src/objects/zcl_abapgit_object_chdo.clas.abap @@ -339,22 +339,9 @@ CLASS zcl_abapgit_object_chdo IMPLEMENTATION. ls_bdcdata-fval = '=DISP'. APPEND ls_bdcdata TO lt_bdcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SCDO' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - system_failure = 1 - communication_failure = 2 - resource_failure = 3 - OTHERS = 4. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( |ERROR: Jump { mv_object }| ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SCDO' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_cus1.clas.abap b/src/objects/zcl_abapgit_object_cus1.clas.abap index 568e815d3..eb06f2836 100644 --- a/src/objects/zcl_abapgit_object_cus1.clas.abap +++ b/src/objects/zcl_abapgit_object_cus1.clas.abap @@ -177,19 +177,10 @@ CLASS zcl_abapgit_object_cus1 IMPLEMENTATION. -fnam = 'BDC_OKCODE'. -fval = '=ACT_DISP'. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - EXPORTING - tcode = 'S_CUS_ACTIVITY' - mode_val = 'E' - TABLES - using_tab = lt_bdc_data - EXCEPTIONS - call_transaction_denied = 1 - tcode_invalid = 2 - OTHERS = 3. - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( |Error from JUMP CUS1: { sy-subrc }| ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'S_CUS_ACTIVITY' + it_bdcdata = lt_bdc_data ). + ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_dial.clas.abap b/src/objects/zcl_abapgit_object_dial.clas.abap index 8d7d22fea..9658e4f0c 100644 --- a/src/objects/zcl_abapgit_object_dial.clas.abap +++ b/src/objects/zcl_abapgit_object_dial.clas.abap @@ -20,7 +20,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_DIAL IMPLEMENTATION. +CLASS zcl_abapgit_object_dial IMPLEMENTATION. METHOD zif_abapgit_object~changed_by. @@ -76,18 +76,10 @@ CLASS ZCL_ABAPGIT_OBJECT_DIAL IMPLEMENTATION. ls_bcdata-fval = '=BACK'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - EXPORTING - tcode = 'SE35' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, SE35' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SE35' + it_bdcdata = lt_bcdata + iv_new_window = abap_false ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_doct.clas.abap b/src/objects/zcl_abapgit_object_doct.clas.abap index 7d7deab97..a5b040051 100644 --- a/src/objects/zcl_abapgit_object_doct.clas.abap +++ b/src/objects/zcl_abapgit_object_doct.clas.abap @@ -140,19 +140,9 @@ CLASS zcl_abapgit_object_doct IMPLEMENTATION. ls_bcdata-fval = '=SHOW'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SE61' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, DOCT' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SE61' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_form.clas.abap b/src/objects/zcl_abapgit_object_form.clas.abap index e0a0da218..f0b610085 100644 --- a/src/objects/zcl_abapgit_object_form.clas.abap +++ b/src/objects/zcl_abapgit_object_form.clas.abap @@ -383,16 +383,9 @@ CLASS zcl_abapgit_object_form IMPLEMENTATION. -fnam = 'RSSCF-TDFORM'. -fval = ms_item-obj_name. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SE71' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - OTHERS = 1 - ##fm_subrc_ok. "#EC CI_SUBRC + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SE71' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_idoc.clas.abap b/src/objects/zcl_abapgit_object_idoc.clas.abap index 6705c9c46..c71db2c10 100644 --- a/src/objects/zcl_abapgit_object_idoc.clas.abap +++ b/src/objects/zcl_abapgit_object_idoc.clas.abap @@ -28,7 +28,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_IDOC IMPLEMENTATION. +CLASS zcl_abapgit_object_idoc IMPLEMENTATION. METHOD clear_idoc_segement_field. @@ -213,19 +213,9 @@ CLASS ZCL_ABAPGIT_OBJECT_IDOC IMPLEMENTATION. -fnam = 'BDC_OKCODE'. -fval = '=DISP'. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'WE30' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise_t100( ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'WE30' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_iext.clas.abap b/src/objects/zcl_abapgit_object_iext.clas.abap index 520d19f23..435c6213b 100644 --- a/src/objects/zcl_abapgit_object_iext.clas.abap +++ b/src/objects/zcl_abapgit_object_iext.clas.abap @@ -168,19 +168,9 @@ CLASS zcl_abapgit_object_iext IMPLEMENTATION. -fnam = 'BDC_OKCODE'. -fval = '=DISP'. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'WE30' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise_t100( ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'WE30' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_iwmo.clas.abap b/src/objects/zcl_abapgit_object_iwmo.clas.abap index c907cb26a..1d00ad408 100644 --- a/src/objects/zcl_abapgit_object_iwmo.clas.abap +++ b/src/objects/zcl_abapgit_object_iwmo.clas.abap @@ -111,21 +111,9 @@ CLASS zcl_abapgit_object_iwmo IMPLEMENTATION. -fnam = 'GS_MODEL_SCREEN_100-VERSION'. -fval = lv_version. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = '/IWBEP/REG_MODEL' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - call_transaction_denied = 1 - tcode_invalid = 2 - OTHERS = 3. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( |Error from ABAP4_CALL_TRANSACTION. Subrc={ sy-subrc }| ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = '/IWBEP/REG_MODEL' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_iwsv.clas.abap b/src/objects/zcl_abapgit_object_iwsv.clas.abap index 977cbf6d5..3f08bbf04 100644 --- a/src/objects/zcl_abapgit_object_iwsv.clas.abap +++ b/src/objects/zcl_abapgit_object_iwsv.clas.abap @@ -111,21 +111,9 @@ CLASS zcl_abapgit_object_iwsv IMPLEMENTATION. -fnam = 'GS_SCREEN_100-VERSION'. -fval = lv_version. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = '/IWBEP/REG_SERVICE' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - call_transaction_denied = 1 - tcode_invalid = 2 - OTHERS = 3. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( |Error from ABAP4_CALL_TRANSACTION. Subrc={ sy-subrc }| ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = '/IWBEP/REG_SERVICE' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_nrob.clas.abap b/src/objects/zcl_abapgit_object_nrob.clas.abap index 860f7b89e..397ca5509 100644 --- a/src/objects/zcl_abapgit_object_nrob.clas.abap +++ b/src/objects/zcl_abapgit_object_nrob.clas.abap @@ -248,19 +248,9 @@ CLASS zcl_abapgit_object_nrob IMPLEMENTATION. ls_bcdata-fval = '=DISP'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SNRO' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, NROB' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SNRO' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_pers.clas.abap b/src/objects/zcl_abapgit_object_pers.clas.abap index b93a81fd4..eb6638956 100644 --- a/src/objects/zcl_abapgit_object_pers.clas.abap +++ b/src/objects/zcl_abapgit_object_pers.clas.abap @@ -194,21 +194,9 @@ CLASS zcl_abapgit_object_pers IMPLEMENTATION. ls_bcdata-fval = '=PERSDISPLAY'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'PERSREG' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - call_transaction_denied = 1 - tcode_invalid = 2 - OTHERS = 3. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( |error from ABAP4_CALL_TRANSACTION, PERSREG. SUBRC= { sy-subrc }| ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'PERSREG' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_shi3.clas.abap b/src/objects/zcl_abapgit_object_shi3.clas.abap index 8564514ba..0fa086fd3 100644 --- a/src/objects/zcl_abapgit_object_shi3.clas.abap +++ b/src/objects/zcl_abapgit_object_shi3.clas.abap @@ -158,22 +158,9 @@ CLASS zcl_abapgit_object_shi3 IMPLEMENTATION. -fnam = 'BMENUNAME-ID'. -fval = ms_item-obj_name. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SE43' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - system_failure = 1 - communication_failure = 2 - resource_failure = 3 - OTHERS = 4. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, SHI3' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SE43' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_shma.clas.abap b/src/objects/zcl_abapgit_object_shma.clas.abap index 218355d55..1f99019d7 100644 --- a/src/objects/zcl_abapgit_object_shma.clas.abap +++ b/src/objects/zcl_abapgit_object_shma.clas.abap @@ -246,19 +246,9 @@ CLASS zcl_abapgit_object_shma IMPLEMENTATION. ls_bcdata-fval = '=SHOW'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SHMA' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, SHMA' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SHMA' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_sicf.clas.abap b/src/objects/zcl_abapgit_object_sicf.clas.abap index dfc86f84b..3312f19f2 100644 --- a/src/objects/zcl_abapgit_object_sicf.clas.abap +++ b/src/objects/zcl_abapgit_object_sicf.clas.abap @@ -552,19 +552,9 @@ CLASS zcl_abapgit_object_sicf IMPLEMENTATION. ls_bcdata-fval = '=ONLI'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SICF' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, SICF' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SICF' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_ssfo.clas.abap b/src/objects/zcl_abapgit_object_ssfo.clas.abap index 588bbeac7..0de530c87 100644 --- a/src/objects/zcl_abapgit_object_ssfo.clas.abap +++ b/src/objects/zcl_abapgit_object_ssfo.clas.abap @@ -386,16 +386,9 @@ CLASS zcl_abapgit_object_ssfo IMPLEMENTATION. -fnam = 'BDC_OKCODE'. -fval = '=DISPLAY'. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SMARTFORMS' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - OTHERS = 1 - ##fm_subrc_ok. "#EC CI_SUBRC + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SMARTFORMS' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_ssst.clas.abap b/src/objects/zcl_abapgit_object_ssst.clas.abap index ea1e62103..b67ac6ae5 100644 --- a/src/objects/zcl_abapgit_object_ssst.clas.abap +++ b/src/objects/zcl_abapgit_object_ssst.clas.abap @@ -200,19 +200,9 @@ CLASS zcl_abapgit_object_ssst IMPLEMENTATION. ls_bcdata-fval = '=DISPLAY'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SMARTSTYLES' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, SSST' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SMARTSTYLES' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_styl.clas.abap b/src/objects/zcl_abapgit_object_styl.clas.abap index 85f1c67b3..1f4dfa66e 100644 --- a/src/objects/zcl_abapgit_object_styl.clas.abap +++ b/src/objects/zcl_abapgit_object_styl.clas.abap @@ -17,7 +17,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_STYL IMPLEMENTATION. +CLASS zcl_abapgit_object_styl IMPLEMENTATION. METHOD zif_abapgit_object~changed_by. @@ -159,19 +159,9 @@ CLASS ZCL_ABAPGIT_OBJECT_STYL IMPLEMENTATION. ls_bcdata-fval = '=SHOW'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SE72' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, STYL' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SE72' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_tran.clas.abap b/src/objects/zcl_abapgit_object_tran.clas.abap index 4477819e8..f7409c204 100644 --- a/src/objects/zcl_abapgit_object_tran.clas.abap +++ b/src/objects/zcl_abapgit_object_tran.clas.abap @@ -834,19 +834,9 @@ CLASS zcl_abapgit_object_tran IMPLEMENTATION. -fnam = 'TSTC-TCODE'. -fval = ms_item-obj_name. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SE93' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - system_failure = 1 - communication_failure = 2 - resource_failure = 3 - OTHERS = 4 - ##fm_subrc_ok. "#EC CI_SUBRC + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SE93' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_udmo.clas.abap b/src/objects/zcl_abapgit_object_udmo.clas.abap index 6a99f8322..db1024201 100644 --- a/src/objects/zcl_abapgit_object_udmo.clas.abap +++ b/src/objects/zcl_abapgit_object_udmo.clas.abap @@ -96,7 +96,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_UDMO IMPLEMENTATION. +CLASS zcl_abapgit_object_udmo IMPLEMENTATION. METHOD access_free. @@ -734,19 +734,9 @@ CLASS ZCL_ABAPGIT_OBJECT_UDMO IMPLEMENTATION. -fnam = 'RSUD3-OBJ_KEY'. -fval = ms_item-obj_name. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SD11' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - system_failure = 1 - communication_failure = 2 - resource_failure = 3 - OTHERS = 4 - ##fm_subrc_ok. "#EC CI_SUBRC + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SD11' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_ueno.clas.abap b/src/objects/zcl_abapgit_object_ueno.clas.abap index 8b2bc9633..1c37f98df 100644 --- a/src/objects/zcl_abapgit_object_ueno.clas.abap +++ b/src/objects/zcl_abapgit_object_ueno.clas.abap @@ -614,19 +614,9 @@ CLASS zcl_abapgit_object_ueno IMPLEMENTATION. -fnam = 'RSUD3-OBJ_KEY'. -fval = ms_item-obj_name. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SD11' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - system_failure = 1 - communication_failure = 2 - resource_failure = 3 - OTHERS = 4 - ##fm_subrc_ok. "#EC CI_SUBRC + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SD11' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_vcls.clas.abap b/src/objects/zcl_abapgit_object_vcls.clas.abap index 8c85ab0c7..fc1895753 100644 --- a/src/objects/zcl_abapgit_object_vcls.clas.abap +++ b/src/objects/zcl_abapgit_object_vcls.clas.abap @@ -246,19 +246,9 @@ CLASS zcl_abapgit_object_vcls IMPLEMENTATION. ls_bcdata-fval = '=CLSH'. APPEND ls_bcdata TO lt_bcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SE54' - mode_val = 'E' - TABLES - using_tab = lt_bcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, SE35' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SE54' + it_bdcdata = lt_bcdata ). ENDMETHOD. diff --git a/src/objects/zcl_abapgit_object_w3xx_super.clas.abap b/src/objects/zcl_abapgit_object_w3xx_super.clas.abap index d705fae94..70cf12f37 100644 --- a/src/objects/zcl_abapgit_object_w3xx_super.clas.abap +++ b/src/objects/zcl_abapgit_object_w3xx_super.clas.abap @@ -417,19 +417,9 @@ CLASS zcl_abapgit_object_w3xx_super IMPLEMENTATION. ls_bdcdata-fval = '=ONLI'. APPEND ls_bdcdata TO lt_bdcdata. - CALL FUNCTION 'ABAP4_CALL_TRANSACTION' - STARTING NEW TASK 'GIT' - EXPORTING - tcode = 'SMW0' - mode_val = 'E' - TABLES - using_tab = lt_bdcdata - EXCEPTIONS - OTHERS = 1. - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from ABAP4_CALL_TRANSACTION, SE35' ). - ENDIF. + zcl_abapgit_ui_factory=>get_gui_jumper( )->jump_batch_input( + iv_tcode = 'SMW0' + it_bdcdata = lt_bdcdata ). ENDMETHOD. diff --git a/src/ui/zif_abapgit_gui_jumper.intf.abap b/src/ui/zif_abapgit_gui_jumper.intf.abap index 5622715ca..94a70b975 100644 --- a/src/ui/zif_abapgit_gui_jumper.intf.abap +++ b/src/ui/zif_abapgit_gui_jumper.intf.abap @@ -1,6 +1,9 @@ INTERFACE zif_abapgit_gui_jumper PUBLIC. + TYPES: + ty_bdcdata_tt TYPE STANDARD TABLE OF bdcdata WITH DEFAULT KEY. + METHODS jump IMPORTING !is_item TYPE zif_abapgit_definitions=>ty_item @@ -23,4 +26,12 @@ INTERFACE zif_abapgit_gui_jumper RAISING zcx_abapgit_exception. + METHODS jump_batch_input + IMPORTING + !iv_tcode TYPE sy-tcode + !it_bdcdata TYPE ty_bdcdata_tt + !iv_new_window TYPE abap_bool DEFAULT abap_true + RAISING + zcx_abapgit_exception. + ENDINTERFACE.