Работа с MIME репозитарием через ABAP возможна используя класс: cl_mime_repository_api. Пример его использования:
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 |
REPORT ZMIME_API. DATA: go_mime_api TYPE REF TO if_mr_api, gv_x_str TYPE XSTRING, gv_str TYPE STRING. " Создает экземпляр класса для работы с репозитарием go_mime_api = cl_mime_repository_api=>get_api( ). gv_str = 'Hello World!'. " Преобразуем в XSTRING CALL FUNCTION 'HR_KR_STRING_TO_XSTRING' EXPORTING unicode_string = gv_str IMPORTING XSTRING_STREAM = gv_x_str EXCEPTIONS INVALID_CODEPAGE = 1 INVALID_STRING = 2 OTHERS = 3. " Запищем в репозитарий. go_mime_api->put( EXPORTING i_url = '/SAP/BC/BSP/SAP/.../TEST.TXT' i_content = gv_x_str EXCEPTIONS parameter_missing = 1 error_occured = 2 cancelled = 3 permission_failure = 4 data_inconsistency = 5 new_loio_already_exists = 6 is_folder = 7 OTHERS = 8 ). IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. CLEAR: gv_x_str, gv_str. " Прочитаем содержимое из репозитария go_mime_api->get( EXPORTING i_url = '/SAP/BC/BSP/SAP/.../TEST.TXT' IMPORTING e_content = gv_x_str EXCEPTIONS parameter_missing = 1 error_occured = 2 not_found = 3 permission_failure = 4 OTHERS = 5 ). IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. " Преобразуем обратно в строку CALL FUNCTION 'HR_KR_XSTRING_TO_STRING' EXPORTING in_xstring = gv_x_str IMPORTING out_string = gv_str. WRITE gv_str. |