mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
Adjust usage of transport in object classes (#5218)
After #5216 Replaces `zcl_abapgit_default_transport=>get_instance( )->get( )` logic with `iv_transport` for the following object types: `AMSD, BDEF, DRUL, DTDC, FDT0, FUGR, INTF, PROG, SQSC, SRVB, SRVD, WDCA` Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
parent
2791d54c0b
commit
2eaaff7ad9
|
@ -30,14 +30,6 @@ CLASS zcl_abapgit_object_amsd DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
RAISING
|
||||
zcx_abapgit_exception,
|
||||
|
||||
get_transport_req_if_needed
|
||||
IMPORTING
|
||||
iv_package TYPE devclass
|
||||
RETURNING
|
||||
VALUE(rv_transport_request) TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception,
|
||||
|
||||
get_wb_object_operator
|
||||
RETURNING
|
||||
VALUE(ri_wb_object_operator) TYPE REF TO object
|
||||
|
@ -49,7 +41,6 @@ CLASS zcl_abapgit_object_amsd DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
mv_logical_db_schema_key TYPE seu_objkey,
|
||||
mi_persistence TYPE REF TO if_wb_object_persist,
|
||||
mi_wb_object_operator TYPE REF TO object.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
@ -163,19 +154,6 @@ CLASS zcl_abapgit_object_amsd IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_transport_req_if_needed.
|
||||
|
||||
DATA: li_sap_package TYPE REF TO zif_abapgit_sap_package.
|
||||
|
||||
li_sap_package = zcl_abapgit_factory=>get_sap_package( iv_package ).
|
||||
|
||||
IF li_sap_package->are_changes_recorded_in_tr_req( ) = abap_true.
|
||||
rv_transport_request = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_wb_object_operator.
|
||||
|
||||
DATA:
|
||||
|
@ -233,16 +211,14 @@ CLASS zcl_abapgit_object_amsd IMPLEMENTATION.
|
|||
|
||||
DATA:
|
||||
li_wb_object_operator TYPE REF TO object,
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr.
|
||||
lx_error TYPE REF TO cx_root.
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
li_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
TRY.
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~DELETE')
|
||||
EXPORTING
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
|
@ -256,8 +232,7 @@ CLASS zcl_abapgit_object_amsd IMPLEMENTATION.
|
|||
DATA:
|
||||
li_object_data_model TYPE REF TO if_wb_object_data_model,
|
||||
li_wb_object_operator TYPE REF TO object,
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr.
|
||||
lx_error TYPE REF TO cx_root.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<ls_logical_db_schema> TYPE any.
|
||||
|
@ -278,8 +253,6 @@ CLASS zcl_abapgit_object_amsd IMPLEMENTATION.
|
|||
|
||||
tadir_insert( iv_package ).
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
|
||||
IF zif_abapgit_object~exists( ) = abap_true.
|
||||
|
||||
" We need to populate created_at, created_by, because otherwise update is not possible
|
||||
|
@ -289,7 +262,7 @@ CLASS zcl_abapgit_object_amsd IMPLEMENTATION.
|
|||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = li_object_data_model
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ELSE.
|
||||
|
||||
|
@ -300,13 +273,13 @@ CLASS zcl_abapgit_object_amsd IMPLEMENTATION.
|
|||
io_object_data = li_object_data_model
|
||||
data_selection = 'P' " if_wb_object_data_selection_co=>c_properties
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = li_object_data_model
|
||||
data_selection = 'D' " if_wb_object_data_selection_co=>c_data_content
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ENDIF.
|
||||
|
||||
|
|
|
@ -27,13 +27,6 @@ CLASS zcl_abapgit_object_bdef DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
!iv_fieldname TYPE csequence
|
||||
CHANGING
|
||||
!cs_metadata TYPE any .
|
||||
METHODS get_transport_req_if_needed
|
||||
IMPORTING
|
||||
!iv_package TYPE devclass
|
||||
RETURNING
|
||||
VALUE(rv_transport_request) TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS get_wb_object_operator
|
||||
RETURNING
|
||||
VALUE(ri_wb_object_operator) TYPE REF TO object
|
||||
|
@ -261,19 +254,6 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_transport_req_if_needed.
|
||||
|
||||
DATA: li_sap_package TYPE REF TO zif_abapgit_sap_package.
|
||||
|
||||
li_sap_package = zcl_abapgit_factory=>get_sap_package( iv_package ).
|
||||
|
||||
IF li_sap_package->are_changes_recorded_in_tr_req( ) = abap_true.
|
||||
rv_transport_request = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_wb_object_operator.
|
||||
|
||||
DATA:
|
||||
|
@ -395,17 +375,14 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
|
|||
|
||||
DATA:
|
||||
lx_error TYPE REF TO cx_root,
|
||||
li_wb_object_operator TYPE REF TO object,
|
||||
lv_transport_request TYPE trkorr.
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
li_wb_object_operator TYPE REF TO object.
|
||||
|
||||
li_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
TRY.
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~DELETE')
|
||||
EXPORTING
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
|
@ -421,7 +398,6 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
|
|||
lo_object_data_merged TYPE REF TO if_wb_object_data_model,
|
||||
lo_wb_object_operator TYPE REF TO object,
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr,
|
||||
lr_wbobjtype TYPE REF TO data,
|
||||
lr_category TYPE REF TO data.
|
||||
|
||||
|
@ -433,7 +409,6 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
|
|||
TRY.
|
||||
|
||||
lo_object_data = get_object_data( io_xml ).
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
|
||||
CREATE DATA lr_wbobjtype TYPE ('WBOBJTYPE').
|
||||
ASSIGN lr_wbobjtype->* TO <ls_wbobjtype>.
|
||||
|
@ -464,7 +439,7 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
|
|||
data_selection = 'AL' " if_wb_object_data_selection_co=>c_all_data
|
||||
version = 'I'
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN '2'. "if_wb_adt_plugin_resource_co=>co_sfs_res_category_compound_s.
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~CREATE')
|
||||
EXPORTING
|
||||
|
@ -472,14 +447,14 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
|
|||
data_selection = 'P' " if_wb_object_data_selection_co=>c_properties
|
||||
version = 'I'
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = lo_object_data
|
||||
data_selection = 'D' "if_wb_object_data_selection_co=>c_data_content
|
||||
version = 'I'
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN OTHERS.
|
||||
ENDCASE.
|
||||
ELSE.
|
||||
|
@ -491,20 +466,20 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
|
|||
io_object_data = lo_object_data_merged
|
||||
data_selection = 'AL' "if_wb_object_data_selection_co=>c_all_data
|
||||
version = 'I'
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN '2'. "if_wb_adt_plugin_resource_co=>co_sfs_res_category_compound_s.
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = lo_object_data_merged
|
||||
data_selection = 'P' "if_wb_object_data_selection_co=>c_properties
|
||||
version = 'I'
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = lo_object_data_merged
|
||||
data_selection = 'D' "if_wb_object_data_selection_co=>c_data_content
|
||||
version = 'I'
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN OTHERS.
|
||||
ENDCASE.
|
||||
ENDIF.
|
||||
|
|
|
@ -30,14 +30,6 @@ CLASS zcl_abapgit_object_drul DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
RAISING
|
||||
zcx_abapgit_exception,
|
||||
|
||||
get_transport_req_if_needed
|
||||
IMPORTING
|
||||
iv_package TYPE devclass
|
||||
RETURNING
|
||||
VALUE(rv_transport_request) TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception,
|
||||
|
||||
get_wb_object_operator
|
||||
RETURNING
|
||||
VALUE(ri_wb_object_operator) TYPE REF TO object
|
||||
|
@ -49,7 +41,6 @@ CLASS zcl_abapgit_object_drul DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
mv_dependency_rule_key TYPE seu_objkey,
|
||||
mi_persistence TYPE REF TO if_wb_object_persist,
|
||||
mi_wb_object_operator TYPE REF TO object.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
@ -187,19 +178,6 @@ CLASS zcl_abapgit_object_drul IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_transport_req_if_needed.
|
||||
|
||||
DATA: li_sap_package TYPE REF TO zif_abapgit_sap_package.
|
||||
|
||||
li_sap_package = zcl_abapgit_factory=>get_sap_package( iv_package ).
|
||||
|
||||
IF li_sap_package->are_changes_recorded_in_tr_req( ) = abap_true.
|
||||
rv_transport_request = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_wb_object_operator.
|
||||
|
||||
DATA:
|
||||
|
@ -257,16 +235,14 @@ CLASS zcl_abapgit_object_drul IMPLEMENTATION.
|
|||
|
||||
DATA:
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr,
|
||||
li_wb_object_operator TYPE REF TO object.
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
li_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
TRY.
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~DELETE')
|
||||
EXPORTING
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
|
@ -280,8 +256,7 @@ CLASS zcl_abapgit_object_drul IMPLEMENTATION.
|
|||
DATA:
|
||||
li_object_data_model TYPE REF TO if_wb_object_data_model,
|
||||
li_wb_object_operator TYPE REF TO object,
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr.
|
||||
lx_error TYPE REF TO cx_root.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<ls_dependency_rule> TYPE any,
|
||||
|
@ -309,8 +284,6 @@ CLASS zcl_abapgit_object_drul IMPLEMENTATION.
|
|||
|
||||
tadir_insert( iv_package ).
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
|
||||
IF zif_abapgit_object~exists( ) = abap_true.
|
||||
|
||||
" We need to populate created_at, created_by, because otherwise update is not possible
|
||||
|
@ -320,7 +293,7 @@ CLASS zcl_abapgit_object_drul IMPLEMENTATION.
|
|||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = li_object_data_model
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ELSE.
|
||||
|
||||
|
@ -331,13 +304,13 @@ CLASS zcl_abapgit_object_drul IMPLEMENTATION.
|
|||
io_object_data = li_object_data_model
|
||||
data_selection = 'P' " if_wb_object_data_selection_co=>c_properties
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = li_object_data_model
|
||||
data_selection = 'D' " if_wb_object_data_selection_co=>c_data_content
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ENDIF.
|
||||
|
||||
|
|
|
@ -30,14 +30,6 @@ CLASS zcl_abapgit_object_dtdc DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
RAISING
|
||||
zcx_abapgit_exception,
|
||||
|
||||
get_transport_req_if_needed
|
||||
IMPORTING
|
||||
iv_package TYPE devclass
|
||||
RETURNING
|
||||
VALUE(rv_transport_request) TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception,
|
||||
|
||||
get_wb_object_operator
|
||||
RETURNING
|
||||
VALUE(ri_wb_object_operator) TYPE REF TO object
|
||||
|
@ -49,7 +41,6 @@ CLASS zcl_abapgit_object_dtdc DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
mv_dynamic_cache_key TYPE seu_objkey,
|
||||
mi_persistence TYPE REF TO if_wb_object_persist,
|
||||
mi_wb_object_operator TYPE REF TO object.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
@ -187,19 +178,6 @@ CLASS zcl_abapgit_object_dtdc IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_transport_req_if_needed.
|
||||
|
||||
DATA: li_sap_package TYPE REF TO zif_abapgit_sap_package.
|
||||
|
||||
li_sap_package = zcl_abapgit_factory=>get_sap_package( iv_package ).
|
||||
|
||||
IF li_sap_package->are_changes_recorded_in_tr_req( ) = abap_true.
|
||||
rv_transport_request = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_wb_object_operator.
|
||||
|
||||
DATA:
|
||||
|
@ -257,17 +235,14 @@ CLASS zcl_abapgit_object_dtdc IMPLEMENTATION.
|
|||
|
||||
DATA:
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr,
|
||||
li_wb_object_operator TYPE REF TO object.
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
|
||||
TRY.
|
||||
li_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~DELETE')
|
||||
EXPORTING
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
|
@ -281,8 +256,7 @@ CLASS zcl_abapgit_object_dtdc IMPLEMENTATION.
|
|||
DATA:
|
||||
li_object_data_model TYPE REF TO if_wb_object_data_model,
|
||||
li_wb_object_operator TYPE REF TO object,
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr.
|
||||
lx_error TYPE REF TO cx_root.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<ls_dynamic_cache> TYPE any,
|
||||
|
@ -310,8 +284,6 @@ CLASS zcl_abapgit_object_dtdc IMPLEMENTATION.
|
|||
|
||||
tadir_insert( iv_package ).
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
|
||||
IF zif_abapgit_object~exists( ) = abap_true.
|
||||
|
||||
" We need to populate created_at, created_by, because otherwise update is not possible
|
||||
|
@ -321,7 +293,7 @@ CLASS zcl_abapgit_object_dtdc IMPLEMENTATION.
|
|||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = li_object_data_model
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ELSE.
|
||||
|
||||
|
@ -332,13 +304,13 @@ CLASS zcl_abapgit_object_dtdc IMPLEMENTATION.
|
|||
io_object_data = li_object_data_model
|
||||
data_selection = 'P' " if_wb_object_data_selection_co=>c_properties
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = li_object_data_model
|
||||
data_selection = 'D' " if_wb_object_data_selection_co=>c_data_content
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ENDIF.
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@ ENDCLASS.
|
|||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_OBJECT_FDT0 IMPLEMENTATION.
|
||||
CLASS zcl_abapgit_object_fdt0 IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD before_xml_deserialize.
|
||||
|
@ -394,16 +394,12 @@ CLASS ZCL_ABAPGIT_OBJECT_FDT0 IMPLEMENTATION.
|
|||
METHOD zif_abapgit_object~delete.
|
||||
|
||||
DATA lv_is_local TYPE abap_bool.
|
||||
DATA lv_ordernum TYPE trkorr.
|
||||
DATA lt_application_id TYPE TABLE OF fdt_admn_0000s-application_id.
|
||||
DATA ls_object_category_sel TYPE if_fdt_query=>s_object_category_sel.
|
||||
DATA lv_failure TYPE abap_bool.
|
||||
DATA lx_fdt_input TYPE REF TO cx_fdt_input.
|
||||
|
||||
lv_is_local = check_is_local( ).
|
||||
IF lv_is_local = abap_false.
|
||||
lv_ordernum = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
ENDIF.
|
||||
|
||||
SELECT application_id FROM fdt_admn_0000s INTO TABLE lt_application_id
|
||||
WHERE object_type = 'AP'
|
||||
|
@ -507,7 +503,6 @@ CLASS ZCL_ABAPGIT_OBJECT_FDT0 IMPLEMENTATION.
|
|||
DATA lx_fdt_input TYPE REF TO cx_fdt_input.
|
||||
DATA lo_dom_tree TYPE REF TO if_ixml_document.
|
||||
DATA lv_is_local TYPE abap_bool.
|
||||
DATA lv_ordernum TYPE trkorr.
|
||||
DATA lt_message TYPE if_fdt_types=>t_message.
|
||||
DATA lv_create TYPE abap_bool.
|
||||
|
||||
|
@ -541,15 +536,13 @@ CLASS ZCL_ABAPGIT_OBJECT_FDT0 IMPLEMENTATION.
|
|||
|
||||
ELSE. "Transportable Object
|
||||
|
||||
lv_ordernum = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
|
||||
lo_dexc->import_xml(
|
||||
EXPORTING
|
||||
io_dom_tree = lo_dom_tree
|
||||
iv_create = lv_create
|
||||
iv_activate = abap_true
|
||||
iv_simulate = abap_false
|
||||
iv_workbench_trrequest = lv_ordernum
|
||||
iv_workbench_trrequest = iv_transport
|
||||
IMPORTING
|
||||
et_message = lt_message ).
|
||||
|
||||
|
|
|
@ -72,6 +72,7 @@ CLASS zcl_abapgit_object_fugr DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
IMPORTING
|
||||
!it_functions TYPE ty_function_tt
|
||||
!ii_log TYPE REF TO zif_abapgit_log
|
||||
!iv_transport TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS serialize_xml
|
||||
|
@ -81,8 +82,9 @@ CLASS zcl_abapgit_object_fugr DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
zcx_abapgit_exception .
|
||||
METHODS deserialize_xml
|
||||
IMPORTING
|
||||
!ii_xml TYPE REF TO zif_abapgit_xml_input
|
||||
!iv_package TYPE devclass
|
||||
!ii_xml TYPE REF TO zif_abapgit_xml_input
|
||||
!iv_package TYPE devclass
|
||||
!iv_transport TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS serialize_includes
|
||||
|
@ -145,6 +147,40 @@ ENDCLASS.
|
|||
CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD belongs_incl_to_other_fugr.
|
||||
" make sure that the include belongs to the function group
|
||||
" like in LSEAPFAP Form TADIR_MAINTENANCE
|
||||
DATA ls_tadir TYPE tadir.
|
||||
DATA lv_namespace TYPE rs38l-namespace.
|
||||
DATA lv_area TYPE rs38l-area.
|
||||
DATA lv_include TYPE rs38l-include.
|
||||
|
||||
rv_belongs_to_other_fugr = abap_false.
|
||||
IF iv_include(1) = 'L' OR iv_include+1 CS '/L'.
|
||||
lv_include = iv_include.
|
||||
ls_tadir-object = 'FUGR'.
|
||||
|
||||
CALL FUNCTION 'FUNCTION_INCLUDE_SPLIT'
|
||||
IMPORTING
|
||||
namespace = lv_namespace
|
||||
group = lv_area
|
||||
CHANGING
|
||||
include = lv_include
|
||||
EXCEPTIONS
|
||||
OTHERS = 1.
|
||||
IF lv_area(1) = 'X'. " "EXIT"-function-module
|
||||
ls_tadir-object = 'FUGS'.
|
||||
ENDIF.
|
||||
IF sy-subrc = 0.
|
||||
CONCATENATE lv_namespace lv_area INTO ls_tadir-obj_name.
|
||||
IF ls_tadir-obj_name <> ms_item-obj_name.
|
||||
rv_belongs_to_other_fugr = abap_true.
|
||||
ENDIF.
|
||||
ENDIF.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD check_rfc_parameters.
|
||||
|
||||
* function module RS_FUNCTIONMODULE_INSERT does the same deep down, but the right error
|
||||
|
@ -199,14 +235,10 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
lv_namespace TYPE rs38l-namespace,
|
||||
lt_source TYPE TABLE OF abaptxt255,
|
||||
lv_msg TYPE string,
|
||||
lx_error TYPE REF TO zcx_abapgit_exception,
|
||||
lv_corrnum TYPE e070use-ordernum.
|
||||
lx_error TYPE REF TO zcx_abapgit_exception.
|
||||
|
||||
FIELD-SYMBOLS: <ls_func> LIKE LINE OF it_functions.
|
||||
|
||||
|
||||
lv_corrnum = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
|
||||
LOOP AT it_functions ASSIGNING <ls_func>.
|
||||
|
||||
lt_source = mo_files->read_abap( iv_extra = <ls_func>-funcname ).
|
||||
|
@ -274,7 +306,7 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
exception_class = <ls_func>-exception_classes
|
||||
namespace = lv_namespace
|
||||
remote_basxml_supported = <ls_func>-remote_basxml
|
||||
corrnum = lv_corrnum
|
||||
corrnum = iv_transport
|
||||
IMPORTING
|
||||
function_include = lv_include
|
||||
TABLES
|
||||
|
@ -397,8 +429,7 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
lv_areat TYPE tlibt-areat,
|
||||
lv_stext TYPE tftit-stext,
|
||||
lv_group TYPE rs38l-area,
|
||||
lv_abap_version TYPE trdir-uccheck,
|
||||
lv_corrnum TYPE e070use-ordernum.
|
||||
lv_abap_version TYPE trdir-uccheck.
|
||||
|
||||
lv_abap_version = get_abap_version( ii_xml ).
|
||||
lv_complete = ms_item-obj_name.
|
||||
|
@ -429,7 +460,6 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
ii_xml->read( EXPORTING iv_name = 'AREAT'
|
||||
CHANGING cg_data = lv_areat ).
|
||||
lv_stext = lv_areat.
|
||||
lv_corrnum = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
|
||||
CALL FUNCTION 'RS_FUNCTION_POOL_INSERT'
|
||||
EXPORTING
|
||||
|
@ -438,7 +468,7 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
namespace = lv_namespace
|
||||
devclass = iv_package
|
||||
unicode_checks = lv_abap_version
|
||||
corrnum = lv_corrnum
|
||||
corrnum = iv_transport
|
||||
suppress_corr_check = abap_false
|
||||
EXCEPTIONS
|
||||
name_already_exists = 1
|
||||
|
@ -1021,21 +1051,18 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
METHOD zif_abapgit_object~delete.
|
||||
|
||||
DATA: lv_area TYPE rs38l-area,
|
||||
lt_includes TYPE ty_sobj_name_tt,
|
||||
lv_corrnum TYPE e070use-ordernum.
|
||||
|
||||
lt_includes TYPE ty_sobj_name_tt.
|
||||
|
||||
lt_includes = includes( ).
|
||||
|
||||
lv_area = ms_item-obj_name.
|
||||
lv_corrnum = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
|
||||
CALL FUNCTION 'RS_FUNCTION_POOL_DELETE'
|
||||
EXPORTING
|
||||
area = lv_area
|
||||
suppress_popups = abap_true
|
||||
skip_progress_ind = abap_true
|
||||
corrnum = lv_corrnum
|
||||
corrnum = iv_transport
|
||||
EXCEPTIONS
|
||||
canceled_in_corr = 1
|
||||
enqueue_system_failure = 2
|
||||
|
@ -1064,14 +1091,16 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
ls_cua TYPE ty_cua.
|
||||
|
||||
deserialize_xml(
|
||||
ii_xml = io_xml
|
||||
iv_package = iv_package ).
|
||||
ii_xml = io_xml
|
||||
iv_package = iv_package
|
||||
iv_transport = iv_transport ).
|
||||
|
||||
io_xml->read( EXPORTING iv_name = 'FUNCTIONS'
|
||||
CHANGING cg_data = lt_functions ).
|
||||
deserialize_functions(
|
||||
it_functions = lt_functions
|
||||
ii_log = ii_log ).
|
||||
ii_log = ii_log
|
||||
iv_transport = iv_transport ).
|
||||
|
||||
deserialize_includes(
|
||||
ii_xml = io_xml
|
||||
|
@ -1205,38 +1234,4 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
|
|||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD belongs_incl_to_other_fugr.
|
||||
" make sure that the include belongs to the function group
|
||||
" like in LSEAPFAP Form TADIR_MAINTENANCE
|
||||
DATA ls_tadir TYPE tadir.
|
||||
DATA lv_namespace TYPE rs38l-namespace.
|
||||
DATA lv_area TYPE rs38l-area.
|
||||
DATA lv_include TYPE rs38l-include.
|
||||
|
||||
rv_belongs_to_other_fugr = abap_false.
|
||||
IF iv_include(1) = 'L' OR iv_include+1 CS '/L'.
|
||||
lv_include = iv_include.
|
||||
ls_tadir-object = 'FUGR'.
|
||||
|
||||
CALL FUNCTION 'FUNCTION_INCLUDE_SPLIT'
|
||||
IMPORTING
|
||||
namespace = lv_namespace
|
||||
group = lv_area
|
||||
CHANGING
|
||||
include = lv_include
|
||||
EXCEPTIONS
|
||||
OTHERS = 1.
|
||||
IF lv_area(1) = 'X'. " "EXIT"-function-module
|
||||
ls_tadir-object = 'FUGS'.
|
||||
ENDIF.
|
||||
IF sy-subrc = 0.
|
||||
CONCATENATE lv_namespace lv_area INTO ls_tadir-obj_name.
|
||||
IF ls_tadir-obj_name <> ms_item-obj_name.
|
||||
rv_belongs_to_other_fugr = abap_true.
|
||||
ENDIF.
|
||||
ENDIF.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
|
|
|
@ -9,6 +9,8 @@ CLASS zcl_abapgit_object_intf DEFINITION PUBLIC FINAL INHERITING FROM zcl_abapgi
|
|||
PROTECTED SECTION.
|
||||
|
||||
METHODS deserialize_proxy
|
||||
IMPORTING
|
||||
!iv_transport TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS deserialize_abap
|
||||
|
@ -105,16 +107,15 @@ CLASS zcl_abapgit_object_intf IMPLEMENTATION.
|
|||
|
||||
METHOD deserialize_proxy.
|
||||
|
||||
DATA: lv_transport TYPE e070use-ordernum,
|
||||
DATA: lv_transport TYPE trkorr,
|
||||
li_proxy_object TYPE REF TO if_px_main,
|
||||
lv_name TYPE prx_r3name,
|
||||
lx_proxy_fault TYPE REF TO cx_proxy_fault.
|
||||
|
||||
lv_transport = zcl_abapgit_default_transport=>get_instance(
|
||||
)->get( )-ordernum.
|
||||
|
||||
lv_name = ms_item-obj_name.
|
||||
|
||||
lv_transport = iv_transport.
|
||||
|
||||
TRY.
|
||||
li_proxy_object = cl_pxn_factory=>create(
|
||||
application = 'PROXY_UI'
|
||||
|
@ -251,7 +252,7 @@ CLASS zcl_abapgit_object_intf IMPLEMENTATION.
|
|||
|
||||
IF ls_vseointerf-clsproxy = abap_true.
|
||||
" Proxy interfaces are managed via SPRX
|
||||
deserialize_proxy( ).
|
||||
deserialize_proxy( iv_transport ).
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
|
|
|
@ -161,15 +161,13 @@ CLASS zcl_abapgit_object_prog IMPLEMENTATION.
|
|||
|
||||
DATA:
|
||||
lv_program LIKE sy-repid,
|
||||
lv_obj_name TYPE e071-obj_name,
|
||||
lv_corrnumber TYPE e071-trkorr.
|
||||
lv_obj_name TYPE e071-obj_name.
|
||||
|
||||
lv_program = ms_item-obj_name.
|
||||
lv_corrnumber = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
|
||||
CALL FUNCTION 'RS_DELETE_PROGRAM'
|
||||
EXPORTING
|
||||
corrnumber = lv_corrnumber
|
||||
corrnumber = iv_transport
|
||||
program = lv_program
|
||||
suppress_popup = abap_true
|
||||
mass_delete_call = abap_true
|
||||
|
|
|
@ -97,8 +97,7 @@ CLASS zcl_abapgit_object_sqsc DEFINITION
|
|||
END OF ty_proxy.
|
||||
|
||||
DATA:
|
||||
mo_proxy TYPE REF TO object,
|
||||
mv_transport TYPE e070use-ordernum.
|
||||
mo_proxy TYPE REF TO object.
|
||||
|
||||
METHODS:
|
||||
delete_interface_if_it_exists
|
||||
|
@ -136,10 +135,6 @@ CLASS zcl_abapgit_object_sqsc IMPLEMENTATION.
|
|||
|
||||
<lv_dbproxyname> = ms_item-obj_name.
|
||||
|
||||
mv_transport = zcl_abapgit_default_transport=>get_instance(
|
||||
)->get(
|
||||
)-ordernum.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
|
@ -182,7 +177,7 @@ CLASS zcl_abapgit_object_sqsc IMPLEMENTATION.
|
|||
TRY.
|
||||
CALL METHOD mo_proxy->('IF_DBPROC_PROXY_UI~DELETE')
|
||||
EXPORTING
|
||||
if_transport_req = mv_transport.
|
||||
if_transport_req = iv_transport.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
|
@ -212,7 +207,7 @@ CLASS zcl_abapgit_object_sqsc IMPLEMENTATION.
|
|||
CALL METHOD mo_proxy->('IF_DBPROC_PROXY_UI~CREATE')
|
||||
EXPORTING
|
||||
if_interface_pool = ls_proxy-header-interface_pool
|
||||
if_transport_req = mv_transport
|
||||
if_transport_req = iv_transport
|
||||
if_package = iv_package
|
||||
if_langu = mv_language.
|
||||
|
||||
|
@ -221,7 +216,7 @@ CLASS zcl_abapgit_object_sqsc IMPLEMENTATION.
|
|||
TRY.
|
||||
CALL METHOD mo_proxy->('IF_DBPROC_PROXY_UI~WRITE_TO_SOURCE')
|
||||
EXPORTING
|
||||
if_transport_req = mv_transport
|
||||
if_transport_req = iv_transport
|
||||
is_header = ls_proxy-header
|
||||
it_parameter = ls_proxy-parameters
|
||||
it_parameter_type = ls_proxy-parameter_types.
|
||||
|
|
|
@ -23,13 +23,6 @@ CLASS zcl_abapgit_object_srvb DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
iv_fieldname TYPE csequence
|
||||
CHANGING
|
||||
cs_service_binding TYPE any.
|
||||
METHODS get_transport_req_if_needed
|
||||
IMPORTING
|
||||
!iv_package TYPE devclass
|
||||
RETURNING
|
||||
VALUE(rv_transport_request) TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS get_wb_object_operator
|
||||
RETURNING
|
||||
VALUE(ro_object_operator) TYPE REF TO object
|
||||
|
@ -59,11 +52,13 @@ CLASS zcl_abapgit_object_srvb DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
mr_service_binding TYPE REF TO data,
|
||||
mr_srvb_svrs_config TYPE REF TO object,
|
||||
mo_object_operator TYPE REF TO object.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD clear_field.
|
||||
|
||||
FIELD-SYMBOLS: <lv_value> TYPE data.
|
||||
|
@ -130,18 +125,57 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
|
|||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD get_transport_req_if_needed.
|
||||
|
||||
DATA: li_sap_package TYPE REF TO zif_abapgit_sap_package.
|
||||
METHOD constructor.
|
||||
|
||||
li_sap_package = zcl_abapgit_factory=>get_sap_package( iv_package ).
|
||||
super->constructor(
|
||||
is_item = is_item
|
||||
iv_language = iv_language ).
|
||||
|
||||
IF li_sap_package->are_changes_recorded_in_tr_req( ) = abap_true.
|
||||
rv_transport_request = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
ENDIF.
|
||||
mv_service_binding_key = ms_item-obj_name.
|
||||
|
||||
TRY.
|
||||
CREATE DATA mr_service_binding TYPE ('CL_SRVB_OBJECT_DATA=>TY_OBJECT_DATA').
|
||||
CREATE OBJECT mi_persistence TYPE ('CL_SRVB_OBJECT_PERSIST').
|
||||
|
||||
CATCH cx_sy_create_error.
|
||||
zcx_abapgit_exception=>raise( |SRVB not supported by your NW release| ).
|
||||
ENDTRY.
|
||||
|
||||
mv_is_inactive_supported = is_ai_supported( ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_object_data.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<ls_service_binding> TYPE any,
|
||||
<lv_language> TYPE data.
|
||||
|
||||
ASSIGN mr_service_binding->* TO <ls_service_binding>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
io_xml->read(
|
||||
EXPORTING
|
||||
iv_name = 'SRVB'
|
||||
CHANGING
|
||||
cg_data = <ls_service_binding> ).
|
||||
|
||||
|
||||
" We have to set the language explicitly,
|
||||
" because otherwise the description isn't stored
|
||||
ASSIGN COMPONENT 'METADATA-LANGUAGE' OF STRUCTURE <ls_service_binding>
|
||||
TO <lv_language>.
|
||||
ASSERT sy-subrc = 0.
|
||||
<lv_language> = mv_language.
|
||||
|
||||
CREATE OBJECT ro_object_data TYPE ('CL_SRVB_OBJECT_DATA').
|
||||
ro_object_data->set_data( p_data = <ls_service_binding> ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_wb_object_operator.
|
||||
|
||||
DATA:
|
||||
|
@ -171,34 +205,21 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
|
|||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD get_object_data.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<ls_service_binding> TYPE any,
|
||||
<lv_language> TYPE data.
|
||||
|
||||
ASSIGN mr_service_binding->* TO <ls_service_binding>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
io_xml->read(
|
||||
EXPORTING
|
||||
iv_name = 'SRVB'
|
||||
CHANGING
|
||||
cg_data = <ls_service_binding> ).
|
||||
|
||||
|
||||
" We have to set the language explicitly,
|
||||
" because otherwise the description isn't stored
|
||||
ASSIGN COMPONENT 'METADATA-LANGUAGE' OF STRUCTURE <ls_service_binding>
|
||||
TO <lv_language>.
|
||||
ASSERT sy-subrc = 0.
|
||||
<lv_language> = mv_language.
|
||||
|
||||
CREATE OBJECT ro_object_data TYPE ('CL_SRVB_OBJECT_DATA').
|
||||
ro_object_data->set_data( p_data = <ls_service_binding> ).
|
||||
METHOD is_ai_supported.
|
||||
TRY.
|
||||
CREATE OBJECT mr_srvb_svrs_config TYPE ('CL_SRVB_SVRS_CONFIG')
|
||||
EXPORTING iv_objtype = 'SRVB'.
|
||||
CATCH cx_sy_create_error.
|
||||
rv_ai_supported = abap_false.
|
||||
ENDTRY.
|
||||
CALL METHOD mr_srvb_svrs_config->('HAS_INACTIVE_VERSION')
|
||||
RECEIVING
|
||||
rv_has_inactive = rv_ai_supported.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD merge_object_data.
|
||||
|
||||
DATA:
|
||||
|
@ -259,38 +280,6 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
|
|||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_ai_supported.
|
||||
TRY.
|
||||
CREATE OBJECT mr_srvb_svrs_config TYPE ('CL_SRVB_SVRS_CONFIG')
|
||||
EXPORTING iv_objtype = 'SRVB'.
|
||||
CATCH cx_sy_create_error.
|
||||
rv_ai_supported = abap_false.
|
||||
ENDTRY.
|
||||
CALL METHOD mr_srvb_svrs_config->('HAS_INACTIVE_VERSION')
|
||||
RECEIVING
|
||||
rv_has_inactive = rv_ai_supported.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD constructor.
|
||||
|
||||
super->constructor(
|
||||
is_item = is_item
|
||||
iv_language = iv_language ).
|
||||
|
||||
mv_service_binding_key = ms_item-obj_name.
|
||||
|
||||
TRY.
|
||||
CREATE DATA mr_service_binding TYPE ('CL_SRVB_OBJECT_DATA=>TY_OBJECT_DATA').
|
||||
CREATE OBJECT mi_persistence TYPE ('CL_SRVB_OBJECT_PERSIST').
|
||||
|
||||
CATCH cx_sy_create_error.
|
||||
zcx_abapgit_exception=>raise( |SRVB not supported by your NW release| ).
|
||||
ENDTRY.
|
||||
|
||||
mv_is_inactive_supported = is_ai_supported( ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_object~changed_by.
|
||||
|
||||
|
@ -338,14 +327,12 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
|
|||
DATA:
|
||||
lo_object_data TYPE REF TO if_wb_object_data_model,
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr,
|
||||
lo_wb_object_operator TYPE REF TO object,
|
||||
lo_merged_data_all TYPE REF TO if_wb_object_data_model,
|
||||
lv_version TYPE r3state.
|
||||
|
||||
TRY.
|
||||
lo_object_data = get_object_data( io_xml ).
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
lo_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
IF mv_is_inactive_supported = abap_true.
|
||||
|
@ -364,7 +351,7 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
|
|||
data_selection = 'AL' "if_wb_object_data_selection_co=>c_all_data
|
||||
version = lv_version
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ELSE.
|
||||
|
||||
|
@ -374,7 +361,7 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
|
|||
io_object_data = lo_merged_data_all
|
||||
data_selection = 'AL' "if_wb_object_data_selection_co=>c_all_data
|
||||
version = lv_version
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
ENDIF.
|
||||
|
||||
|
|
|
@ -36,13 +36,6 @@ CLASS zcl_abapgit_object_srvd DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
VALUE(ro_object_data) TYPE REF TO if_wb_object_data_model
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS get_transport_req_if_needed
|
||||
IMPORTING
|
||||
!iv_package TYPE devclass
|
||||
RETURNING
|
||||
VALUE(rv_transport_request) TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS get_wb_object_operator
|
||||
RETURNING
|
||||
VALUE(ro_object_operator) TYPE REF TO object
|
||||
|
@ -65,7 +58,91 @@ ENDCLASS.
|
|||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
||||
CLASS zcl_abapgit_object_srvd IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD clear_field.
|
||||
|
||||
FIELD-SYMBOLS: <lv_value> TYPE data.
|
||||
|
||||
ASSIGN COMPONENT iv_fieldname OF STRUCTURE cs_metadata
|
||||
TO <lv_value>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CLEAR: <lv_value>.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD clear_fields.
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'VERSION'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CREATED_AT'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CREATED_BY'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CHANGED_AT'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CHANGED_BY'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'RESPONSIBLE'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'PACKAGE_REF'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'MASTER_SYSTEM'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'DT_UUID'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'ABAP_LANGUAGE_VERSION'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'LINKS'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD constructor.
|
||||
|
@ -84,6 +161,156 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_object_data.
|
||||
|
||||
DATA:
|
||||
lr_metadata TYPE REF TO data,
|
||||
lr_data TYPE REF TO data.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<lv_metadata_node> TYPE any,
|
||||
<ls_metadata> TYPE any,
|
||||
<lv_source> TYPE any,
|
||||
<lg_data> TYPE any.
|
||||
|
||||
CREATE DATA lr_data TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA').
|
||||
ASSIGN lr_data->* TO <lg_data>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
ASSIGN COMPONENT 'METADATA' OF STRUCTURE <lg_data> TO <lv_metadata_node>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CREATE DATA lr_metadata TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_METADATA_EXTENDED').
|
||||
ASSIGN lr_metadata->* TO <ls_metadata>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
io_xml->read(
|
||||
EXPORTING
|
||||
iv_name = mc_xml_parent_name
|
||||
CHANGING
|
||||
cg_data = <ls_metadata> ).
|
||||
|
||||
<lv_metadata_node> = <ls_metadata>.
|
||||
|
||||
ASSIGN COMPONENT 'CONTENT-SOURCE' OF STRUCTURE <lg_data> TO <lv_source>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
<lv_source> = mo_files->read_string( mc_source_file ).
|
||||
IF <lv_source> IS INITIAL.
|
||||
<lv_source> = mo_files->read_string( 'assrvd' ).
|
||||
ENDIF.
|
||||
|
||||
CREATE OBJECT ro_object_data TYPE ('CL_SRVD_WB_OBJECT_DATA').
|
||||
ro_object_data->set_data( p_data = <lg_data> ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_wb_object_operator.
|
||||
|
||||
DATA:
|
||||
ls_object_type TYPE wbobjtype,
|
||||
lx_error TYPE REF TO cx_root.
|
||||
|
||||
IF mo_object_operator IS BOUND.
|
||||
ro_object_operator = mo_object_operator.
|
||||
ENDIF.
|
||||
|
||||
ls_object_type-objtype_tr = 'SRVD'.
|
||||
ls_object_type-subtype_wb = 'SRV'.
|
||||
|
||||
TRY.
|
||||
CALL METHOD ('CL_WB_OBJECT_OPERATOR')=>('CREATE_INSTANCE')
|
||||
EXPORTING
|
||||
object_type = ls_object_type
|
||||
object_key = mv_service_definition_key
|
||||
RECEIVING
|
||||
result = mo_object_operator.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
ENDTRY.
|
||||
|
||||
ro_object_operator = mo_object_operator.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD is_ddic.
|
||||
rv_ddic = abap_false.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD is_delete_tadir.
|
||||
rv_delete_tadir = abap_true.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD merge_object_data.
|
||||
|
||||
DATA:
|
||||
lo_object_data TYPE REF TO object,
|
||||
lo_object_data_old TYPE REF TO if_wb_object_data_model,
|
||||
lr_new TYPE REF TO data,
|
||||
lr_old TYPE REF TO data,
|
||||
lo_wb_object_operator TYPE REF TO object.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<ls_new> TYPE any,
|
||||
<ls_old> TYPE any,
|
||||
<lv_field_old> TYPE any,
|
||||
<lv_field_new> TYPE any.
|
||||
|
||||
CREATE OBJECT lo_object_data TYPE ('CL_SRVD_WB_OBJECT_DATA').
|
||||
lo_object_data = io_object_data.
|
||||
|
||||
CREATE DATA lr_new TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA').
|
||||
ASSIGN lr_new->* TO <ls_new>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CREATE DATA lr_old TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA').
|
||||
ASSIGN lr_old->* TO <ls_old>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CALL METHOD lo_object_data->('IF_WB_OBJECT_DATA_MODEL~GET_DATA')
|
||||
EXPORTING
|
||||
p_metadata_only = abap_false
|
||||
p_data_selection = 'AL'
|
||||
IMPORTING
|
||||
p_data = <ls_new>.
|
||||
|
||||
lo_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~READ')
|
||||
EXPORTING
|
||||
data_selection = 'AL' " if_wb_object_data_selection_co=>c_all_data
|
||||
IMPORTING
|
||||
eo_object_data = lo_object_data_old.
|
||||
|
||||
CALL METHOD lo_object_data_old->('GET_DATA')
|
||||
EXPORTING
|
||||
p_metadata_only = abap_false
|
||||
p_data_selection = 'AL' " if_wb_object_data_selection_co=>c_all_data
|
||||
IMPORTING
|
||||
p_data = <ls_old>.
|
||||
|
||||
ASSIGN COMPONENT 'METADATA-DESCRIPTION' OF STRUCTURE <ls_old> TO <lv_field_old>.
|
||||
ASSIGN COMPONENT 'METADATA-DESCRIPTION' OF STRUCTURE <ls_new> TO <lv_field_new>.
|
||||
<lv_field_old> = <lv_field_new>.
|
||||
|
||||
ASSIGN COMPONENT 'CONTENT-SOURCE' OF STRUCTURE <ls_old> TO <lv_field_old>.
|
||||
ASSIGN COMPONENT 'CONTENT-SOURCE' OF STRUCTURE <ls_new> TO <lv_field_new>.
|
||||
<lv_field_old> = <lv_field_new>.
|
||||
|
||||
CREATE OBJECT ro_object_data_merged TYPE ('CL_SRVD_WB_OBJECT_DATA').
|
||||
|
||||
CALL METHOD ro_object_data_merged->('SET_DATA')
|
||||
EXPORTING
|
||||
p_data = <ls_old>.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_object~changed_by.
|
||||
|
||||
DATA:
|
||||
|
@ -110,17 +337,14 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
METHOD zif_abapgit_object~delete.
|
||||
DATA:
|
||||
lx_error TYPE REF TO cx_root,
|
||||
li_wb_object_operator TYPE REF TO object,
|
||||
lv_transport_request TYPE trkorr.
|
||||
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
li_wb_object_operator TYPE REF TO object.
|
||||
|
||||
li_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
TRY.
|
||||
CALL METHOD li_wb_object_operator->('IF_WB_OBJECT_OPERATOR~DELETE')
|
||||
EXPORTING
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
|
@ -133,7 +357,6 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
DATA:
|
||||
lo_object_data TYPE REF TO if_wb_object_data_model,
|
||||
lx_error TYPE REF TO cx_root,
|
||||
lv_transport_request TYPE trkorr,
|
||||
lo_wb_object_operator TYPE REF TO object,
|
||||
lo_merged_data_all TYPE REF TO if_wb_object_data_model,
|
||||
lo_merged_data_prop TYPE REF TO if_wb_object_data_model,
|
||||
|
@ -148,7 +371,6 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
|
||||
TRY.
|
||||
lo_object_data = get_object_data( io_xml ).
|
||||
lv_transport_request = get_transport_req_if_needed( iv_package ).
|
||||
lo_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
CREATE DATA lr_wbobjtype TYPE ('WBOBJTYPE').
|
||||
|
@ -180,7 +402,7 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
data_selection = 'AL' "if_wb_object_data_selection_co=>c_all_data
|
||||
version = 'I' "swbm_version_inactive
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN '2'. "if_wb_adt_plugin_resource_co=>co_sfs_res_category_compound_s.
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~CREATE')
|
||||
EXPORTING
|
||||
|
@ -188,13 +410,13 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
data_selection = 'P' "if_wb_object_data_selection_co=>c_properties
|
||||
version = 'I' "swbm_version_inactive
|
||||
package = iv_package
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = lo_object_data
|
||||
data_selection = 'D' "if_wb_object_data_selection_co=>c_data_content
|
||||
version = 'I' "swbm_version_inactive
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN OTHERS.
|
||||
zcx_abapgit_exception=>raise( |Category '{ <lv_category> }' not supported| ).
|
||||
ENDCASE.
|
||||
|
@ -207,7 +429,7 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
io_object_data = lo_merged_data_all
|
||||
data_selection = 'AL' "if_wb_object_data_selection_co=>c_all_data
|
||||
version = 'I' "swbm_version_inactive
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN '2'. "if_wb_adt_plugin_resource_co=>co_sfs_res_category_compound_s.
|
||||
lo_merged_data_prop = merge_object_data( lo_object_data ).
|
||||
lo_merged_data_cont = merge_object_data( lo_object_data ).
|
||||
|
@ -216,13 +438,13 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
io_object_data = lo_merged_data_prop
|
||||
data_selection = 'P' "if_wb_object_data_selection_co=>c_properties
|
||||
version = 'I' "swbm_version_inactive
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~UPDATE')
|
||||
EXPORTING
|
||||
io_object_data = lo_merged_data_cont
|
||||
data_selection = 'D' "if_wb_object_data_selection_co=>c_data_content
|
||||
version = 'I' "swbm_version_inactive
|
||||
transport_request = lv_transport_request.
|
||||
transport_request = iv_transport.
|
||||
WHEN OTHERS.
|
||||
zcx_abapgit_exception=>raise( |Category '{ <lv_category> }' not supported| ).
|
||||
ENDCASE.
|
||||
|
@ -347,251 +569,4 @@ CLASS ZCL_ABAPGIT_OBJECT_SRVD IMPLEMENTATION.
|
|||
ENDTRY.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD merge_object_data.
|
||||
|
||||
DATA:
|
||||
lo_object_data TYPE REF TO object,
|
||||
lo_object_data_old TYPE REF TO if_wb_object_data_model,
|
||||
lr_new TYPE REF TO data,
|
||||
lr_old TYPE REF TO data,
|
||||
lo_wb_object_operator TYPE REF TO object.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<ls_new> TYPE any,
|
||||
<ls_old> TYPE any,
|
||||
<lv_field_old> TYPE any,
|
||||
<lv_field_new> TYPE any.
|
||||
|
||||
CREATE OBJECT lo_object_data TYPE ('CL_SRVD_WB_OBJECT_DATA').
|
||||
lo_object_data = io_object_data.
|
||||
|
||||
CREATE DATA lr_new TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA').
|
||||
ASSIGN lr_new->* TO <ls_new>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CREATE DATA lr_old TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA').
|
||||
ASSIGN lr_old->* TO <ls_old>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CALL METHOD lo_object_data->('IF_WB_OBJECT_DATA_MODEL~GET_DATA')
|
||||
EXPORTING
|
||||
p_metadata_only = abap_false
|
||||
p_data_selection = 'AL'
|
||||
IMPORTING
|
||||
p_data = <ls_new>.
|
||||
|
||||
lo_wb_object_operator = get_wb_object_operator( ).
|
||||
|
||||
CALL METHOD lo_wb_object_operator->('IF_WB_OBJECT_OPERATOR~READ')
|
||||
EXPORTING
|
||||
data_selection = 'AL' " if_wb_object_data_selection_co=>c_all_data
|
||||
IMPORTING
|
||||
eo_object_data = lo_object_data_old.
|
||||
|
||||
CALL METHOD lo_object_data_old->('GET_DATA')
|
||||
EXPORTING
|
||||
p_metadata_only = abap_false
|
||||
p_data_selection = 'AL' " if_wb_object_data_selection_co=>c_all_data
|
||||
IMPORTING
|
||||
p_data = <ls_old>.
|
||||
|
||||
ASSIGN COMPONENT 'METADATA-DESCRIPTION' OF STRUCTURE <ls_old> TO <lv_field_old>.
|
||||
ASSIGN COMPONENT 'METADATA-DESCRIPTION' OF STRUCTURE <ls_new> TO <lv_field_new>.
|
||||
<lv_field_old> = <lv_field_new>.
|
||||
|
||||
ASSIGN COMPONENT 'CONTENT-SOURCE' OF STRUCTURE <ls_old> TO <lv_field_old>.
|
||||
ASSIGN COMPONENT 'CONTENT-SOURCE' OF STRUCTURE <ls_new> TO <lv_field_new>.
|
||||
<lv_field_old> = <lv_field_new>.
|
||||
|
||||
CREATE OBJECT ro_object_data_merged TYPE ('CL_SRVD_WB_OBJECT_DATA').
|
||||
|
||||
CALL METHOD ro_object_data_merged->('SET_DATA')
|
||||
EXPORTING
|
||||
p_data = <ls_old>.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD is_delete_tadir.
|
||||
rv_delete_tadir = abap_true.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD is_ddic.
|
||||
rv_ddic = abap_false.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_wb_object_operator.
|
||||
|
||||
DATA:
|
||||
ls_object_type TYPE wbobjtype,
|
||||
lx_error TYPE REF TO cx_root.
|
||||
|
||||
IF mo_object_operator IS BOUND.
|
||||
ro_object_operator = mo_object_operator.
|
||||
ENDIF.
|
||||
|
||||
ls_object_type-objtype_tr = 'SRVD'.
|
||||
ls_object_type-subtype_wb = 'SRV'.
|
||||
|
||||
TRY.
|
||||
CALL METHOD ('CL_WB_OBJECT_OPERATOR')=>('CREATE_INSTANCE')
|
||||
EXPORTING
|
||||
object_type = ls_object_type
|
||||
object_key = mv_service_definition_key
|
||||
RECEIVING
|
||||
result = mo_object_operator.
|
||||
|
||||
CATCH cx_root INTO lx_error.
|
||||
zcx_abapgit_exception=>raise_with_text( lx_error ).
|
||||
ENDTRY.
|
||||
|
||||
ro_object_operator = mo_object_operator.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_transport_req_if_needed.
|
||||
|
||||
DATA: li_sap_package TYPE REF TO zif_abapgit_sap_package.
|
||||
|
||||
li_sap_package = zcl_abapgit_factory=>get_sap_package( iv_package ).
|
||||
|
||||
IF li_sap_package->are_changes_recorded_in_tr_req( ) = abap_true.
|
||||
rv_transport_request = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_object_data.
|
||||
|
||||
DATA:
|
||||
lr_metadata TYPE REF TO data,
|
||||
lr_data TYPE REF TO data.
|
||||
|
||||
FIELD-SYMBOLS:
|
||||
<lv_metadata_node> TYPE any,
|
||||
<ls_metadata> TYPE any,
|
||||
<lv_source> TYPE any,
|
||||
<lg_data> TYPE any.
|
||||
|
||||
CREATE DATA lr_data TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA').
|
||||
ASSIGN lr_data->* TO <lg_data>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
ASSIGN COMPONENT 'METADATA' OF STRUCTURE <lg_data> TO <lv_metadata_node>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CREATE DATA lr_metadata TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_METADATA_EXTENDED').
|
||||
ASSIGN lr_metadata->* TO <ls_metadata>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
io_xml->read(
|
||||
EXPORTING
|
||||
iv_name = mc_xml_parent_name
|
||||
CHANGING
|
||||
cg_data = <ls_metadata> ).
|
||||
|
||||
<lv_metadata_node> = <ls_metadata>.
|
||||
|
||||
ASSIGN COMPONENT 'CONTENT-SOURCE' OF STRUCTURE <lg_data> TO <lv_source>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
<lv_source> = mo_files->read_string( mc_source_file ).
|
||||
IF <lv_source> IS INITIAL.
|
||||
<lv_source> = mo_files->read_string( 'assrvd' ).
|
||||
ENDIF.
|
||||
|
||||
CREATE OBJECT ro_object_data TYPE ('CL_SRVD_WB_OBJECT_DATA').
|
||||
ro_object_data->set_data( p_data = <lg_data> ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD clear_fields.
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'VERSION'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CREATED_AT'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CREATED_BY'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CHANGED_AT'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'CHANGED_BY'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'RESPONSIBLE'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'PACKAGE_REF'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'MASTER_SYSTEM'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'DT_UUID'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'ABAP_LANGUAGE_VERSION'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
clear_field(
|
||||
EXPORTING
|
||||
iv_fieldname = 'LINKS'
|
||||
CHANGING
|
||||
cs_metadata = cs_metadata ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD clear_field.
|
||||
|
||||
FIELD-SYMBOLS: <lv_value> TYPE data.
|
||||
|
||||
ASSIGN COMPONENT iv_fieldname OF STRUCTURE cs_metadata
|
||||
TO <lv_value>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CLEAR: <lv_value>.
|
||||
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
|
|
|
@ -20,14 +20,16 @@ CLASS zcl_abapgit_object_wdca DEFINITION
|
|||
zcx_abapgit_exception .
|
||||
METHODS save
|
||||
IMPORTING
|
||||
!is_outline TYPE wdy_cfg_outline_data
|
||||
!it_data TYPE wdy_cfg_persist_data_appl_tab
|
||||
!iv_package TYPE devclass
|
||||
!is_outline TYPE wdy_cfg_outline_data
|
||||
!it_data TYPE wdy_cfg_persist_data_appl_tab
|
||||
!iv_package TYPE devclass
|
||||
!iv_transport TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS delete
|
||||
IMPORTING
|
||||
!iv_package TYPE devclass
|
||||
!iv_package TYPE devclass
|
||||
!iv_transport TYPE trkorr
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS check
|
||||
|
@ -63,8 +65,7 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
|
|||
ls_outline TYPE wdy_cfg_outline_data,
|
||||
lv_operation TYPE i,
|
||||
lv_name TYPE wdy_md_object_name,
|
||||
lv_exists TYPE wdy_boolean,
|
||||
lv_transport TYPE trkorr.
|
||||
lv_exists TYPE wdy_boolean.
|
||||
|
||||
ls_key = ms_item-obj_name.
|
||||
|
||||
|
@ -88,8 +89,7 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
|
|||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
lv_transport = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
lo_cfg->set_transport( trkorr = lv_transport
|
||||
lo_cfg->set_transport( trkorr = iv_transport
|
||||
devclass = iv_package ).
|
||||
|
||||
lv_operation = if_wdr_cfg_constants=>c_cts_operation-e_delete.
|
||||
|
@ -97,7 +97,7 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
|
|||
DO 2 TIMES.
|
||||
lo_cfg->do_next_step(
|
||||
IMPORTING
|
||||
e_messages = lt_messages
|
||||
e_messages = lt_messages
|
||||
CHANGING
|
||||
c_operation = lv_operation ).
|
||||
check( lt_messages ).
|
||||
|
@ -185,8 +185,7 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
|
|||
ls_data LIKE LINE OF it_data,
|
||||
lv_operation TYPE i,
|
||||
lv_name TYPE wdy_md_object_name,
|
||||
lv_exists TYPE wdy_boolean,
|
||||
lv_transport TYPE trkorr.
|
||||
lv_exists TYPE wdy_boolean.
|
||||
|
||||
MOVE-CORRESPONDING is_outline TO ls_key.
|
||||
|
||||
|
@ -212,8 +211,7 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
|
|||
ENDTRY.
|
||||
|
||||
TRY.
|
||||
lv_transport = zcl_abapgit_default_transport=>get_instance( )->get( )-ordernum.
|
||||
lo_cfg->set_transport( trkorr = lv_transport
|
||||
lo_cfg->set_transport( trkorr = iv_transport
|
||||
devclass = iv_package ).
|
||||
lo_cfg->set_save_data( ls_data ).
|
||||
lo_cfg->set_config_description( is_outline ).
|
||||
|
@ -258,7 +256,8 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
|
|||
|
||||
METHOD zif_abapgit_object~delete.
|
||||
|
||||
delete( iv_package = iv_package ).
|
||||
delete( iv_package = iv_package
|
||||
iv_transport = iv_transport ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
@ -276,10 +275,10 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
|
|||
io_xml->read( EXPORTING iv_name = 'DATA'
|
||||
CHANGING cg_data = lt_data ).
|
||||
|
||||
save( is_outline = ls_outline
|
||||
it_data = lt_data
|
||||
iv_package = iv_package ).
|
||||
|
||||
save( is_outline = ls_outline
|
||||
it_data = lt_data
|
||||
iv_package = iv_package
|
||||
iv_transport = iv_transport ).
|
||||
|
||||
TRY.
|
||||
lv_xml_string = mo_files->read_string( iv_extra = 'appl_config'
|
||||
|
|
Loading…
Reference in New Issue
Block a user