首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WebDynpro中实现Excel模板下载功能

1.打开SE80创建WebDynpro组件。

2.填写详细信息

3.然后点击组件右键创建选项导入一个EXCEL模板

4.这个时候将我们本地新建的模板文件导入进去。

5.操作的系统模板名字暂时不能应用为中文,会提示错误。所以这里我将模板名字设置为1。

6.在VIEW视图下创建一个模板下载按钮。

7.然后创建ON Action就是点击按钮后的操作。双击进入到代码编辑器。

8.然后编写代码,实现模板下载功能。

代码如下:

DATA : lr_component TYPE REF TO if_wd_component.

DATA : lr_component_info TYPE REF TO if_wd_rr_component.

DATA : lr_mr_api TYPE REF TO if_mr_api.

DATA : lv_wd_name TYPE string.

DATA : lv_url TYPE string.

DATA : lv_xstr TYPE xstring.

*取得组件相关对象

lr_component = wd_comp_controller->wd_get_api( ).

lr_component_info = lr_component->get_component_info( ).

*取得当前组件的名字

lv_wd_name = lr_component_info->get_name( ).

*取得excel模板的URL

CALL METHOD cl_wd_utilities=>construct_wd_url(

EXPORTING

application_name = lv_wd_name

IMPORTING

out_local_url    = lv_url ).

lv_url = lv_url && '/Template.xlsx'.

*取得excel模板中的内容,保存为xstring格式

lr_mr_api = cl_mime_repository_api=>get_api( ).

lr_mr_api->get(

EXPORTING

i_url     = lv_url

i_check_authority = ''

IMPORTING

e_content = lv_xstr ).

*将excel打开

cl_wd_runtime_services=>attach_file_to_response(

EXPORTING

i_filename = '1.xlsx'

i_content = lv_xstr

i_mime_type = 'xlsx'

i_in_new_window = abap_false

i_inplace = abap_false ).

9.创建WebDynpro应用程序进行测试。

10.测试成功(复制链接到IE浏览器,其他浏览器会出现乱码情况)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210205A00QN600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券