Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7134059
  • 博文数量: 655
  • 博客积分: 10264
  • 博客等级: 上将
  • 技术积分: 8278
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-04 17:47
个人简介

ABAP顾问

文章分类

全部博文(655)

文章存档

2017年(2)

2014年(8)

2013年(3)

2012年(2)

2011年(18)

2010年(102)

2009年(137)

2008年(274)

2007年(134)

分类:

2007-12-07 22:17:03

*&---------------------------------------------------------------------*
*& Report  Z_BARRY_UPLOAD_EXCEL
*&
*&---------------------------------------------------------------------*
*& 上传Excel文件到SAP内表
*& 除此方法,还可以使用FM: ALSM_EXCEL_TO_INTERNAL_TABLE
*&---------------------------------------------------------------------*
REPORT  z_barry_upload_excel.
TYPE-POOLS: truxs.
TYPES: BEGIN OF t_datatab,
      col1(30)    TYPE c,
      col2(30)    TYPE c,
      col3(30)    TYPE c,
      END OF t_datatab.
DATA: it_datatab TYPE STANDARD TABLE OF t_datatab,
      wa_datatab TYPE t_datatab.
DATA: it_raw TYPE truxs_t_text_data.
PARAMETERS: p_file TYPE  rlgrap-filename.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  CALL FUNCTION 'F4_FILENAME'
    EXPORTING
      field_name = 'P_FILE'
    IMPORTING
      file_name  = p_file.
START-OF-SELECTION.
  CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
    EXPORTING
*     I_FIELD_SEPERATOR        =
      i_line_header            =  'X'
      i_tab_raw_data           =  it_raw       " WORK TABLE
      i_filename               =  p_file
    TABLES
      i_tab_converted_data     = it_datatab[]    "ACTUAL DATA
   EXCEPTIONS
      conversion_failed        = 1
      OTHERS                   = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
  LOOP AT it_datatab INTO wa_datatab.
    WRITE:/ wa_datatab-col1,
            wa_datatab-col2,
            wa_datatab-col3.
  ENDLOOP.
 
如果有Excel内Cell内容过长情况,请参考:
 
 
以Excel格式下载内表到本机
**************
Report z_export_excel.
 
PARAMETERS: p_file LIKE rlgrap-filename DEFAULT 'C:\test4.xls'.
DATA: t100_lines TYPE STANDARD TABLE OF t001 WITH DEFAULT KEY.
 
SELECT * FROM t001 INTO TABLE t100_lines.
CALL FUNCTION 'SAP_CONVERT_TO_XLS_FORMAT'
     EXPORTING
          i_filename     = p_file
     TABLES
          i_tab_sap_data = t100_lines.
 
**注:如果是使用Office2007,需要GUI为720版本,否则生成的Excel文件可能会打不开
阅读(8147) | 评论(13) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-09 21:37:16

没激活

chinaunix网友2011-03-09 15:19:09

哦,可以了,粗心了。

chinaunix网友2011-03-09 08:49:11

完整的按照你的这个program 敲到机器上,但是会报错呢。 Incorrect parameter with CALL FUNCTION. 发生了什么? When calling a function module, one of the parmaeters was not specified. Error in the ABAP Application Program The current ABAP program "!0EST013" had to be terminated because it has come across a statement that unfortunately cannot be executed.

qdbarry2009-08-19 18:07:38

Office2007确实不行,应该是SAPGUI提供那几个DOI OCX的原因 暂时使用函数MS_EXCEL_OLE_STANDARD_DAT吧

qdbarry2009-08-06 16:55:01

是很奇怪,你可以找个空间把你的系统上运行程序生成的那个文件发上去我看看。 GUI_DOWNLOAD生成的是制表符分割的文本文件,不是Excel的二进制文件,你可以用记事本打开看下。