通过ME59n(PR)创建PO时,我需要按物料对PO进行排序。

2020-09-15 07:35发布

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

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


我有PR,其中包含2种材料。 在PR材料中按降序排列。 通过ME59n创建采购订单时,我需要按升序对其进行排序。 我试过ME_PROCESS_PO_CUST badi来排序header,check和post方法中的材料。 但他们都不在工作。 一开始,我以ME59n中标准程序的调试模式手动对文章进行排序。 但是PO仍然没有按物料分类。 应该有不同的方法来做。 可以帮上忙吗?或者我们可以通过配置来做到这一点。

例如:

在PR中:第10行材料100002,第20行材料100001

在创建采购订单时,我需要将其视为第10行物料100001和第20行物料100002。

 DATA:标头TYPE mepoheader,
       TYPE_Purchase_order_items的商品,
       像LINE OF个商品,
       itemdata TYPE mepoitem,

       lt_ekpo mepoitem的标准类型表。


 呼叫方法im_header-> get_data

 接收

 re_data =标头。


 呼叫方法im_header-> get_items

 接收

 re_items =物品。


 将物品放入物品中。

   呼叫方法item-item-> get_data

   接收

   re_data = itemdata。


   将itemdata附加到lt_ekpo。

   清除itemdata。

 结局。



 由Matnr排序lt_ekpo。

 在lt_ekpo INTO DATA(lwa_ekpo)中循环。

   呼叫方法item-item-> set_data

   出口

   im_data = lwa_ekpo。

 ENDLOOP。

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

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


我有PR,其中包含2种材料。 在PR材料中按降序排列。 通过ME59n创建采购订单时,我需要按升序对其进行排序。 我试过ME_PROCESS_PO_CUST badi来排序header,check和post方法中的材料。 但他们都不在工作。 一开始,我以ME59n中标准程序的调试模式手动对文章进行排序。 但是PO仍然没有按物料分类。 应该有不同的方法来做。 可以帮上忙吗?或者我们可以通过配置来做到这一点。

例如:

在PR中:第10行材料100002,第20行材料100001

在创建采购订单时,我需要将其视为第10行物料100001和第20行物料100002。

 DATA:标头TYPE mepoheader,
       TYPE_Purchase_order_items的商品,
       像LINE OF个商品,
       itemdata TYPE mepoitem,

       lt_ekpo mepoitem的标准类型表。


 呼叫方法im_header-> get_data

 接收

 re_data =标头。


 呼叫方法im_header-> get_items

 接收

 re_items =物品。


 将物品放入物品中。

   呼叫方法item-item-> get_data

   接收

   re_data = itemdata。


   将itemdata附加到lt_ekpo。

   清除itemdata。

 结局。



 由Matnr排序lt_ekpo。

 在lt_ekpo INTO DATA(lwa_ekpo)中循环。

   呼叫方法item-item-> set_data

   出口

   im_data = lwa_ekpo。

 ENDLOOP。
付费偷看设置
发送
1条回答
三十六小时_GS
1楼-- · 2020-09-15 08:06

你好拉桑塔,

从上面的代码片段中,您正在读取项目,获取每个项目类别的数据,并回退每个项目的数据; 这没有区别,因为为每个项目都设置了相同的数据。 您需要在排序后重新设置项目。

我看到的是缺少的set_items; 排序后,使用im_header-> set_items设置排序的lt_ekpo。


此致

基兰

一周热门 更多>