possibility to export pkg with master lang only (#2966)

This commit is contained in:
Alexander Tsybulsky 2019-10-14 09:02:42 +03:00 committed by Lars Hvam
parent bc082b15b0
commit 5c10415b28
3 changed files with 30 additions and 10 deletions

View File

@ -77,11 +77,12 @@ CLASS zcl_abapgit_popups DEFINITION
ev_ign_subpkg TYPE abap_bool.
TYPES:
ty_lt_fields TYPE STANDARD TABLE OF sval WITH DEFAULT KEY.
METHODS _popup_2_get_values
METHODS _popup_3_get_values
IMPORTING iv_popup_title TYPE string
iv_no_value_check TYPE abap_bool DEFAULT abap_false
EXPORTING ev_value_1 TYPE spo_value
ev_value_2 TYPE spo_value
ev_value_3 TYPE spo_value
CHANGING ct_fields TYPE ty_lt_fields
RAISING zcx_abapgit_exception.
METHODS validate_folder_logic
@ -93,7 +94,7 @@ ENDCLASS.
CLASS zcl_abapgit_popups IMPLEMENTATION.
CLASS ZCL_ABAPGIT_POPUPS IMPLEMENTATION.
METHOD add_field.
@ -522,7 +523,7 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
TRY.
_popup_2_get_values( EXPORTING iv_popup_title = 'Create branch' "#EC NOTEXT
_popup_3_get_values( EXPORTING iv_popup_title = 'Create branch' "#EC NOTEXT
IMPORTING ev_value_1 = lv_name
CHANGING ct_fields = lt_fields ).
@ -582,7 +583,7 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
TRY.
_popup_2_get_values( EXPORTING iv_popup_title = 'Export package' "#EC NOTEXT
_popup_3_get_values( EXPORTING iv_popup_title = 'Export package' "#EC NOTEXT
iv_no_value_check = abap_true
IMPORTING ev_value_1 = lv_folder_logic
CHANGING ct_fields = lt_fields ).
@ -613,7 +614,7 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
iv_fieldtext = 'Name'
CHANGING ct_fields = lt_fields ).
_popup_2_get_values( EXPORTING iv_popup_title = 'Object' "#EC NOTEXT
_popup_3_get_values( EXPORTING iv_popup_title = 'Object' "#EC NOTEXT
iv_no_value_check = abap_true
IMPORTING ev_value_1 = lv_object_type
ev_value_2 = lv_object_name
@ -631,6 +632,7 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
DATA: lt_fields TYPE TABLE OF sval.
DATA: lv_package TYPE spo_value.
DATA: lv_folder_logic TYPE spo_value.
DATA: lv_serialize_master_lang_only TYPE spo_value.
add_field( EXPORTING iv_tabname = 'TDEVC'
iv_fieldname = 'DEVCLASS'
@ -643,16 +645,23 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
iv_value = 'PREFIX'
CHANGING ct_fields = lt_fields ).
add_field( EXPORTING iv_tabname = 'TVDIR'
iv_fieldname = 'FLAG'
iv_fieldtext = 'Master lang only'
CHANGING ct_fields = lt_fields ).
TRY.
_popup_2_get_values( EXPORTING iv_popup_title = 'Export package' "#EC NOTEXT
_popup_3_get_values( EXPORTING iv_popup_title = 'Export package' "#EC NOTEXT
iv_no_value_check = abap_true
IMPORTING ev_value_1 = lv_package
ev_value_2 = lv_folder_logic
ev_value_3 = lv_serialize_master_lang_only
CHANGING ct_fields = lt_fields ).
ev_package = to_upper( lv_package ).
ev_folder_logic = to_upper( lv_folder_logic ).
ev_serialize_master_lang_only = boolc( lv_serialize_master_lang_only IS NOT INITIAL ).
CATCH zcx_abapgit_cancel.
ENDTRY.
@ -749,7 +758,7 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
iv_value = lv_desc_as_text
CHANGING ct_fields = lt_fields ).
_popup_2_get_values( EXPORTING iv_popup_title = 'Transport to new Branch' "#EC NOTEXT
_popup_3_get_values( EXPORTING iv_popup_title = 'Transport to new Branch' "#EC NOTEXT
IMPORTING ev_value_1 = lv_branch_name
ev_value_2 = lv_commit_text
CHANGING ct_fields = lt_fields ).
@ -1178,7 +1187,7 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
TRY.
_popup_2_get_values( EXPORTING iv_popup_title = 'Run page manually' "#EC NOTEXT
_popup_3_get_values( EXPORTING iv_popup_title = 'Run page manually' "#EC NOTEXT
IMPORTING ev_value_1 = lv_name
CHANGING ct_fields = lt_fields ).
@ -1191,7 +1200,7 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
ENDMETHOD.
METHOD _popup_2_get_values.
METHOD _popup_3_get_values.
DATA lv_answer TYPE char1.
FIELD-SYMBOLS: <ls_field> TYPE sval.
@ -1226,5 +1235,11 @@ CLASS zcl_abapgit_popups IMPLEMENTATION.
ev_value_2 = <ls_field>-value.
ENDIF.
IF ev_value_3 IS SUPPLIED.
READ TABLE ct_fields INDEX 3 ASSIGNING <ls_field>.
ASSERT sy-subrc = 0.
ev_value_3 = <ls_field>-value.
ENDIF.
ENDMETHOD.
ENDCLASS.

View File

@ -19,6 +19,7 @@ INTERFACE zif_abapgit_popups
EXPORTING
!ev_package TYPE devclass
!ev_folder_logic TYPE string
!ev_serialize_master_lang_only TYPE abap_bool
RAISING
zcx_abapgit_exception .
METHODS popup_folder_logic

View File

@ -184,6 +184,7 @@ CLASS ZCL_ABAPGIT_ZIP IMPLEMENTATION.
ls_data TYPE zif_abapgit_persistence=>ty_repo,
li_popups TYPE REF TO zif_abapgit_popups.
DATA lv_serialize_master_lang_only TYPE abap_bool.
ls_data-key = 'DUMMY'.
ls_data-dot_abapgit = zcl_abapgit_dot_abapgit=>build_default( )->get_data( ).
@ -192,11 +193,14 @@ CLASS ZCL_ABAPGIT_ZIP IMPLEMENTATION.
li_popups->popup_package_export(
IMPORTING
ev_package = ls_data-package
ev_folder_logic = ls_data-dot_abapgit-folder_logic ).
ev_folder_logic = ls_data-dot_abapgit-folder_logic
ev_serialize_master_lang_only = lv_serialize_master_lang_only ).
IF ls_data-package IS INITIAL.
RAISE EXCEPTION TYPE zcx_abapgit_cancel.
ENDIF.
ls_data-local_settings-serialize_master_lang_only = lv_serialize_master_lang_only.
CREATE OBJECT lo_repo
EXPORTING
is_data = ls_data.