点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们, 报告ZEXCEL。 TYPE-POOLS:特鲁克斯。 带有标题行的DATA BDCDATA像BDCDATA发生0。 参数:p_file类型rlgrap文件名。 类型:t_datatab的开始, matnr型mara-matnr, bismt类型mara-bismt, t_datatab的结尾。 数据:t_datatab的it_datatab类型标准表, wa_datatab键入t_datatab。 数据:it_raw TYPE truxs_t_text_data。 DATA NODATA。 *在选择屏幕上 在p_file的VALUE-REQUEST的SELECTION屏幕上。 通话功能'F4_FILENAME' 出口 field_name ='P_FILE' 输入 file_name = p_file。 ****************************************************** ********************* *开始选择。 选择开始。 通话功能" TEXT_CONVERT_XLS_TO_SAP" 出口 * I_FIELD_SEPERATOR = i_line_header ='X' i_tab_raw_data = it_raw"工作表 i_filename = p_file 桌子 i_tab_converted_data = it_datatab []"实际数据 例外情况 conversion_failed = 1 其他= 2。 如果sy-subrc <> 0。 消息ID sy-msgid类型sy-msgty编号sy-msgno 与sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4。 万一。 ****************************************************** ********************* *选择结束。 选择结束。 循环至it_datatab并进入wa_datatab。 使用'SAPLMGMM''0060'执行bdc_dynpro。 使用'BDC_CURSOR'执行bdc_field 'RMMG1-MATNR'。 使用'BDC_OKCODE'执行bdc_field '= ENTR'。 使用'RMMG1-MATNR'执行bdc_field WA_DATATAB-MATNR。 使用'SAPLMGMM''0070'执行bdc_dynpro。 使用'BDC_CURSOR'执行bdc_field 'MSICHTAUSW-DYTXT(01)'。 使用'BDC_OKCODE'执行bdc_field '= ENTR'。 使用'MSICHTAUSW-KZSEL(01)'执行bdc_field 'X'。 使用'SAPLMGMM''4004'执行bdc_dynpro。 使用'BDC_OKCODE'执行bdc_field '= BU'。 使用'BDC_CURSOR'执行bdc_field 'MARA-BISMT'。 使用'MARA-BISMT'执行bdc_field WA_DATATAB-BISMT。 使用BDCDATA模式'A'进行呼叫交易'MM02'。 刷新BDCDATA。 结局。 使用程序DYNPRO的BDC_DYNPRO表格。 清除BDCDATA。 BDCDATA-PROGRAM =程序。 BDCDATA-DYNPRO = DYNPRO。 BDCDATA-DYNBEGIN ='X'。 追加BDCDATA。 ENDFORM。 * ------------------------------------------------- --------------------- * *插入栏位* * ------------------------------------------------- --------------------- * 使用FNAM FVAL形成BDC_FIELD。 如果FVAL <> NODATA。 清除BDCDATA。 BDCDATA-FNAM = FNAM。 BDCDATA-FVAL = FVAL。 追加BDCDATA。 万一。 ENDFORM。 当我执行上述代码错误消息时,由于"无效的指针",msg显示为未处理的数据 操作",请您帮我解决问题。同时请您告诉是否 代码正确与否。 如果有任何修改,请您提及。 问候。
Bhavani Amara 一个小建议,我看到您想更新BISMT(旧材料编号),您可以利用 BAPI'BAPI_MATERIAL_SAVEDATA',将旧资料传递给CLIENTDATA-OLD_MAT_NO,也将'X'传递给CLIENTDATAX-OLD_MAT_NO
嗨,
请再次记录BDC,在记录BDC时数据输入有误。
一周热门 更多>