定义表
bash
MANDT MANDT CLNT 3 0 0 集团
FILENAME CHAR 200 0 0 fileName
SYDATE SYDATUM DATS 8 0 0 系统日期
SYTIME SYUZEIT TIMS 6 0 0 系统时间
VALUE XSTRINGVAL RAWSTRING 0 0 0 XString
MIMETYPE CHAR 100 0 0
get
bash
METHOD /iwbep/if_mgw_appl_srv_runtime~get_stream.
DATA: ls_stream TYPE ty_s_media_resource,
ls_upld TYPE ztsc_upld.
READ TABLE it_key_tab ASSIGNING FIELD-SYMBOL(<fs_key>) INDEX 1.
DATA: lv_filename TYPE char30.
lv_filename = <fs_key>-value.
SELECT SINGLE * FROM ZTSC_UPLD INTO ls_upld WHERE filename = lv_filename.
IF ls_upld IS NOT INITIAL.
ls_stream-value = ls_upld-value.
ls_stream-mime_type = ls_upld-mimetype.
copy_data_to_ref( EXPORTING is_data = ls_stream
CHANGING cr_data = er_stream ).
ENDIF.
ENDMETHOD.
put
bash
DATA: lw_file TYPE ztsc_upld.
READ TABLE it_key_tab ASSIGNING FIELD-SYMBOL(<fs_key>) INDEX 1.
lw_file-filename = <fs_key>-value.
lw_file-value = is_media_resource-value.
lw_file-mimetype = is_media_resource-mime_type.
lw_file-sydate = sy-datum.
lw_file-sytime = sy-uzeit.
MODIFY ztsc_upld FROM lw_file.
test
/sap/opu/odata/SAP/ZODATA_SRV/FileSet('lor.jpg')/$value