内表转WORD一法, 可以调用WORD做报表了

    今天在技术群里再讨论ABAP调用WORD打印的问题, 忽然想起.NET中常用组合HTML字符串的方法来导出WORD文件, 这个方法在ABAP中应该也可以吧, 于是简单做了个测试, 代码如下:

 

 DATABEGIN OF wa_html,
        zhtml(255),
      END OF wa_html,
      gt_html LIKE TABLE OF wa_html.

DATA: v_str TYPE string.

DEFINE appd_html.
  wa_html-zhtml = &1.
  append wa_html to gt_html.
  clear wa_html.
END-OF-DEFINITION.

appd_html: '<table style="width:100%;border:1px black solid;font-size:10px; border-collapse:collapse;font-family:Arial Unicode MS;">',
           '<tr>',
           '<td align="center" style="border:1px black solid;">1111111111</td>',
           '<td align="center" style="border:1px black solid;">2222222222</td>',
           '</tr>',
           '<tr>',
           '<td align="center" style="border:1px black solid;">1111111111</td>',
           '<td align="center" style="border:1px black solid;">2222222222</td>',
           '</tr>',
           '<tr>',
           '<td align="center" style="border:1px black solid;">1111111111</td>',
           '<td align="center" style="border:1px black solid;">2222222222</td>',
           '</tr>',
           '</table>'.

CALL METHOD cl_gui_frontend_services=>gui_download
  EXPORTING
    filename = 'c:/a.doc'
  CHANGING
    data_tab = gt_html.

IF sy-subrc EQ 0.
  write 'OK'.
ELSE.
  write 'ER'.
ENDIF.

 

运行上面的代码后, 会在C盘生成一个A.DOC的文件, 双击, 可以看到Word能正够正常显示内容及格式. 再自动化一点,就是实例化OLE对象并打开这个文件啦, 这里就不写了, 有兴趣的自己试吧.

 

---------------------------------2010-07-05 更新----------------------------------------

注: 加上如下代码, 程序运行将直接调用Wod打开文件

 CALL FUNCTION 'CALL_INTERNET_ADRESS'
 EXPORTING
   PI_ADRESS           = 'c:/a.doc'
*   PI_TECHKEY          = ''
 EXCEPTIONS
   NO_INPUT_DATA       = 1
   OTHERS              = 2
          .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值