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.

相关推荐
Slow、17 小时前
PPDS生产计划执行-反冲扣料
sap·apo
chatexcel19 小时前
ChatExcel MAX 教程:AI Excel 数据清洗、异常核查与分析报告生成
人工智能·excel
葡萄城技术团队20 小时前
模拟运算表全解析:从 Excel 的两变量限制到 SpreadJS 的不限变量 | SpreadJS 新版本 特性解析
excel
hoiii1871 天前
C# Txt/Excel/Access 导入导出工具
开发语言·c#·excel
小当家.1051 天前
Excel AI Converter:用 大模型 自动转换excel表格格式
人工智能·excel·工具
2501_930707781 天前
使用 C# 在 Excel 中合并并居中单元格
开发语言·c#·excel
ComPDFKit1 天前
2026 PDF 表格提取工具横评:15 款工具实测对比
pdf·excel·pdf表格提取·pdf to excel·pdf数据提取
技术小甜甜2 天前
[办公效率] Excel 表格越做越乱,先整理字段、格式还是公式?
数据库·excel·办公效率·数据整理
SunnyDays10112 天前
如何使用 C# 自动调整 Excel 行高和列宽
开发语言·c#·excel
itgather2 天前
OfficeExcel — Word / Excel DLL 验证台功能介绍
c#·word·excel