mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00
UI: Replace 'Overwrite object' popup with sellist
This commit is contained in:
parent
0b36ce0c88
commit
67068136e1
|
@ -218,18 +218,18 @@ CLASS ZCL_ABAPGIT_SERVICES_REPO IMPLEMENTATION.
|
||||||
li_popups->popup_to_select_from_list(
|
li_popups->popup_to_select_from_list(
|
||||||
EXPORTING
|
EXPORTING
|
||||||
it_list = ct_overwrite
|
it_list = ct_overwrite
|
||||||
iv_header_text = |The following Objects have been modified locally.|
|
iv_header_text = |The following objects have been modified locally.|
|
||||||
&& | Select the Objects which should be overwritten.|
|
&& | Select the objects which should be overwritten.|
|
||||||
iv_select_column_text = 'Overwrite?'
|
iv_select_column_text = 'Overwrite?'
|
||||||
it_columns_to_display = lt_columns
|
it_columns_to_display = lt_columns
|
||||||
IMPORTING
|
IMPORTING
|
||||||
et_list = lt_selected ).
|
et_list = lt_selected ).
|
||||||
|
|
||||||
LOOP AT ct_overwrite ASSIGNING <ls_overwrite>.
|
LOOP AT ct_overwrite ASSIGNING <ls_overwrite>.
|
||||||
READ TABLE lt_selected WITH KEY
|
READ TABLE lt_selected WITH TABLE KEY object_type_and_name
|
||||||
obj_type = <ls_overwrite>-obj_type
|
COMPONENTS obj_type = <ls_overwrite>-obj_type
|
||||||
obj_name = <ls_overwrite>-obj_name
|
obj_name = <ls_overwrite>-obj_name
|
||||||
TRANSPORTING NO FIELDS.
|
TRANSPORTING NO FIELDS.
|
||||||
IF sy-subrc = 0.
|
IF sy-subrc = 0.
|
||||||
<ls_overwrite>-decision = 'Y'.
|
<ls_overwrite>-decision = 'Y'.
|
||||||
ELSE.
|
ELSE.
|
||||||
|
@ -242,38 +242,45 @@ CLASS ZCL_ABAPGIT_SERVICES_REPO IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD popup_package_overwrite.
|
METHOD popup_package_overwrite.
|
||||||
|
|
||||||
DATA: lv_question TYPE c LENGTH 200,
|
DATA: lt_colums_to_display TYPE stringtab,
|
||||||
lv_answer TYPE c.
|
lv_column LIKE LINE OF lt_colums_to_display,
|
||||||
|
lt_selected LIKE ct_overwrite.
|
||||||
|
|
||||||
FIELD-SYMBOLS: <ls_overwrite> LIKE LINE OF ct_overwrite.
|
FIELD-SYMBOLS: <ls_overwrite> LIKE LINE OF ct_overwrite.
|
||||||
|
|
||||||
|
|
||||||
IF lines( ct_overwrite ) = 0.
|
IF lines( ct_overwrite ) = 0.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
lv_column = 'OBJ_TYPE'.
|
||||||
|
INSERT lv_column INTO TABLE lt_colums_to_display.
|
||||||
|
lv_column = 'OBJ_NAME'.
|
||||||
|
INSERT lv_column INTO TABLE lt_colums_to_display.
|
||||||
|
lv_column = 'DEVCLASS'.
|
||||||
|
INSERT lv_column INTO TABLE lt_colums_to_display.
|
||||||
|
|
||||||
|
zcl_abapgit_ui_factory=>get_popups( )->popup_to_select_from_list(
|
||||||
|
EXPORTING
|
||||||
|
it_list = ct_overwrite
|
||||||
|
iv_header_text = |The following objects have been created in other packages.|
|
||||||
|
&& | Select the objects which should be overwritten.|
|
||||||
|
iv_select_column_text = |Overwrite?|
|
||||||
|
it_columns_to_display = lt_colums_to_display
|
||||||
|
IMPORTING
|
||||||
|
et_list = lt_selected ).
|
||||||
|
|
||||||
LOOP AT ct_overwrite ASSIGNING <ls_overwrite>.
|
LOOP AT ct_overwrite ASSIGNING <ls_overwrite>.
|
||||||
CONCATENATE 'Overwrite object' <ls_overwrite>-obj_type <ls_overwrite>-obj_name
|
|
||||||
'from package' <ls_overwrite>-devclass
|
|
||||||
INTO lv_question SEPARATED BY space. "#EC NOTEXT
|
|
||||||
|
|
||||||
lv_answer = zcl_abapgit_ui_factory=>get_popups( )->popup_to_confirm(
|
READ TABLE lt_selected WITH TABLE KEY object_type_and_name
|
||||||
iv_titlebar = 'Warning'
|
COMPONENTS obj_type = <ls_overwrite>-obj_type
|
||||||
iv_text_question = lv_question
|
obj_name = <ls_overwrite>-obj_name
|
||||||
iv_text_button_1 = 'Ok'
|
TRANSPORTING NO FIELDS.
|
||||||
iv_icon_button_1 = 'ICON_DELETE'
|
IF sy-subrc = 0.
|
||||||
iv_text_button_2 = 'Cancel'
|
<ls_overwrite>-decision = 'Y'.
|
||||||
iv_icon_button_2 = 'ICON_CANCEL'
|
ELSE.
|
||||||
iv_default_button = '2'
|
<ls_overwrite>-decision = 'N'.
|
||||||
iv_display_cancel_button = abap_false ). "#EC NOTEXT
|
|
||||||
|
|
||||||
IF lv_answer = '2'.
|
|
||||||
RAISE EXCEPTION TYPE zcx_abapgit_cancel.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
* todo, let the user decide yes/no/cancel
|
|
||||||
<ls_overwrite>-decision = 'Y'.
|
|
||||||
|
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
|
@ -112,8 +112,9 @@ INTERFACE zif_abapgit_definitions PUBLIC.
|
||||||
TYPES: decision TYPE ty_yes_no,
|
TYPES: decision TYPE ty_yes_no,
|
||||||
END OF ty_overwrite.
|
END OF ty_overwrite.
|
||||||
|
|
||||||
TYPES: ty_overwrite_tt TYPE STANDARD TABLE OF ty_overwrite WITH DEFAULT KEY.
|
TYPES: ty_overwrite_tt TYPE STANDARD TABLE OF ty_overwrite WITH DEFAULT KEY
|
||||||
|
WITH UNIQUE HASHED KEY object_type_and_name
|
||||||
|
COMPONENTS obj_type obj_name.
|
||||||
TYPES: BEGIN OF ty_requirements,
|
TYPES: BEGIN OF ty_requirements,
|
||||||
met TYPE ty_yes_no,
|
met TYPE ty_yes_no,
|
||||||
decision TYPE ty_yes_no,
|
decision TYPE ty_yes_no,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user