功能模块L_TO_CREATE_SINGLE

2020-09-07 17:50发布

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

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


嗨,

当此功能模块的输入参数正确创建成功时,我正在循环使用L_TO_CREATE_SINGLE功能模块。 但是当输入参数不正确时,它会完全从程序中消失。

我的要求是跳过该错误记录并处理下一条记录。

在这方面有谁能帮助我

致谢

ramesh

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

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


嗨,

当此功能模块的输入参数正确创建成功时,我正在循环使用L_TO_CREATE_SINGLE功能模块。 但是当输入参数不正确时,它会完全从程序中消失。

我的要求是跳过该错误记录并处理下一条记录。

在这方面有谁能帮助我

致谢

ramesh

付费偷看设置
发送
3条回答
Cikesha
1楼 · 2020-09-07 18:06.采纳回答

Hello Ramesh。

发生这种情况是因为FM抛出错误消息。 解决方案:

-防止在调用FM之前可能发生的所有错误

-使用批输入

这与FM L_TO_CREATE_MULTIPLE相同。 >

-创建一个ZL_TO_CREATE_SINGLE,用bapireturn条目替换错误消息

此致

Valter Oliveira。

微wx笑
2楼-- · 2020-09-07 18:07

很棒的答案,它对我有帮助 对于我遇到的相同问题,谢谢

zhangjiyang1323
3楼-- · 2020-09-07 18:24

这是一个很晚的答复,但这就是我解决此问题的方法。 诀窍是添加一般异常" error_message",这将处理在调用内创建的所有消息,而无需退出程序。 然后,您可以阅读SY-MSG *系统字段以获取实际的错误消息并采取必要的措施。

通话功能" L_TO_CREATE_SINGLE"
     出口
       i_lgnum = iv_lgnum
       i_bwlvs ='999'
       i_matnr = iv_matnr
       i_werks = iv_werks
       i_charg = iv_charg
       i_anfme = lv_qty
       i_altme = lv_unit
       i_vltyp = iv_vltyp
       i_vlpla = iv_vlpla
       i_nltyp = iv_nltyp
       i_nlpla = iv_nlpla
     输入
       e_tanum = ev_tanum
     例外情况
       no_to_created = 1
       bwlvs_wrong = 2
       betyp_wrong = 3
       benum_missing = 4
       betyp_missing = 5
       foreign_lock = 6
       vltyp_wrong = 7
       vlpla_wrong = 8
       vltyp_missing = 9
       nltyp_wrong = 10
       nlpla_wrong = 11
       nltyp_missing = 12
       rltyp_wrong = 13
       rlpla_wrong = 14
       rltyp_missing = 15
       squit_forbidden = 16
       manual_to_forbidden = 17
       letyp_wrong = 18
       vlpla_missing = 19
       nlpla_missing = 20
       sobkz_wrong = 21
       sobkz_missing = 22
       sonum_missing = 23
       bestq_wrong = 24
       lgber_wrong = 25
       xfeld_wrong = 26
       date_wrong = 27
       drukz_wrong = 28
       ldest_wrong = 29
       update_without_commit = 30
       no_authority = 31
       material_not_found = 32
       lenum_wrong = 33
       error_message = 34
       其他= 35。

   IF sy-subrc NE 0。
     IF sy-subrc NE 34。
 *基于异常的错误消息
       带有sy-subrc的邮件e111(zrf)。
     其他。
 *从SY-MSG *字段读取错误消息
       消息ID sy-msgid类型'E'编号sy-msgno和sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4。
     万一。
   ENDIF。

希望这会帮助其他遇到相同问题的人。

/Leif

一周热门 更多>