anchor.diff:  
     PROTECTED SECTION.
     PRIVATE SECTION.
  -    TYPES: BEGIN OF ty_extension_index,
  -             dd12v   TYPE dd12v,
  -             t_dd17v TYPE STANDARD TABLE OF dd17v
  -                          WITH NON-UNIQUE DEFAULT KEY,
  -           END OF ty_extension_index.
  +    TYPES:
  +      BEGIN OF ty_extension_index,
  +        dd12v   TYPE dd12v,
  +        t_dd17v TYPE STANDARD TABLE OF dd17v
  +                   WITH NON-UNIQUE DEFAULT KEY,
  +      END OF ty_extension_index.
  +
  +    CONSTANTS:
  +      c_objtype_extension_index   TYPE trobjtype VALUE 'XINX'.
  +
       DATA:
         mv_name TYPE ddobjname,
         mv_id   TYPE ddobjectid.
   
  +    METHODS:
  +      xinx_delete_docu
  +        IMPORTING
  +          iv_objname TYPE ddobjname
  +          iv_id      TYPE ddobjectid.
  +
   ENDCLASS.
   
   
   
  -CLASS ZCL_ABAPGIT_OBJECT_XINX IMPLEMENTATION.
  +CLASS zcl_abapgit_object_xinx IMPLEMENTATION.
   
   
     METHOD constructor.
  
positive.code:                  ig_data = ls_extension_index ).
  
    ENDMETHOD.
  ENDCLASS.
  
negative.code: 
    METHOD zif_abapgit_object~delete.
  
      " Reimplement FM RS_DD_INDX_DELETE as it calls the UI
  
      DATA: lv_enqueue      TYPE ddenqs,
            lv_protname     TYPE tstrf01-file,
            lv_del_concname LIKE lv_enqueue-objname,
            lv_concname     TYPE rsdxx-objname,
            lv_transp_key   TYPE trkey,
            ls_e071         TYPE e071,
            lv_clm_corrnum  TYPE e070-trkorr,
            lv_message      TYPE string.
  
      CONCATENATE mv_name '-' mv_id INTO lv_concname.
      lv_enqueue-objtype = c_objtype_extension_index.
  
      CALL FUNCTION 'INT_INDX_DEL_LOCK'
        EXPORTING
          i_trobjtype        = lv_enqueue-objtype
          i_tabname          = mv_name
          i_indexname        = mv_id
        EXCEPTIONS
          not_executed       = 1
          error_occured      = 2
          permission_failure = 3
          OTHERS             = 4.
  
      IF sy-subrc <> 0.
        zcx_abapgit_exception=>raise_t100( ).
      ENDIF.
  
      lv_enqueue-objname = mv_name.
      lv_enqueue-secname = mv_id.
      CALL FUNCTION 'RS_CORR_INSERT'
        EXPORTING
          object        = lv_enqueue
          object_class  = 'DICT'
          mode          = 'DELETE'
        IMPORTING
          transport_key = lv_transp_key
        EXCEPTIONS
          OTHERS        = 1.
  
      IF sy-subrc <> 0.
        " & was not deleted (correction entry not possible or canceled)
        MESSAGE s015(e2) WITH lv_concname INTO lv_message.
        zcx_abapgit_exception=>raise_t100( ).
      ENDIF.
  
      CALL FUNCTION 'DD_LOGNPROT_NAME_GET'
        EXPORTING
          task        = 'DEL'
          obj_type    = lv_enqueue-objtype
          obj_name    = lv_enqueue-objname
          ind_name    = lv_enqueue-secname
        IMPORTING
          protname    = lv_protname
        EXCEPTIONS
          input_error = 0.
  
      PERFORM logdelete IN PROGRAM rddu0001 USING lv_protname.
  
      lv_del_concname = lv_enqueue-objname.
      lv_del_concname+16 = lv_enqueue-secname.
      CALL FUNCTION 'DD_OBJ_DEL'
        EXPORTING
          object_name = lv_del_concname
          object_type = lv_enqueue-objtype
          del_state   = 'M'
        EXCEPTIONS
          OTHERS      = 1.
  
      IF sy-subrc <> 0.
        RETURN.
      ENDIF.
  
      CALL FUNCTION 'DD_DD_TO_E071'
        EXPORTING
          type          = lv_enqueue-objtype
          name          = lv_enqueue-objname
          id            = lv_enqueue-secname
        IMPORTING
          obj_name      = ls_e071-obj_name
        EXCEPTIONS
          illegal_input = 1
          OTHERS        = 2.
  
      IF sy-subrc <> 0.
        " Internal error & in & (contact person in charge)
        MESSAGE i008(e2) WITH 'DD_DD_TO_E071' 'RS_DD_INDX_DELETE' INTO lv_message.
        zcx_abapgit_exception=>raise_t100( ).
      ENDIF.
  
      ls_e071-object = lv_enqueue-objtype.
      CALL FUNCTION 'RS_DELETE_FROM_WORKING_AREA'
        EXPORTING
          object                 = ls_e071-object
          obj_name               = ls_e071-obj_name
          immediate              = 'X'
          actualize_working_area = 'X'.
  
      xinx_delete_docu(
          iv_objname = mv_name
          iv_id      = mv_id ).
  
      CALL FUNCTION 'RS_TREE_OBJECT_PLACEMENT'
        EXPORTING
          object    = ls_e071-obj_name
          operation = 'DELETE'
          type      = c_objtype_extension_index.
  
      IF mv_id(1) CA 'YZ'.
        CALL FUNCTION 'CLM_INDX_MODIFICATION_DELETE'
          EXPORTING
            idxobj_name   = lv_enqueue-objname
            idx_type      = lv_enqueue-objtype
            idx_name      = mv_id
            transport_key = lv_transp_key
            corrnum       = lv_clm_corrnum.
      ENDIF.
  
      CALL FUNCTION 'RS_DD_DEQUEUE'
        EXPORTING
          objtype = lv_enqueue-objtype
          objname = lv_enqueue-objname
          secname = lv_enqueue-secname.
  
    ENDMETHOD.
  
  