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.

相关推荐
骆驼爱记录11 小时前
Word题注编号间距调整4种方法
自动化·word·excel·wps·新人首发
Eiceblue14 小时前
两种实用方法删除 Excel 重复行:Python + VBA
开发语言·python·excel
m5655bj1 天前
通过 Python 将 Excel 转换为 TXT文本
开发语言·python·excel
要做一个小太阳1 天前
excel VLOOKUP函数
excel
爱喝水的鱼丶1 天前
SAP-ABAP:掌握BAPI_OUTB_DELIVERY_CONFIRM_DEC:解锁SAP自动化发货的核心钥匙
运维·学习·sap·abap·交流学习
博风1 天前
用excel写一个年会抽奖的小程序
excel
零零发聊技术2 天前
Excel实现数字与列标之间的转换
excel·vba·office
老吴学AI2 天前
第 3 节 | 视觉魔术:Excel 如何用颜色和位置“控制”读者视线
信息可视化·数据分析·excel·职场·数据可视化·报表制作·用数据讲故事
零零发聊技术2 天前
将电脑Excel文件恢复到几天前的版本
文件恢复·excel
SAP_奥维奥科技2 天前
详解SAP Business One:采购费用的处理方式
sap