mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
Change transport type when setting original system (#6816)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
parent
0d35e9377e
commit
37390a521e
|
@ -82,7 +82,7 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS ZCL_ABAPGIT_CTS_API IMPLEMENTATION.
|
CLASS zcl_abapgit_cts_api IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD get_current_transport_for_obj.
|
METHOD get_current_transport_for_obj.
|
||||||
|
@ -213,6 +213,56 @@ CLASS ZCL_ABAPGIT_CTS_API IMPLEMENTATION.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD zif_abapgit_cts_api~change_transport_type.
|
||||||
|
|
||||||
|
DATA ls_request_header TYPE trwbo_request_header.
|
||||||
|
|
||||||
|
CALL FUNCTION 'ENQUEUE_E_TRKORR'
|
||||||
|
EXPORTING
|
||||||
|
trkorr = iv_transport_request
|
||||||
|
EXCEPTIONS
|
||||||
|
foreign_lock = 1
|
||||||
|
system_failure = 2
|
||||||
|
OTHERS = 3.
|
||||||
|
IF sy-subrc <> 0.
|
||||||
|
zcx_abapgit_exception=>raise_t100( ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
CALL FUNCTION 'TRINT_READ_REQUEST_HEADER'
|
||||||
|
EXPORTING
|
||||||
|
iv_read_e070 = abap_true
|
||||||
|
iv_read_e070c = abap_true
|
||||||
|
CHANGING
|
||||||
|
cs_request = ls_request_header
|
||||||
|
EXCEPTIONS
|
||||||
|
empty_trkorr = 1
|
||||||
|
not_exist_e070 = 2
|
||||||
|
OTHERS = 3.
|
||||||
|
IF sy-subrc <> 0.
|
||||||
|
zcx_abapgit_exception=>raise_t100( ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
CALL FUNCTION 'TRINT_CHANGE_TRFUNCTION'
|
||||||
|
EXPORTING
|
||||||
|
iv_new_trfunction = iv_transport_type
|
||||||
|
CHANGING
|
||||||
|
cs_request_header = ls_request_header
|
||||||
|
EXCEPTIONS
|
||||||
|
action_aborted_by_user = 1
|
||||||
|
change_not_allowed = 2
|
||||||
|
db_access_error = 3
|
||||||
|
OTHERS = 4.
|
||||||
|
IF sy-subrc <> 0.
|
||||||
|
zcx_abapgit_exception=>raise_t100( ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
CALL FUNCTION 'DEQUEUE_E_TRKORR'
|
||||||
|
EXPORTING
|
||||||
|
trkorr = iv_transport_request.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD zif_abapgit_cts_api~confirm_transport_messages.
|
METHOD zif_abapgit_cts_api~confirm_transport_messages.
|
||||||
|
|
||||||
TYPES: BEGIN OF ty_s_message,
|
TYPES: BEGIN OF ty_s_message,
|
||||||
|
|
|
@ -153,4 +153,11 @@ INTERFACE zif_abapgit_cts_api
|
||||||
!iv_transport_request TYPE trkorr
|
!iv_transport_request TYPE trkorr
|
||||||
RAISING
|
RAISING
|
||||||
zcx_abapgit_exception .
|
zcx_abapgit_exception .
|
||||||
|
|
||||||
|
METHODS change_transport_type
|
||||||
|
IMPORTING
|
||||||
|
!iv_transport_request TYPE trkorr
|
||||||
|
!iv_transport_type TYPE trfunction
|
||||||
|
RAISING
|
||||||
|
zcx_abapgit_exception.
|
||||||
ENDINTERFACE.
|
ENDINTERFACE.
|
||||||
|
|
|
@ -158,9 +158,10 @@ CLASS zcl_abapgit_objects DEFINITION
|
||||||
zcx_abapgit_exception .
|
zcx_abapgit_exception .
|
||||||
CLASS-METHODS update_original_system
|
CLASS-METHODS update_original_system
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!it_items TYPE zif_abapgit_definitions=>ty_items_tt
|
!it_items TYPE zif_abapgit_definitions=>ty_items_tt
|
||||||
!ii_log TYPE REF TO zif_abapgit_log
|
!ii_log TYPE REF TO zif_abapgit_log
|
||||||
!io_dot TYPE REF TO zcl_abapgit_dot_abapgit
|
!io_dot TYPE REF TO zcl_abapgit_dot_abapgit
|
||||||
|
!iv_transport TYPE trkorr
|
||||||
RAISING
|
RAISING
|
||||||
zcx_abapgit_exception .
|
zcx_abapgit_exception .
|
||||||
CLASS-METHODS check_objects_locked
|
CLASS-METHODS check_objects_locked
|
||||||
|
@ -869,9 +870,10 @@ CLASS zcl_abapgit_objects IMPLEMENTATION.
|
||||||
|
|
||||||
" Set the original system for all updated objects to what's defined in repo settings
|
" Set the original system for all updated objects to what's defined in repo settings
|
||||||
update_original_system(
|
update_original_system(
|
||||||
it_items = lt_items
|
it_items = lt_items
|
||||||
ii_log = ii_log
|
ii_log = ii_log
|
||||||
io_dot = io_repo->get_dot_abapgit( ) ).
|
io_dot = io_repo->get_dot_abapgit( )
|
||||||
|
iv_transport = is_checks-transport-transport ).
|
||||||
|
|
||||||
zcl_abapgit_factory=>get_default_transport( )->reset( ).
|
zcl_abapgit_factory=>get_default_transport( )->reset( ).
|
||||||
|
|
||||||
|
@ -1336,6 +1338,7 @@ CLASS zcl_abapgit_objects IMPLEMENTATION.
|
||||||
METHOD update_original_system.
|
METHOD update_original_system.
|
||||||
|
|
||||||
DATA lv_srcsystem TYPE tadir-srcsystem.
|
DATA lv_srcsystem TYPE tadir-srcsystem.
|
||||||
|
DATA lv_errors TYPE abap_bool.
|
||||||
DATA lv_msg TYPE string.
|
DATA lv_msg TYPE string.
|
||||||
|
|
||||||
FIELD-SYMBOLS <ls_item> LIKE LINE OF it_items.
|
FIELD-SYMBOLS <ls_item> LIKE LINE OF it_items.
|
||||||
|
@ -1392,10 +1395,18 @@ CLASS zcl_abapgit_objects IMPLEMENTATION.
|
||||||
ii_log->add_error(
|
ii_log->add_error(
|
||||||
iv_msg = lv_msg
|
iv_msg = lv_msg
|
||||||
is_item = <ls_item> ).
|
is_item = <ls_item> ).
|
||||||
|
lv_errors = abap_true.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
|
IF lv_errors IS INITIAL.
|
||||||
|
" Since original system has changed, the type of transport request needs to be switched to "Repair"
|
||||||
|
zcl_abapgit_factory=>get_cts_api( )->change_transport_type(
|
||||||
|
iv_transport_request = iv_transport
|
||||||
|
iv_transport_type = zif_abapgit_cts_api=>c_transport_type-wb_repair ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user