Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | CLASS zcl_abapgit_data_supporter DEFINITION PUBLIC CREATE PRIVATE GLOBAL FRIENDS zcl_abapgit_data_factory . PUBLIC SECTION. INTERFACES zif_abapgit_data_supporter. PROTECTED SECTION. PRIVATE SECTION. DATA mt_supported_objects TYPE zif_abapgit_data_supporter=>ty_objects. METHODS get_supported_objects. ENDCLASS. CLASS zcl_abapgit_data_supporter IMPLEMENTATION. METHOD get_supported_objects. DATA: lt_tables TYPE STANDARD TABLE OF tabname, lv_tabname TYPE tabname, ls_object LIKE LINE OF mt_supported_objects, li_exit TYPE REF TO zif_abapgit_exit. " For safety reasons, by default only customer-defined customizing tables are supported SELECT dd02l~tabname FROM dd09l JOIN dd02l ON dd09l~tabname = dd02l~tabname AND dd09l~as4local = dd02l~as4local AND dd09l~as4vers = dd02l~as4vers INTO TABLE lt_tables WHERE dd02l~tabclass = 'TRANSP' AND dd09l~tabart = 'APPL2' AND dd09l~as4user <> 'SAP' AND dd09l~as4local = 'A' "Only active tables AND dd02l~contflag = 'C' "Only customizing tables ORDER BY dd02l~tabname. LOOP AT lt_tables INTO lv_tabname. ls_object-type = zif_abapgit_data_config=>c_data_type-tabu. ls_object-name = lv_tabname. INSERT ls_object INTO TABLE mt_supported_objects. ENDLOOP. " The list of supported objects can be enhanced using an exit " Name patterns are allowed. For example, TABU T009* li_exit = zcl_abapgit_exit=>get_instance( ). li_exit->change_supported_data_objects( CHANGING ct_objects = mt_supported_objects ). ENDMETHOD. METHOD zif_abapgit_data_supporter~is_object_supported. FIELD-SYMBOLS <ls_object> LIKE LINE OF mt_supported_objects. IF mt_supported_objects IS INITIAL. get_supported_objects( ). ENDIF. READ TABLE mt_supported_objects TRANSPORTING NO FIELDS WITH TABLE KEY type = iv_type name = iv_name. IF sy-subrc = 0. rv_supported = abap_true. ELSE. " Check if object name matches pattern LOOP AT mt_supported_objects ASSIGNING <ls_object> WHERE type = iv_type. IF iv_name CP <ls_object>-name. rv_supported = abap_true. RETURN. ENDIF. ENDLOOP. ENDIF. ENDMETHOD. ENDCLASS. |