CM: 使用ICF node实现对附件的读取
生活随笔
收集整理的這篇文章主要介紹了
CM: 使用ICF node实现对附件的读取
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Created by Jerry Wang on May 26, 2014
1. 創(chuàng)建一個(gè)新的class,實(shí)現(xiàn)interface IF_HTTP_EXTENSION:
?
?
?
2. tcode SICF,在sap node下面創(chuàng)建一個(gè)新的ICF node. 將step1創(chuàng)建的class 指定成handler class:
?
?
激活class:
?
3. handler class的方法實(shí)現(xiàn)如下:
METHOD if_http_extension~handle_request.DATA: lt_fields TYPE tihttpnvp,ls_io TYPE skwf_io,lt_file_access_info TYPE sdokfilacis,lv_content TYPE xstring.server->request->if_http_entity~get_form_fields( CHANGING fields = lt_fields ).READ TABLE lt_fields ASSIGNING FIELD-SYMBOL(<id>) WITH KEY name = 'id'.CHECK sy-subrc = 0.ls_io-objtype = 'P'.ls_io-objid = <id>-value.ls_io-class = 'BDS_POC22'.CALL FUNCTION 'CRM_KW_DOC_GET_DOCUMENT'EXPORTINGio = ls_ioIMPORTINGfile_access_info = lt_file_access_infocontent_bin = lv_content.READ TABLE lt_file_access_info ASSIGNING FIELD-SYMBOL(<mime>) INDEX 1.CHECK sy-subrc = 0.server->response->set_header_field(name = 'Content-Type' "#EC NOTEXTvalue = CONV #( <mime>-mimetype )).server->response->set_data( data = lv_content ).ENDMETHOD.4. 在瀏覽器里輸入如下url,如果attachment guid對應(yīng)的attachment是word格式,則彈出如下dialog:
?
如果是text file,則直接用瀏覽器打開:
總結(jié)
以上是生活随笔為你收集整理的CM: 使用ICF node实现对附件的读取的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: letsgo急冻鸟性格选择(求歌名。有一
- 下一篇: CM: 关于删除attachment时是