码迷,mamicode.com
首页 > 其他好文 > 详细

◆◆0通过XML转换下载.xlsx格式的excel文件

时间:2020-03-22 10:43:08      阅读:72      评论:0      收藏:0      [点我收藏+]

标签:struct   not   自定义   select   print   def   文件   filename   lin   

在SAP系统中,通过SE11显示一个table的内容,可以发现ALV grid的显示界面上有个spread sheet的标准按钮,点击这个按钮可以将显示的内容下载成excel文件,其中也包括扩展名.xlsx的文件。

技术图片

这个功能很方便,因为下载的结果和ALV中看到的是一样的。

技术图片

debug研究了一下标准代码,发现是将需要下载的内表先转换成XML stream,然后再通过gui_download的BIN模式将xml stream下载成.xlsx文件。

技术图片

写了一个简单的程序供大家参考

在status上加了两个按钮,一个是标准的spreadsheet按钮(&XXL),一个是自定义的按钮(DOWN),供下载结果对比使用。

技术图片

代码简单说明:

1) cl_salv_bs_tt_util=>if_salv_bs_tt_util~transform是用来指定下载的excel格式的,也就是模拟了标准按钮的那个format选择步骤,这个类方法中用到了接口if_salv_bs_xml中的一些属性,10就标识是下载成.xlsx格式的文件。

技术图片

2) SCMS_XSTRING_TO_BINARY可以将Xtring转化成二进制格式并保存到内表中

以上。

◆◆0通过XML转换下载.xlsx格式的excel文件

标签:struct   not   自定义   select   print   def   文件   filename   lin   

原文地址:https://www.cnblogs.com/lvdong18847870057/p/12544104.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!