从Excel文件上传到内部表的行数不超过150。

2020-08-21 19:27发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我们有一个Z程序,可以使用BAPI将初始库存从excel文件上传到SAP。 问题是我们已将行定义为" 65536"。 但是它一次最多上传不超过150行。 这段代码如下。

 数据:it_excel像alsmex_tabline一样,在HEADER LINE中发生0。
 数据:带有标题行的alsmex_tabline的xcel类型表。
 数据:gd_scol类型i值'1',
        gd_srow TYPE i VALUE'3',
        gd_ecol TYPE i VALUE'256',
        gd_erow TYPE i VALUE'65536'。
 
 PERFORM upload_excel_file表格gt_out
                               使用p_file
                                       gd_scol
                                       gd_srow
                                       gd_ecol
                                       gd_erow。
 FORM upload_excel_file表格gt_out
                                    "为<...>插入正确的名称
                         使用p_p_file
                                  p_gd_scol
                                  p_gd_srow
                                  p_gd_ecol
                                  p_gd_erow。
   数据:lt_intern TYPE kcde_cells使用标题行占用了0。
   数据:ld_index类型i。
   字段符号: TYPE ANY。
   通话功能'KCD_EXCEL_OLE_TO_INT_CONVERT'
     出口
       文件名= p_p_file
       i_begin_col = p_gd_scol
       i_begin_row = p_gd_srow
       i_end_col = p_gd_ecol
       i_end_row = p_gd_erow
     桌子
       实习生= lt_intern []。
   如果sy-subrc <> 0。
 *消息ID SY-MSGID类型SY-MSGTY编号SY-MSGNO
 *与SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4。
   万一。
   如果lt_intern []为INITIAL。
     格式颜色:COL_BACKGROUND。
     写:/"没有数据上传"。
     出口。
   其他。
     排序lt_intern BY行col。
     循环到lt_intern。
       将lt_intern-col移动到ld_index。
       将结构gt_out的分配ld_index分配到。
       将lt_intern值移动到。
       在第END行。
         APPEND gt_out。
         清除gt_out。
       ENDAT。
     结局。
   万一。

 ENDFORM。
 

请告诉我,这是什么问题。 我想一次上传所有行。

谢谢

关于

玫瑰碱。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我们有一个Z程序,可以使用BAPI将初始库存从excel文件上传到SAP。 问题是我们已将行定义为" 65536"。 但是它一次最多上传不超过150行。 这段代码如下。

 数据:it_excel像alsmex_tabline一样,在HEADER LINE中发生0。
 数据:带有标题行的alsmex_tabline的xcel类型表。
 数据:gd_scol类型i值'1',
        gd_srow TYPE i VALUE'3',
        gd_ecol TYPE i VALUE'256',
        gd_erow TYPE i VALUE'65536'。
 
 PERFORM upload_excel_file表格gt_out
                               使用p_file
                                       gd_scol
                                       gd_srow
                                       gd_ecol
                                       gd_erow。
 FORM upload_excel_file表格gt_out
                                    "为<...>插入正确的名称
                         使用p_p_file
                                  p_gd_scol
                                  p_gd_srow
                                  p_gd_ecol
                                  p_gd_erow。
   数据:lt_intern TYPE kcde_cells使用标题行占用了0。
   数据:ld_index类型i。
   字段符号: TYPE ANY。
   通话功能'KCD_EXCEL_OLE_TO_INT_CONVERT'
     出口
       文件名= p_p_file
       i_begin_col = p_gd_scol
       i_begin_row = p_gd_srow
       i_end_col = p_gd_ecol
       i_end_row = p_gd_erow
     桌子
       实习生= lt_intern []。
   如果sy-subrc <> 0。
 *消息ID SY-MSGID类型SY-MSGTY编号SY-MSGNO
 *与SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4。
   万一。
   如果lt_intern []为INITIAL。
     格式颜色:COL_BACKGROUND。
     写:/"没有数据上传"。
     出口。
   其他。
     排序lt_intern BY行col。
     循环到lt_intern。
       将lt_intern-col移动到ld_index。
       将结构gt_out的分配ld_index分配到。
       将lt_intern值移动到。
       在第END行。
         APPEND gt_out。
         清除gt_out。
       ENDAT。
     结局。
   万一。

 ENDFORM。
 

请告诉我,这是什么问题。 我想一次上传所有行。

谢谢

关于

玫瑰碱。

付费偷看设置
发送
7条回答
奄奄一息的小鱼
1楼-- · 2020-08-21 19:52

嗨,

尝试此FM

 *将XLS转换为内部表
     通话功能" TEXT_CONVERT_XLS_TO_SAP"
       出口
         i_tab_raw_data = lv_tab_raw_data"虚拟字段
         i_filename = p_file"您的文件名
       桌子
         i_tab_converted_data = gt_out"最终内部表
       例外情况
         conversion_failed = 1
         其他= 2。
 
小灯塔
2楼-- · 2020-08-21 19:48

嗨,罗布,我确认,你在挑剔! :-D有关信息,我已经为一些喜欢阅读的人指出了一些有关释放和释放对象的SAP注释:[SAP库-记录和发布功能模块| http://help.sap.com/saphelp_nw70/helpdata/en/d1/801f50454211d189710000e8322d00/frameset.htm ] ,[说明109533-使用SAP功能模块| https://service.sap.com/ sap/support/notes/109533 ],[Note 415983-SAP功能模块的修改/客户开发| https://service.sap.com/sap/support/notes/415983 ]; 未发布的BAPI的示例-> [注释577453-使用BAPI BAPI_DELIVERYPROCESSING_EXEC | https://service。 sap.com/sap/support/notes/577453 ]

Sandra

bbpeas
3楼-- · 2020-08-21 20:06

嗨,

尝试使用FM ALSM_EXCEL_TO_INTERNAL_TABLE,否则请执行以下操作。

 *-上载xls表
   通话功能'GUI_UPLOAD'
     出口
       filename = p_locin"具有位置的文件名
       has_field_separator ='X'
     桌子
       data_tab = li_text_data。

   如果sy-subrc <> 0。
   万一。

   lv_file = p_locin。
 *-将xls转换为可读格式
   通话功能" TEXT_CONVERT_XLS_TO_SAP"
     出口
       i_field_seperator ='X'
       i_tab_raw_data = li_text_data
       i_filename = lv_file
     桌子
       i_tab_converted_data = li_locfile。

itab li_loc文件将包含数据。

SC_Yao
4楼-- · 2020-08-21 19:58

我们有一个Z程序,可以使用BAPI \ [... \] KCD_EXCEL_OLE_TO_INT_CONVERT将初始库存从excel文件上传到SAP

仅需一点评论:KCD_EXCEL_OLE_TO_INT_CONVERT绝对不是BAPI,并且不会发布(发布的意思是"可以由客户使用")。 BAPI名称以BAPI开头,通常会被释放。 使用未发布的SAP对象时,请务必谨慎。 请注意,TEXT_CONVERT_XLS_TO_SAP也没有发布,但是它使用了DOI,DOI是一种受支持的技术,我认为您使用它的风险不高(因为许多客户端都在使用它)。

暮风yp
5楼-- · 2020-08-21 19:56

嗨,

尽管我不确定确切的原因是什么。

根据我的要求,我已经使用FM'ALSM_EXCEL_TO_INTERNAL_TABLE'在应用程序服务器中成功上传了150行以上的excel文件。

您可以尝试这个。

谢谢.....

Climb_Ma
6楼-- · 2020-08-21 19:51

自己解决了。

一周热门 更多>