ML81N的BDC接受SES

2020-08-25 12:11发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我为ML81n创建了...

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

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


专家们,

我为ML81n创建了一个BDC以接受SES。 然后,我创建了一个内部具有BDC代码的程序,并将该程序称为后台作业。 该程序从表中读取SES编号,然后一个接一个地接受。 如果从SE38运行此程序,一切正常,但是当我在后台运行它时,它在以下dump下失败

触发了异常条件" CNTL_ERROR"

程序" CL_GUI_DOCKING_CONTAINER ====== CP"中的RAISE语句引发了
异常条件" CNTL_ERROR"。 我搜索了SCN,发现当涉及一些ALV控件等时会发生这种情况。在这里,我看到此问题可能是在弹出的询问PO/SES编号的弹出屏幕期间发生的。 我该如何解决?

下面是我的代码

使用'SAPLMLSR''0400'执行bdc_dynpro。

     使用'BDC_OKCODE'执行PERC bdc_field

                                   '= SELP'。

     使用'BDC_CURSOR'来执行bdc_field

                                   'RM11P-NEW_ROW'。

     使用'RM11P-NEW_ROW'执行PERC bdc_field

                                   '10'。

     使用'SAPLMLSR''0340'执行bdc_dynpro。

     使用'BDC_CURSOR'来执行bdc_field

                                   'RM11R-LBLNI'。

     使用'BDC_OKCODE'执行PERC bdc_field

                                   '= ENTE'。

     使用'RM11R-LBLNI'执行bdc_field

                                   lv_sheetno。  "'1000000088'。

     使用'SAPLMLSR''0400'执行bdc_dynpro。

     使用'BDC_OKCODE'执行PERC bdc_field

                                   '= AKCH'。

     使用'BDC_CURSOR'来执行bdc_field

                                   'RM11P-NEW_ROW'。

     使用'RM11P-NEW_ROW'执行PERC bdc_field

                                   '1'。

     使用'SAPLMLSR''0400'执行bdc_dynpro。

     使用'BDC_CURSOR'来执行bdc_field

                                   'ESSR-TXZ01'。

     使用'BDC_OKCODE'执行PERC bdc_field

                                   '= ACCP'。

     使用'SAPLMLSR''0400'执行bdc_dynpro。

     使用'BDC_OKCODE'执行PERC bdc_field

                                   '=保存'。



   使用bdcdata进行呼叫交易'ML81N'

                           更新'A'

                           模式" N"

                           将消息发送到messtab。