如何阅读电子邮件附件(在我获得带有SO_ATTACHMENT_READ的GUID之后)?

时间:2013-07-16 09:23:14

标签: email sap abap

我正在尝试获取附加到邮件的文件的内存表示。

我有邮件的ID,附件的ID(我从表SOOD中解决了这个问题)和事务SOST。

DATA: gs_doc        TYPE soodk,
      gs_attachment TYPE soodk,
      objcont TYPE soli OCCURS 0,
      objhead TYPE soli OCCURS 0.

gs_doc-objtp = 'RAW'.
gs_doc-objyr = '38'.
gs_doc-objno = '000000000465'.

gs_attachment-objtp = 'EXT'.
gs_attachment-objyr = '38'.
gs_attachment-objno = '000000000282'..

*    i_oid        = 'E2ED5468C94941F198A300155D005612'
CALL FUNCTION 'SO_ATTACHMENT_READ'
  EXPORTING
*   FILTER                           =
    object_id                        = gs_doc
   attach_id                        = gs_attachment
*   OWNER                            =
*   FORWARDER                        =
* IMPORTING
*   OBJECT_HD_DISPLAY                =
*   OBJECT_RC_DISPLAY                =
*   OBJECT_FL_DISPLAY                =
 TABLES
   objcont                          = objcont
   objhead                          = objhead
 EXCEPTIONS
   active_user_not_exist            = 1
   object_not_exist                 = 2
   operation_no_authorization       = 3
   owner_not_exist                  = 4
   parameter_error                  = 5
   substitute_not_active            = 6
   substitute_not_defined           = 7
   x_error                          = 8
   communication_failure            = 9
   system_failure                   = 10
   OTHERS                           = 11.

这是我写的代码。它在表objcontobjhead中返回,但我不知道如何处理该输出,因为它看起来像这样:

&SO_KProObjectID=SOFFLOIO  E2ED5468C94941F198A300155D005612

&SO_FORMAT=BIN

分别

我试图在功能模块上进行Where used查询以查看它是如何使用的,但我还没有得到这个想法。

那么有谁知道如何将附件作为内存文件?

1 个答案:

答案 0 :(得分:0)

您也可以使用Mail Attachment Downloader之类的程序来简化处理规则,然后将附件提供给文档管理系统和SAP。

我们使用PRO Server版本的Mail Attachment Downloader执行此操作,并且它运行良好。