abap excel上传

DATA: lt_excel_data TYPE TABLE OF ty_excel_data,

ls_excel_data TYPE ty_excel_data.

DATA: lt_intern TYPE TABLE OF alsmex_tabline,

ls_intern TYPE alsmex_tabline,

lv_row TYPE i,

lv_col TYPE i.

DATA: lv_filename TYPE string,

lv_filetype TYPE char10.

IF p_file IS INITIAL.

MESSAGE '请填写上载模板地址' TYPE 'S' DISPLAY LIKE 'E'.

LEAVE LIST-PROCESSING.

ENDIF.

PERFORM upload_excel.

FORM upload_excel.

DATA: lt_rawdata TYPE truxs_t_text_data,

lv_index TYPE i,

lv_tabix TYPE sy-tabix.

CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'

EXPORTING

filename = p_file

i_begin_col = 1

i_begin_row = 3 " 跳过表头

i_end_col = 38

i_end_row = 9999

TABLES

intern = lt_intern

EXCEPTIONS

inconsistent_parameters = 1

upload_ole = 2

OTHERS = 3.

IF sy-subrc = 0.

CLEAR: lt_excel_data.

SORT lt_intern BY row col.

LOOP AT lt_intern INTO DATA(ls_intern).

AT NEW row.

lv_row = ls_intern-row.

CLEAR ls_excel_data.

ENDAT.

ASSIGN COMPONENT ls_intern-col

OF STRUCTURE ls_excel_data

TO FIELD-SYMBOL(<lv_field>).

IF sy-subrc = 0.

<lv_field> = ls_intern-value.

ENDIF.

AT END OF row.

APPEND ls_excel_data TO lt_excel_data.

ENDAT.

ENDLOOP.

ELSE.

MESSAGE 'Excel文件读取失败' TYPE 'E'.

ENDIF.

"ENDIF.

PERFORM display_data.

ENDFORM.

*&---------------------------------------------------------------------*

*& Form DISPLAY_DATA

*&---------------------------------------------------------------------*

FORM display_data.

DATA: lt_alv TYPE REF TO cl_salv_table,

lx_msg TYPE REF TO cx_salv_msg.

TRY.

cl_salv_table=>factory(

IMPORTING

r_salv_table = lt_alv

CHANGING

t_table = lt_excel_data ).

lt_alv->get_columns( )->set_optimize( 'X' ).

lt_alv->display( ).

CATCH cx_salv_msg INTO lx_msg.

MESSAGE lx_msg TYPE 'E'.

ENDTRY.

ENDFORM.

相关推荐
开开心心_Every13 小时前
实现鼠标键盘动作录制与重复播放的工具
微信·jupyter·pycharm·pdf·计算机外设·word·excel
智途 Tech17 小时前
2026年分析多个Excel、CSV和网页数据的AI工具清单:Tabbit 浏览器多源引用
大数据·人工智能·excel
ltqvibe18 小时前
AI问数、找IT取数、自己导Excel,三条路怎么选
人工智能·excel·数据报表·智能问数·ai问数·本体语义·取数
ISBN图书20 小时前
ISBN 批量查询怎么做?用 Excel 一次补全书名、作者和出版社信息
excel·isbn·图书数据
Irene199121 小时前
获取 Excel 填充色的十六进制颜色值:取色器 + 手动转 RGB
excel·wps
E_ICEBLUE1 天前
为 Excel 工作簿和工作表设置密码保护【Python教程】
python·excel
小白学大数据2 天前
超简单:用 Python 让 Excel 飞起来:用 openpyxl 把重复报表整理交给脚本
开发语言·数据库·python·excel
SunnyDays10112 天前
如何使用 Python 添加和编辑 Excel VBA 宏(无需安装 Excel)
开发语言·python·excel·vba
GHL2842710902 天前
codex操作excel学习
学习·ai·word·excel
爱喝水的鱼丶2 天前
SAP-ABAP:SAP学习分享:深入理解事务码ME32K——更改采购合同
性能优化·sap·abap·业务学习·开发交流·交流学习·采购合同