BS01_MM_QUOTATION_CREATE,未处理输出类型

2020-09-16 12:12发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我有从Z程序创建询价...

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

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


大家好,

我有从Z程序创建询价的要求。

我已经使用功能模块BS01_MM_QUOTATION_CREATE相同,一切正常,但是当消息输出类型NEU处于非活动状态(黄色)时。

从ME42打开创建的询价并保存时,处理相同。

请告诉我是否要传递任何特定参数,或者需要调用其他功能模块来处理消息。

3条回答
大道至简
2020-09-16 12:46

感谢Ankit,

在我们的案例中,我们必须调用以下功能模块来处理消息输出

https://wiki.scn.sap.com/wiki/display/ABAP/Process+Output+types+through+program

通过程序处理输出类型。

消息状态记录(表NAST)包含有关何时开始处理程序以及使用哪些参数的信息。 调用处理程序后,将写入处理状态。

因此,要通过我们的程序处理消息类型,我们必须在NAST表中创建这些参数。

逐步操作:

1创建一个内部表和工作区,类型为nast。

数据:nast的it_nast类型standardtable,

wa_nast类型nast。

2现在将值分配给工作区。

wa_nast-mandt = sy-mandt。
wa_nast-kappl = <适当的值>。"应用程序区域
wa_nast-objky = <适当的值>。"对象关键字。 Po,装运等
wa_nast-kschl = <输出类型>。"待处理的输出类型
wa_nast-spras = <适当的值>。"语言
wa_nast-parnr = <适当的值>。"消息 伙伴
wa_nast-parvw = <适当的值>。"伙伴函数
wa_nast-erdat = sy-datum。"当前日期
wa_nast-eruhr = sy-uzeit。"当前时间
wa_nast-nacha = <<适当的值>。"消息传输介质
wa_nast-anzal ='01'。"消息数
wa_nast-vsztp = <适当的值>。"发送时间
wa_nast-vstat ='0' 。"处理状态

3现在用fm'RV_MESSAGE_UPDATE_SINGLE'更新NAST表

调用函数'RV_MESSAGE_UPDATE_SINGLE'
导出
msg_nast = wa_nast。

4使用fm'WFMC_MESSAGES_PROCESS'处理输出类型

数据:msg0的lt_msg_nast类型表,

ls_msg0,例如msg0,

naliv2的t_disp类型表。

将对应的wa_nast移动到ls_msg0。
将ls_msg0附加到lt_msg_nast。

调用函数'WFMC_MESSAGES_PROCESS'
导出
pi_display_id ='NALIV2'
pi_no_dialog ='X'

tx_messages = lt_msg_nast
tx_display = t_disp。

一周热门 更多>