当前位置:网站首页>SAP ABAP EXCEL 下载模板
SAP ABAP EXCEL 下载模板
2022-08-05 17:39:00 【请输入昵称膨胀的馒头】
SAP ABAP EXCEL 下载模板
定义屏幕
这是在屏幕的执行按钮后的位置添加一个功能按钮
SELECTION-SCREEN FUNCTION KEY 1.
初始化设置
给sscrfields-functxt_01赋值就是给上述添加的功能按钮设置按钮文本
TABLES: sscrfields.
INITIALIZATION.
` sscrfields-functxt_01 = '模板下载'.
点击按钮后触发下载功能
当用户点击屏幕功能按钮 sscrfields-ucomm EQ ‘FC01’ 时弹出文件保存框,提示用户选择保存路径
后执行下载功能
AT SELECTION-SCREEN.
DATA: gv_name TYPE string,
gv_file TYPE string,
gv_user_action TYPE i.
IF sscrfields-ucomm EQ 'FC01'.
` gv_name = '下载模板'.
CALL FUNCTION 'GUI_FILE_SAVE_DIALOG'
EXPORTING
default_file_name = gv_name
IMPORTING
fullpath = gv_file
user_action = gv_user_action.
IF gv_user_action EQ 0.
` PERFORM frm_download_excel USING 'ZTEMPLATE' gv_file.
MESSAGE '模板下载成功!' TYPE 'S'.
ENDIF.
ENDIF.
下载EXCEL文件功能
FORM frm_download_excel USING excel_name excel_name1.
DATA:
ls_objdata LIKE wwwdatatab,
ls_mime LIKE w3mime,
ls_destination LIKE rlgrap-filename,
lv_objnam TYPE string,
lv_subrc LIKE sy-subrc,
lv_errtxt TYPE string,
lv_objid TYPE wwwdatatab-objid,
lv_dest LIKE sapb-sappfad,
lv_fullpath LIKE rlgrap-filename.
MOVE excel_name TO lv_objid.
CONCATENATE lv_objid '.XLSX' INTO lv_objnam.
CONDENSE lv_objnam NO-GAPS.
SELECT SINGLE
relid,
objid
FROM
wwwdata
WHERE srtf2 EQ 0
AND relid EQ 'MI'
AND objid EQ @lv_objid
INTO CORRESPONDING FIELDS OF @ls_objdata.
IF sy-subrc NE 0 OR ls_objdata-objid EQ space.
CONCATENATE '模板文件:' lv_objnam '不存在,请用TCODE:SMW0进行加载' INTO lv_errtxt.
MESSAGE lv_errtxt TYPE 'E'.
RETURN.
ENDIF.
CONCATENATE excel_name1 '.xlsx' INTO lv_fullpath.
CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
EXPORTING
key = ls_objdata
destination = lv_fullpath
IMPORTING
rc = lv_subrc.
IF lv_subrc NE 0.
CONCATENATE '模板文件:' lv_objnam '下载失败' INTO lv_errtxt.
MESSAGE lv_errtxt TYPE 'E'.
ELSE.
MESSAGE '模板下载成功' TYPE 'S'.
ENDIF.
ENDFORM.
边栏推荐
猜你喜欢
随机推荐
科研实习 | 北京大学万小军老师课题组招收NLP方向实习生和访问学生
Software testing high or developers to pay high salary?
《你的灯亮着吗?》:避开思维陷阱,高效解决问题
【数据挖掘】顺丰公司数据挖掘笔试题
go pprof 你真用对了吗
【云计算概念】IaaS、PaaS、SaaS、CaaS、MaaS的区别
4-Arm PEG-DSPE,MW:2000,四臂-聚乙二醇-磷脂仅供科研实验使用
【Untitled】
2022 第四周全球 AI 模型周报
编译器工程师眼中的好代码(1):Loop Interchange
【边缘计算概念】MEC(Mobile Edge Computing边缘计算技术)
Kettle需求场景复现
From functional testing to mastering automation, how did I go from a point worker to an Internet factory in four months
兴盛优选监控场景的时序数据库选型与落地实践
ORACLE ORA-01653: how to deal with the error of unable to extend table
《进阶指南》0x01 复盘
AIRIOT答疑第7期|如何快速提升物联网项目交付速度?
阿里百万级Redis小册震撼开源,打开源码新世界
为什么那么多人劝退软件测试?月薪1万以上的就别点进来了
Observed cloud in wan cloud market, promote the cloud system unified observation ability









