ABAP 随笔 EXCEL 操作笔记1Excel 模板下载

作者:SAPTAB 约 5 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, Data Engineering, MM, 开发, 数据工程, 物料管理
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

原创 Tab Zhu [ SAP TAB ](javascript:void\(0\);)

**点击蓝字关注我们**

富强 民主 文明 和谐

自由 平等 公正 法制

爱国 敬业 诚信 友善

_**01** _

**EXCEL模板下载**

**不念过** **去**

**START**

**不畏将来**

TCODE:SMW0

创建 excel 模板 ( 其他模板也可以 )

我们选择二进制数据

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

选择在哪个包里面创建模板

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

点击创建:

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

备注:如果出现以下错误 (无分配给对象 c:\ 的 MINE类型)

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

则需要进行以下操作:保存。

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

如需要其他后缀的,可以在EXTENSION中添加

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

这样就可以成功创建

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

在report的 **程序中代码** 为:

TABLES : sscrfields .

---

SELECTION-SCREEN : FUNCTION KEY 1 . " 按钮在标题行 SELECTION-SCREEN PUSHBUTTON 02 ( 10 ) TEXT \- 001 USER-COMMAND pb1

. " 按钮在 select 界面

INITIALIZATION .

sscrfields \- functxt_01 = ' 下载模板 ' .

AT SELECTION-SCREEN .

CASE sscrfields \- ucomm .

WHEN 'FC01' OR 'PB1' .

CALL METHOD zcl_document_jxzhu => download_template_to_frontend

EXPORTING

name_of_template = ' 物料主数据客制表 '

• iv_relid = 'MI'

iv_objid = 'ZMMT001'

• IMPORTING

• rv_filepath =

EXCEPTIONS

download_error = 1

OTHERS = 2 .

IF sy \- subrc <> 0 .

• Implement suitable error handling here

ENDIF .

WHEN OTHERS .

ENDCASE .

其中zcl_document_jxzhu=>download_template_to_frontend的代码为:

同学们可以直接创建SE24类。方便以后可以直接调用。

METHOD download_template_to_frontend .

DATA : ls_key TYPE wwwdatatab ,

ls_wwwdata TYPE wwwdata ,

lv_filename TYPE string ,

lv_path TYPE string ,

lv_fullpath TYPE string ,

lv_extension TYPE c LENGTH 100 ,

lv_user_action TYPE i .

DATA : lv_offset TYPE i ,

lv_length TYPE i .

CLEAR rv_filepath .

IF iv_relid IS INITIAL . SELECT SINGLE relid objid srtf2 checkout checknew chname tdate ttime text

INTO CORRESPONDING FIELDS OF ls_wwwdata

FROM wwwdata

WHERE objid = iv_objid .

iv_relid = ls_wwwdata \- relid .

ELSE .

SELECT SINGLE relid objid srtf2 checkout checknew chname tdate ttime text

INTO CORRESPONDING FIELDS OF ls_wwwdata

FROM wwwdata

WHERE relid = iv_relid AND objid = iv_objid .

ENDIF .

*window title

DATA ( iv_window_title ) = |Please choose the save filepath !| .

*file extension

CALL FUNCTION 'WWWPARAMS_READ'

EXPORTING

relid = ls_wwwdata \- relid objid = ls_wwwdata \- objid

name = 'fileextension' "c_extension of include LSHTMTOP

IMPORTING

value = lv_extension

EXCEPTIONS

entry_not_exists = 1

OTHERS = 2 .

IF sy \- subrc <> 0 . ENDIF .

DATA iv_default_extension TYPE string .

iv_default_extension = lv_extension .

*file filter

DATA ( iv_file_filter ) = '(*' && iv_default_extension && ')|*' &&

iv_default_extension .

*file name

CONCATENATE name_of_template '-' sy \- datum+0 ( 8 ) sy \- timlo+0

( 4 )

INTO DATA ( iv_default_file_name ).

IF iv_default_file_name IS INITIAL . iv_default_file_name = ls_wwwdata \- text .

ELSE .

WHILE iv_default_file_name CA './' .

lv_offset = sy \- fdpos . lv_length = lv_offset . lv_offset = lv_offset + 1 . iv_default_file_name = iv_default_file_name+0 ( lv_length ) &&

iv_default_file_name+lv_offset .

ENDWHILE . ENDIF . ls_key \- relid = iv_relid . ls_key \- objid = iv_objid .

*File path of selection

CALL METHOD cl_gui_frontend_services => file_save_dialog

EXPORTING

window_title = iv_window_title

default_extension = iv_default_extension default_file_name = iv_default_file_name

file_filter = iv_file_filter

CHANGING

filename = lv_filename path = lv_path fullpath = lv_fullpath user_action = lv_user_action

EXCEPTIONS

cntl_error = 1

error_no_gui = 2

not_supported_by_gui = 3

OTHERS = 4 .

IF sy \- subrc <> 0 .

• happen sth wrong

DATA ( ev_rc ) = sy \- subrc .

ENDIF .

• user action ( exit or cancal )

IF lv_user_action <> 0 . ev_rc = lv_user_action . ENDIF .
IF ev_rc <> 0 . RAISE download_error . ENDIF .
rv_filepath = lv_fullpath .

*Download web object

DATA : lv_destination TYPE rlgrap \- filename .

lv_destination = rv_filepath . CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'

EXPORTING

key = ls_key destination = lv_destination

IMPORTING

rc = ev_rc

CHANGING

temp = lv_destination . IF ev_rc <> 0 . RAISE download_error . ENDIF . ENDMETHOD .

---

执行效果如下:

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

-Tab Zhu 晚安 努力 2020

**不念过** **去**

**END**

**不畏将来**

ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图
ABAP 随笔 EXCEL 操作笔记1Excel 模板下载 - 封面图

**SAP ABAP TAB**

微信号 : TAB_JXZHU

后台回复'ABAP'免费领取学习资料

长按二维码关注我们

SAPTAB

关于作者:SAPTAB

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「ABAP随笔EXCEL操作笔记1Excel模板下载.md」整理生成,仅用于内部技术分享与学习交流。