Delete missing TVIMF entries on reset local (TOBJ)

Fixes #2267
This commit is contained in:
Fabian Lupa 2019-01-13 14:31:36 +01:00 committed by Lars Hvam
parent 41636b7469
commit 1bef6949f2

View File

@ -33,11 +33,27 @@ CLASS zcl_abapgit_object_tobj IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD update_extra. METHOD update_extra.
DATA: lt_current_tvimf TYPE STANDARD TABLE OF tvimf.
FIELD-SYMBOLS: <ls_tvimf> TYPE tvimf.
MODIFY tddat FROM is_tobj-tddat. MODIFY tddat FROM is_tobj-tddat.
MODIFY tvdir FROM is_tobj-tvdir. MODIFY tvdir FROM is_tobj-tvdir.
MODIFY tvimf FROM TABLE is_tobj-tvimf.
SELECT * INTO TABLE lt_current_tvimf
FROM tvimf
WHERE tabname = is_tobj-tddat-tabname
ORDER BY PRIMARY KEY.
LOOP AT lt_current_tvimf ASSIGNING <ls_tvimf>.
READ TABLE is_tobj-tvimf WITH KEY tabname = <ls_tvimf>-tabname
event = <ls_tvimf>-event
TRANSPORTING NO FIELDS.
IF sy-subrc <> 0.
DELETE tvimf FROM <ls_tvimf>.
ENDIF.
ENDLOOP.
MODIFY tvimf FROM TABLE is_tobj-tvimf.
ENDMETHOD. ENDMETHOD.
METHOD delete_extra. METHOD delete_extra.