anchor.diff:          !ii_log     TYPE REF TO zif_abapgit_log
         RAISING
           zcx_abapgit_exception .
  +    CLASS-METHODS add_activation_errors_to_log
  +      IMPORTING
  +        !io_checklist       TYPE REF TO cl_wb_checklist
  +        !ii_log             TYPE REF TO zif_abapgit_log
  +      RETURNING
  +        VALUE(rv_try_again) TYPE abap_bool
  +      RAISING
  +        zcx_abapgit_exception .
  +
   ENDCLASS.
   
   
  
positive.code:             EXPORTING
                activate_ddic_objects  = iv_ddic
                with_popup             = lv_popup
              TABLES
                objects                = gt_objects
              EXCEPTIONS
  
negative.code:       <ls_object>-obj_name   = iv_name.
        <ls_object>-delet_flag = iv_delete.
      ENDIF.
  
    ENDMETHOD.
  
  
    METHOD add_activation_errors_to_log.
  
      DATA:
        ls_item    TYPE zif_abapgit_definitions=>ty_item,
        lt_message TYPE swbme_error_tab.
  
      FIELD-SYMBOLS:
        <lv_msg>     TYPE string,
        <ls_message> LIKE LINE OF lt_message.
  
      io_checklist->get_error_messages( IMPORTING p_error_tab = lt_message ).
  
      LOOP AT lt_message ASSIGNING <ls_message> WHERE mtype = 'E'.
        " When activting without popup, includes used in multiple main programs cause error
        " Run again WITH activation popup (see abapGit, Personal Settings)
        IF <ls_message>-message-msgid = 'EU' AND <ls_message>-message-msgno = '404'.
          rv_try_again = abap_true.
        ENDIF.
        CLEAR ls_item.
        IF strlen( <ls_message>-object_text ) > 5.
          ls_item-obj_type = <ls_message>-object_text(4).
          ls_item-obj_name = <ls_message>-object_text+5(*).
        ENDIF.
        LOOP AT <ls_message>-mtext ASSIGNING <lv_msg>.
          ii_log->add_error(
            iv_msg  = <lv_msg>
            is_item = ls_item ).
        ENDLOOP.
      ENDLOOP.
  
    ENDMETHOD.
  
  