如何在MIRO中附加文件

时间:2015-07-29 04:05:47

标签: sap abap

我必须在MIRO tcode中为附件(图像和文件,两种.TIF格式)创建报告/ FM。

在我的代码中,它正在table中更新,但不会在MIRO' tcode中更新。任何人都可以检查我的错误。

我必须传递Business对象,业务键

SELECTION-SCREEN BEGIN OF BLOCK b12 WITH FRAME TITLE text-001.
PARAMETERS: p_file   TYPE localfile,
            p_objid  TYPE swo_typeid,
            p_bo     TYPE swo_objtyp.
SELECTION-SCREEN END OF BLOCK b1.
DATA:
  li_content   TYPE  STANDARD TABLE OF soli,
  ls_content   TYPE soli,
  li_objhead   TYPE STANDARD TABLE OF soli,
  lwa_folmem_k TYPE sofmk,
  lwa_note     TYPE borident,
  lwa_object   TYPE borident,
  lwa_obj_id   TYPE soodk,
  lwa_content  TYPE soli,
  lwa_fol_id   TYPE soodk,
  lwa_obj_data TYPE sood1,
  lv_ep_note   TYPE borident-objkey,
  lv_lifnr     TYPE lifnr,
  lv_file      TYPE string,
  lv_filename  TYPE c LENGTH 100, " file name and ext
  lv_extension TYPE c LENGTH 4. " extension only

REFRESH: li_content[], li_objhead[].

CALL FUNCTION 'GUI_UPLOAD'
  EXPORTING
    filename                      = 'C:\Users\User\Desktop\123.TIF'
   filetype                       = 'BIN'
   TABLES
   data_tab                       = lt_data

CALL FUNCTION 'SO_CONVERT_CONTENTS_BIN'
    EXPORTING
      it_contents_bin = li_content[]
    IMPORTING
      et_contents_bin = li_content[].

  CALL FUNCTION 'SO_FOLDER_ROOT_ID_GET'
    EXPORTING
      region                = 'B'
    IMPORTING
      folder_id             = lwa_fol_id
    EXCEPTIONS
      communication_failure = 1
      owner_not_exist       = 2
      system_failure        = 3
      x_error               = 4
      OTHERS                = 5.

1 个答案:

答案 0 :(得分:0)

在我看来,你正在重新发明轮子。

如果您只需要在MIRO中附加文件,那么您可以使用名为GOS(通用对象服务)的优秀工具。它有很多功能,包括attaching files to business objects(MIRO持有发票也是业务对象)等等。

您需要做的只是在GOS菜单中调用附件列表项目,并将目标文件添加到MIRO对象的附件列表中。

enter image description here enter image description here


所有文件均由系统视为SAPoffice文档,并在技术上存储在SOODSOFM表中。
此外,如果您对本机附加功能不满意,可以通过adding your own services轻松扩展GOS菜单。这些服务可以调用您的FM,这将在任何地方保存您的文件。