anchor.diff:      DATA: lt_repos        TYPE lcl_repo_srv=>ty_repo_tt,
             lo_repo_online  TYPE REF TO lcl_repo_online,
             lo_repo_offline TYPE REF TO lcl_repo_offline,
  +          lx_error        TYPE REF TO lcx_exception,
             lo_repo         LIKE LINE OF lt_repos.
   
   
  -    lt_repos = lcl_repo_srv=>list( ).
  -
       rv_html = lcl_gui=>header( ) &&
  -      render_menu( ) &&
  -      render_toc( lt_repos ).
  +      render_menu( ).
  +
  +    TRY.
  +        lt_repos = lcl_repo_srv=>list( ).
  +      CATCH lcx_exception INTO lx_error.
  +* if wrong meta data exists in database, make sure to still render the menu
  +* where it is possible to use the database tool
  +        rv_html = rv_html &&
  +          '<div id="toc">Error:<br>' && gc_newline &&
  +          lx_error->mv_text          && gc_newline &&
  +          '</div>'                   && gc_newline.
  +    ENDTRY.
  +
  +    rv_html = rv_html && render_toc( lt_repos ).
   
       IF lt_repos[] IS INITIAL.
  -      rv_html = rv_html && '<br><a href="sapevent:explore">Explore</a> new projects'.
  +      rv_html = rv_html &&
  +        '<div id="toc">'                                      && gc_newline &&
  +        '<a href="sapevent:explore">Explore</a> new projects' && gc_newline &&
  +        '</div>'                                              && gc_newline.
       ELSE.
         LOOP AT lt_repos INTO lo_repo.
           IF lo_repo->is_offline( ) = abap_true.
  
positive.code:   METHOD delete.
  
      mo_db->delete( iv_type  = c_type_repo
                     iv_value = url_to_id( iv_url ) ).
  
    ENDMETHOD.
  
  
negative.code: 
      CREATE OBJECT lo_persistence.
  
      lo_persistence->delete( ms_data-key ).
  
    ENDMETHOD.                    "delete
  
  