处理WS_DELIVERY_UPDATE_2中的错误/异常

2020-08-14 19:23发布

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

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


大家好,

我正在尝试使用" WS_DELIVERY_UPDATE_2"进行批量拆分。 它确实在少数情况下分裂了。

但是我的问题是,在前台执行时,输入数据有错误,功能模块仅抛出" E"错误,程序停止。

如何处理错误/异常。 它只是停在那儿,我无法继续执行该程序。

CALL FUNCTION'WS_DELIVERY_UPDATE_2'

导出

vbkok_wa = it_vbkok_wa

同步='X'

  • NO_MESSAGES_UPDATE_1 =''

commit = v_commit

交付= v_delvry

  • UPDATE_PICKING =''

  • NICHT_SPERREN_1 =''

  • IF_CONFIRM_CENTRAL =''

  • IF_WMPP =''

  • IF_GET_DELIVERY_BUFFERED =''

  • IF_NO_GENERIC_SYSTEM_SERVICE =''

if_database_update_1 ='1'

  • IF_NO_INIT_1 =''

  • IF_NO_READ_1 =''

if_error_messages_send ='X'

  • IF_NO_BUFFER_REFRESH =''

  • IT_PARTNER_UPDATE =

  • IT_SERNR_UPDATE =

  • IF_NO_REMOTE_CHG_1 =''

  • IF_NO_MES_UPD_PACK =''

  • IF_LATE_DELIVERY_UPD =''

导入

EF_ERROR_ANY = EF_ERROR_ANY

EF_ERROR_IN_ITEM_DELETION = EF_ERROR_IN_ITEM_DELETION

EF_ERROR_IN_POD_UPDATE = EF_ERROR_IN_POD_UPDATE

EF_ERROR_IN_INTERFACE = EF_ERROR_IN_INTERFACE

EF_ERROR_IN_GOODS_ISSUE = EF_ERROR_IN_GOODS_ISSUE

EF_ERROR_IN_FINAL_CHECK = EF_ERROR_IN_FINAL_CHECK

EF_ERROR_PARTNER_UPDATE = EF_ERROR_PARTNER_UPDATE

EF_ERROR_SERNR_UPDATE = EF_ERROR_SERNR_UPDATE

表格

vbpok_tab = it_vbpok_tab []

  • PROT =

  • VERKO_TAB =

  • VERPO_TAB =

  • VBSUPCON_TAB_1 =

  • IT_VERPO_SERNR =

  • IT_PACKING =

  • IT_PACKING_SERNR =

  • IT_REPACK =

it_handling_units_1 = it_rehang []

  • IT_OBJECTS =

ET_CREATED_HUS = it_CREATED_HUS []

  • TVPOD_TAB =

如果sy-subrc ='0'。

写:/'确定'。

否则。

写:/'失败'。

endif。

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

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


大家好,

我正在尝试使用" WS_DELIVERY_UPDATE_2"进行批量拆分。 它确实在少数情况下分裂了。

但是我的问题是,在前台执行时,输入数据有错误,功能模块仅抛出" E"错误,程序停止。

如何处理错误/异常。 它只是停在那儿,我无法继续执行该程序。

CALL FUNCTION'WS_DELIVERY_UPDATE_2'

导出

vbkok_wa = it_vbkok_wa

同步='X'

  • NO_MESSAGES_UPDATE_1 =''

commit = v_commit

交付= v_delvry

  • UPDATE_PICKING =''

  • NICHT_SPERREN_1 =''

  • IF_CONFIRM_CENTRAL =''

  • IF_WMPP =''

  • IF_GET_DELIVERY_BUFFERED =''

  • IF_NO_GENERIC_SYSTEM_SERVICE =''

if_database_update_1 ='1'

  • IF_NO_INIT_1 =''

  • IF_NO_READ_1 =''

if_error_messages_send ='X'

  • IF_NO_BUFFER_REFRESH =''

  • IT_PARTNER_UPDATE =

  • IT_SERNR_UPDATE =

  • IF_NO_REMOTE_CHG_1 =''

  • IF_NO_MES_UPD_PACK =''

  • IF_LATE_DELIVERY_UPD =''

导入

EF_ERROR_ANY = EF_ERROR_ANY

EF_ERROR_IN_ITEM_DELETION = EF_ERROR_IN_ITEM_DELETION

EF_ERROR_IN_POD_UPDATE = EF_ERROR_IN_POD_UPDATE

EF_ERROR_IN_INTERFACE = EF_ERROR_IN_INTERFACE

EF_ERROR_IN_GOODS_ISSUE = EF_ERROR_IN_GOODS_ISSUE

EF_ERROR_IN_FINAL_CHECK = EF_ERROR_IN_FINAL_CHECK

EF_ERROR_PARTNER_UPDATE = EF_ERROR_PARTNER_UPDATE

EF_ERROR_SERNR_UPDATE = EF_ERROR_SERNR_UPDATE

表格

vbpok_tab = it_vbpok_tab []

  • PROT =

  • VERKO_TAB =

  • VERPO_TAB =

  • VBSUPCON_TAB_1 =

  • IT_VERPO_SERNR =

  • IT_PACKING =

  • IT_PACKING_SERNR =

  • IT_REPACK =

it_handling_units_1 = it_rehang []

  • IT_OBJECTS =

ET_CREATED_HUS = it_CREATED_HUS []

  • TVPOD_TAB =

如果sy-subrc ='0'。

写:/'确定'。

否则。

写:/'失败'。

endif。

付费偷看设置
发送
4条回答
渐行渐远_HoldOn
1楼-- · 2020-08-14 19:55

添加到代码:

例外情况

error_message = 4

IF sy-subrc eq 4。

消息ID sy-msgid类型sy-msgty编号sy-msgno

与sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4一起进入g_c_mensaje。

ENDIF。

打个大熊猫
2楼-- · 2020-08-14 19:31

正在运行。

微wx笑
3楼-- · 2020-08-14 19:35

将代码更改为:

 if_error_messages_send =空格

如果发送" X",则显示消息,否则不显示。 查看FM中的message_send_check_do例程。

一只江湖小虾
4楼-- · 2020-08-14 19:44

已解决!1

一周热门 更多>