SAP 下载EXCEL模板

上传Excel到SAP系统
假设EXCEL模板已经被上传到SAP系统中,提供如下两种模板方法进行下载到本地(其实都一样)
第一种:

FORM FRM_DOWNLOAD_FILE_SMW0 .
  DATA: LV_FILE              TYPE RLGRAP-FILENAME, 
        LV_OBJID             TYPE WWWDATA-OBJID,
        LS_KEY               LIKE WWWDATATAB,
        LV_SUBRC             TYPE SY-SUBRC,
        LV_FILENAME          TYPE STRING,
        LV_PATH              TYPE STRING,
        LV_FULLPATH          TYPE STRING,
        LV_DEFAULT_FILE_NAME TYPE STRING.

	
  LV_DEFAULT_FILE_NAME = '生产版本导入模板.xlsx'.  "默认的文件名
*&--------获得要保存文件的路径名
  CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG
    EXPORTING
      WINDOW_TITLE         = '请选择路径'
      DEFAULT_FILE_NAME    = LV_DEFAULT_FILE_NAME
      FILE_FILTER          = 'Excel 文件 (*.xls)'
    CHANGING
      FILENAME             = LV_FILENAME
      PATH                 = LV_PATH
      FULLPATH             = LV_FULLPATH
    EXCEPTIONS
      CNTL_ERROR           = 1
      ERROR_NO_GUI         = 2
      NOT_SUPPORTED_BY_GUI = 3
      OTHERS               = 4.

  IF LV_PATH IS INITIAL.
    MESSAGE '已取消下载'. "如果用户取消选择下载路径,那么相当于取消下载,结束程序
    exit.
  ENDIF.
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
               WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    exit.
  ENDIF.

  LV_FILE = LV_FULLPATH.
  LV_OBJID = 'ZPPR_PRDCTVER_IMPORT'. "sap系统中存储的资源对象名

  SELECT SINGLE *
    FROM WWWDATA
    INTO CORRESPONDING FIELDS OF LS_KEY
    WHERE OBJID = LV_OBJID
      AND RELID = 'MI'.

  CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
    EXPORTING
      KEY         = LS_KEY
      DESTINATION = LV_FILE
    IMPORTING
      RC          = LV_SUBRC.
  IF LV_SUBRC = 0.
    MESSAGE '模板下载成功' TYPE 'S'.
  ENDIF.

第二种:

FORM frm_download_excel .
  DATA: fname(128), ftype(3), fsize TYPE i.
  DATA: l_fieldname TYPE string.
  DATA:lv_num TYPE i.
  DATA:user_action TYPE i. "文件保存对话框,用户行为
  DATA: lv_filename TYPE string, "下载文件名
        lv_wintitle TYPE string, "下载对话框标题名
        lv_filepath TYPE string, "文件路径
        lv_fullpath TYPE string, "全文件路径
        lv_file     TYPE rlgrap-filename,
        lv_title    TYPE string,
        lv_xlsname  TYPE wwwdatatab-objid VALUE 'ZMMR_SUPPLIER_IMPORT',  "模板名称
        lv_key      TYPE wwwdatatab,
        lv_subrc    TYPE sy-subrc.

  DATA :def_file_name TYPE string.  "默认文件名
  CONCATENATE '供应商主数据导入模板' '.xlsx' INTO def_file_name.

  "文件保存对话框,获得保存路径
  CALL METHOD cl_gui_frontend_services=>file_save_dialog
    EXPORTING
*     window_title      = '另存为'  "对话框的标题
      default_extension = 'XLSX'          "默认的文件后缀名
      default_file_name = def_file_name   "默认文件名
      file_filter       = 'EXCEL 文档|*.'   "文件类型过滤(只显示本地文件夹)
*     INITIAL_DIRECTORY =            "初始化的目录
    CHANGING
      filename          = lv_filename      "保存的文件名
      path              = lv_filepath      "文件路径
      fullpath          = lv_fullpath      "全文件路径
      user_action       = user_action
    EXCEPTIONS
      cntl_error        = 1
      error_no_gui      = 2
      OTHERS            = 3.
  IF sy-subrc <> 0.
    MESSAGE e007(zmmmsg).
*    MESSAGE '文件保存失败' TYPE 'S' DISPLAY LIKE 'E'.
    RETURN.
  ENDIF.

*  取消下载
  IF user_action = '9'.
    MESSAGE s008(zmmmsg).
*    MESSAGE '下载已取消' TYPE 'S'.
    RETURN.
  ENDIF.

  "从SAP资源库中下载文件
  lv_file = lv_fullpath.
  lv_key-relid = 'MI'.
  lv_key-objid = lv_xlsname.  "SMW0 中对象ID

  CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
    EXPORTING
      key         = lv_key
      destination = lv_file
    IMPORTING
      rc          = lv_subrc.

  IF sy-subrc <> 0.
    MESSAGE e009(zmmmsg).
*    MESSAGE 'SAP WEB资源库中无可用模板供使用,请检查模板是否存在!' TYPE 'E'.
  ENDIF.

ENDFORM.
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SAP实施数据收集模板,您可以参考以下步骤: 1. 确定数据需求:与SAP实施团队和业务部门合作,明确需要收集哪些数据。这可能涉及到系统配置、用户需求、业务流程等方面的数据。 2. 设计数据收集模板:根据数据需求,设计一个数据收集模板。可以使用Excel或其他类似工具创建一个结构化的表格,列出需要收集的字段和相关信息。确保模板中包含足够的字段以满足实施需求。 3. 定义数据收集流程:确定数据收集的具体流程和时间表。这可能包括指定负责人、设定截止日期、安排数据验证和审查等。 4. 分发数据收集模板:向相关的SAP用户和业务部门分发数据收集模板。确保说明清楚每个字段的含义和填写要求,以便收集到准确的数据。 5. 收集和验证数据:一旦数据收集模板分发完成,用户和部门可以开始填写数据。在此过程中,确保及时沟通并提供支持,以解决任何问题或疑问。 6. 数据审查和清理:在收集到数据后,进行数据审查和清理工作。确保数据的完整性、准确性和一致性。 7. 数据导入和测试:将收集到的数据导入SAP系统,并进行测试和验证。确保数据的正确性和系统的稳定性。 8. 数据迁移和验收:在完成数据导入和测试后,进行数据迁移和最终验收。确保系统能够正常运行,并满足实施目标和要求。 通过以上步骤,您可以完成SAP实施数据收集模板的工作,并确保成功实施SAP系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值