SOTR: Fix handling of alias names (#5750)

This commit is contained in:
Marc Bernard 2022-09-13 10:39:33 -04:00 committed by GitHub
parent 16d69e8ab9
commit 0be78203d5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -88,6 +88,7 @@ CLASS zcl_abapgit_sotr_handler IMPLEMENTATION.
DATA:
lt_objects TYPE sotr_objects,
ls_paket TYPE sotr_pack,
lv_alias TYPE sotr_head-alias_name,
lv_object LIKE LINE OF lt_objects.
FIELD-SYMBOLS: <ls_sotr> LIKE LINE OF it_sotr.
@ -110,11 +111,17 @@ CLASS zcl_abapgit_sotr_handler IMPLEMENTATION.
ls_paket-paket = iv_package.
" Replace package in alias with new package
lv_alias = <ls_sotr>-header-alias_name.
IF lv_alias CS '/'.
lv_alias = iv_package && lv_alias+sy-fdpos(*).
ENDIF.
CALL FUNCTION 'SOTR_CREATE_CONCEPT'
EXPORTING
paket = ls_paket
crea_lan = <ls_sotr>-header-crea_lan
alias_name = <ls_sotr>-header-alias_name
alias_name = lv_alias
object = lv_object
entries = <ls_sotr>-entries
concept_default = <ls_sotr>-header-concept
@ -255,6 +262,7 @@ CLASS zcl_abapgit_sotr_handler IMPLEMENTATION.
METHOD get_sotr_4_concept.
DATA: ls_header TYPE zif_abapgit_definitions=>ty_sotr-header,
lv_paket LIKE ls_header-alias_name,
lt_entries TYPE zif_abapgit_definitions=>ty_sotr-entries.
FIELD-SYMBOLS: <ls_entry> LIKE LINE OF lt_entries.
@ -273,6 +281,16 @@ CLASS zcl_abapgit_sotr_handler IMPLEMENTATION.
RETURN.
ENDIF.
" If alias contains package, remove it
lv_paket = ls_header-paket && '/'.
IF ls_header-alias_name CS lv_paket.
ls_header-alias_name = replace(
val = ls_header-alias_name
sub = lv_paket
with = '/'
occ = 1 ).
ENDIF.
CLEAR: ls_header-paket,
ls_header-crea_name,
ls_header-crea_tstut,