mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
TABL: remove fields from .INCLUDEs
This commit is contained in:
parent
da37d4cafa
commit
17cf0a7b29
|
@ -129,9 +129,11 @@ CLASS lcl_object_tabl IMPLEMENTATION.
|
|||
lt_dd12v TYPE dd12vtab,
|
||||
lt_dd17v TYPE dd17vtab,
|
||||
lt_dd35v TYPE TABLE OF dd35v,
|
||||
lv_index LIKE sy-index,
|
||||
lt_dd36m TYPE dd36mttyp.
|
||||
|
||||
FIELD-SYMBOLS: <ls_dd12v> LIKE LINE OF lt_dd12v,
|
||||
<ls_dd05m> LIKE LINE OF lt_dd05m,
|
||||
<ls_dd03p> LIKE LINE OF lt_dd03p.
|
||||
|
||||
|
||||
|
@ -176,7 +178,10 @@ CLASS lcl_object_tabl IMPLEMENTATION.
|
|||
<ls_dd12v>-as4time.
|
||||
ENDLOOP.
|
||||
|
||||
* remove nested structures
|
||||
DELETE lt_dd03p WHERE depth <> '00'.
|
||||
* remove fields from .INCLUDEs
|
||||
DELETE lt_dd03p WHERE adminfield <> '0'.
|
||||
|
||||
LOOP AT lt_dd03p ASSIGNING <ls_dd03p> WHERE NOT rollname IS INITIAL.
|
||||
CLEAR: <ls_dd03p>-ddlanguage,
|
||||
|
@ -221,6 +226,16 @@ CLASS lcl_object_tabl IMPLEMENTATION.
|
|||
ENDIF.
|
||||
ENDLOOP.
|
||||
|
||||
* remove foreign keys inherited from .INCLUDEs
|
||||
DELETE lt_dd08v WHERE noinherit = 'N'.
|
||||
LOOP AT lt_dd05m ASSIGNING <ls_dd05m>.
|
||||
lv_index = sy-tabix.
|
||||
READ TABLE lt_dd08v WITH KEY fieldname = <ls_dd05m>-fieldname TRANSPORTING NO FIELDS.
|
||||
IF sy-subrc <> 0.
|
||||
DELETE lt_dd05m INDEX lv_index.
|
||||
ENDIF.
|
||||
ENDLOOP.
|
||||
|
||||
io_xml->add( iv_name = 'DD02V'
|
||||
ig_data = ls_dd02v ).
|
||||
io_xml->add( iv_name = 'DD09L'
|
||||
|
|
Loading…
Reference in New Issue
Block a user