mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
DOCV: Fix dump for namespaced documents (#5855)
* DOCV: Fix dump for namespaced documents Fix handing of documents in classes UO and UP which use a different namespace logic than DT, IN, MO. Regression #5756 Closes #5854 * Doc classes
This commit is contained in:
parent
f8ac419f29
commit
754fe5b5a8
|
@ -11,7 +11,9 @@ CLASS zcl_abapgit_object_docv DEFINITION
|
|||
METHODS constructor
|
||||
IMPORTING
|
||||
!is_item TYPE zif_abapgit_definitions=>ty_item
|
||||
!iv_language TYPE spras.
|
||||
!iv_language TYPE spras
|
||||
RAISING
|
||||
zcx_abapgit_exception.
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
|
||||
|
@ -44,18 +46,29 @@ CLASS zcl_abapgit_object_docv IMPLEMENTATION.
|
|||
DATA: lv_prefix TYPE namespace,
|
||||
lv_bare_name TYPE progname.
|
||||
|
||||
super->constructor( is_item = is_item
|
||||
super->constructor( is_item = is_item
|
||||
iv_language = iv_language ).
|
||||
|
||||
CALL FUNCTION 'RS_NAME_SPLIT_NAMESPACE'
|
||||
EXPORTING
|
||||
name_with_namespace = ms_item-obj_name
|
||||
IMPORTING
|
||||
namespace = lv_prefix
|
||||
name_without_namespace = lv_bare_name.
|
||||
IF ms_item-obj_name(2) <> 'DT'. " IN, MO, UO, UP
|
||||
mv_id = ms_item-obj_name(2).
|
||||
mv_doc_object = ms_item-obj_name+2.
|
||||
ELSE. " DT
|
||||
CALL FUNCTION 'RS_NAME_SPLIT_NAMESPACE'
|
||||
EXPORTING
|
||||
name_with_namespace = ms_item-obj_name
|
||||
IMPORTING
|
||||
namespace = lv_prefix
|
||||
name_without_namespace = lv_bare_name
|
||||
EXCEPTIONS
|
||||
delimiter_error = 1
|
||||
OTHERS = 2.
|
||||
IF sy-subrc <> 0.
|
||||
zcx_abapgit_exception=>raise( |Error determining namespace for { ms_item-obj_type } { ms_item-obj_name }| ).
|
||||
ENDIF.
|
||||
|
||||
mv_id = lv_bare_name(2).
|
||||
mv_doc_object = |{ lv_prefix }{ lv_bare_name+2(*) }|.
|
||||
mv_id = lv_bare_name(2).
|
||||
mv_doc_object = |{ lv_prefix }{ lv_bare_name+2 }|.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user