SAP ABAP 上传下载模板文件

如何在程序的选择画面中配置模板下载按钮

发布日期:2024/07/13

案例:很多时候我们要在可执行程序中上传文件。为了记忆文件格式方便用户使用,选择画面的【执行】按钮旁边添加【模板下载】按钮。点击即可下载模板文件到本地。本例为EXCEL文件。

1.上传模板文件到SAP系统

事务码SMW0,选中二进制数据进行查找
在这里插入图片描述

选择包进行查找
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/9c4658727ea945ee88637fd2085c3ee5.png

可以看到包下上传的所有模板文件,在这里可以对文件进行编辑,我们选择新建。
在这里插入图片描述

填入文件名和描述,点击导入
在这里插入图片描述

在本地选择需要上传的文件后打开,
在这里插入图片描述

选择想导入的包,导入成功可以看到我们导入的文件
在这里插入图片描述

2.程序中模板下载

REPORT zmm_rpt_538_wu.
TABLES: sscrfields.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
  PARAMETERS:
  p_file TYPE rlgrap-filename.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN: FUNCTION KEY 1. "定义按钮

INITIALIZATION.
  sscrfields-functxt_01 = '模板下载'."定义按钮文本

AT SELECTION-SCREEN.
  CASE sscrfields-ucomm.
    WHEN'FC01'.    
      PERFORM frm_download."点击按钮事件
  ENDCASE.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  PERFORM get_file.

START-OF-SELECTION.

FORM get_file .
  CALL FUNCTION 'WS_FILENAME_GET'
    EXPORTING
      def_filename     = p_file
      mask             = '*.*'
      mode             = 'O'
      title            = 'File Name'
    IMPORTING
      filename         = p_file
    EXCEPTIONS
      inv_winsys       = 1
      no_batch         = 2
      selection_cancel = 3
      selection_error  = 4
      OTHERS           = 5.
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.
ENDFORM.

FORM frm_download .
  DATA: lv_fullpath    TYPE string,
        lv_filename    TYPE string,
        lv_path        TYPE string,
        lv_objid       TYPE wwwdatatab-objid,
        lo_objdata     LIKE wwwdatatab,
        ls_destination LIKE rlgrap-filename,
        lv_rc          TYPE i.

* download the template
  lv_objid = 'ZMMTEST_UPLOAD'.  "目标模板名
  lv_filename = 'ZMMTEST_UPLOAD.xlsx'.  "默认下载到本地的文件名
  CALL METHOD cl_gui_frontend_services=>file_save_dialog
    EXPORTING
      default_extension = 'xlsx'
      default_file_name = lv_filename
    CHANGING
      filename          = lv_filename
      path              = lv_path
      fullpath          = lv_fullpath.
  IF lv_fullpath IS INITIAL.
    RETURN.
  ENDIF.
  IF sy-subrc = 0.
    SELECT SINGLE relid objid
      INTO CORRESPONDING FIELDS OF lo_objdata
      FROM wwwdata
     WHERE srtf2 = 0
       AND relid = 'MI'
       AND objid = lv_objid.
    IF sy-subrc <> 0 OR lo_objdata-objid IS INITIAL.
      CLEAR: lv_fullpath.
*      MESSAGE i005 WITH ls_objnam.
      RETURN.
    ENDIF.
    ls_destination = lv_fullpath.
    "template download
    CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
      EXPORTING
        key         = lo_objdata
        destination = ls_destination
      IMPORTING
        rc          = lv_rc.
    IF lv_rc <> 0.
      CLEAR: lv_fullpath.
*      MESSAGE i006 WITH ls_objnam.
      RETURN.
    ENDIF.
  ENDIF.
ENDFORM.

3.最后我们来看一下执行效果吧
点击【模板下载】
在这里插入图片描述

选择下载地址并保存
在这里插入图片描述

左下角会显示成功保存的地址,模板文件下载成功!
在这里插入图片描述

  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SAP ABAP代码下载是指将SAP系统中的ABAP代码下载到本地计算机上,以供开发人员对代码进行修改和优化。具体步骤如下: 1. 登录SAP系统。 2. 进入ABAP工具箱,选择SE38事务码。 3. 输入需要下载的ABAP代码的名称,然后点击执行按钮。 4. 在代码编辑器中,点击下载按钮。 5. 选择合适的本地路径,保存代码。 下载之后,开发人员就可以对代码进行修改和优化。需要注意的是,下载代码时要确保有足够的权限,否则可能无法进行下载操作。此外,下载的代码需要进行版本管理,以便在需要时进行版本回滚或者比较差异。 ### 回答2: SAP ABAP是一种编程语言,专门用于SAP软件系统的开发和维护。在SAP ABAP开发过程中,代码下载是一个常见的需求,可以将本地的开发代码导出到本地计算机上进行开发和版本控制。 对于SAP ABAP代码下载,首先需要使用SAP GUI连接到SAP系统。然后,在SAP编程工具中,可以使用SE38或SE80等开发工具打开要下载的程序或类。接着,进入“Object Navigator”界面,选择要下载的程序或类,并右键单击“下载”选项。在弹出的对话框中,可以选择下载为本地文件或与SVN等版本控制系统集成。同时,需要选择目标文件路径和文件名,并确保选择“保存为二进制文件”选项。 点击“下载”按钮后,系统会自动将代码下载为.abap或.sav文件。随后,用户可以选择使用文本编辑器或ABAP开发工具等工具对下载的代码进行编辑和修改。在修改完成后,用户可以将修改后的代码上传到SAP系统中,以进行进一步的测试和部署。 总之,SAP ABAP代码下载是SAP ABAP开发过程中常用的操作,可以方便用户在本地进行开发和版本控制,并加快开发的进度。同时,需要注意的是,代码下载最好在开发环境中进行,避免对生产环境造成不必要的风险。 ### 回答3: SAP ABAPSAP应用程序开发语言,其代码下载需要通过SAP开发工具(如Eclipse或SAP GUI)连接到SAP系统,并使用ABAP工具进行代码下载。首先,在SAP系统中创建一个包,并将相关的ABAP程序/报表/函数/类放入该包中。然后,在开发工具中使用SE38或SE80事务代码打开ABAP程序,并选择“下载”选项。将代码保存到本地计算机中即可。代码下载可选择为文本格式和XML格式。下载时需要指定下载的范围,如全局、选定某个函数模块或报表等。另外,由于ABAP程序通常具有依赖关系,因此必须下载其所需的ABAP包。在下载前,还需要注意版本控制,以确保下载的代码版本与SAP系统中的版本相同。在下载完成后,可以对代码进行编辑、修改或调试。最后,将修改后的代码上传到SAP系统中以完成开发过程。总之,ABAP代码下载是开发SAP应用程序不可或缺的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值