Oracle EBS “处理物料搬运单”出错解决方法


本章讲述如何处理“处理物料搬运单”出错?
主要征状:
1.勾选后按“处理”不起作用。
2.查看不了“查看/更新分配(U)”
3.“来源子库存”为空。
如下图:

面对这样的记录,我检查一下与搬运相关信息,如订单行状态、发运事务处理状态、有没有产生应收、有没有产生物事务处理等等,下面按照想思一步一步查检:
以下实际数据为例:
物料编号为:181810101356
销售订单:2010001862.20内销\.销售订单.ORDER ENTRY
订单行:1.1
1.查看与对应的订单行发运事务处理状态为“已连接”和下一步为“不适用”。


2.查看订单行状态为“关闭”

订单行状态
SELECT OEH.ORDER_NUMBER, --订单编号
       OEL.FLOW_STATUS_CODE, --订单行状态
       OEL.SHIPPED_QUANTITY, --发运数量
       OEL.LINE_ID, --订单行ID
       OEL.Line_Number --订单行号
  FROM OE_ORDER_LINES_ALL OEL, OE_ORDER_HEADERS_ALL OEH
 WHERE OEL.LINE_ID IN
       (SELECT MTL_TXN_REQUEST_LINES_V.TXN_SOURCE_LINE_ID
          FROM MTL_TXN_REQUEST_LINES_V
         WHERE organization_id = '124'
           AND - 1 = -1
           and (mtl_txn_request_lines_v.move_order_type != 6 AND
               mtl_txn_request_lines_v.line_status in (3, 7, 9)))
   AND OEH.HEADER_ID = OEL.HEADER_ID

3.查看是否有物料事务处理物料?

物料事务处理
Select *
  From MTL_MATERIAL_TRANSACTIONS MMT
 WHERE MMT.Source_Line_Id IN
       (SELECT DISTINCT TXN_SOURCE_LINE_ID
          FROM MTL_TXN_REQUEST_LINES_V
         WHERE organization_id = '124'
           AND - 1 = -1
           and (mtl_txn_request_lines_v.move_order_type != 6 AND
               mtl_txn_request_lines_v.line_status in (3, 7, 9)))
   And MMT.SOURCE_CODE = 'ORDER ENTRY'

4.查看是否产生应收事务处理?

应收事务处理
SELECT trxl.interface_line_attribute1, --订单编号
       trxl.interface_line_attribute3, --交货单号
       trxl.interface_line_attribute6, --订单行ID
       trxl.quantity_invoiced --发票数量          
  FROM Ra_Customer_Trx_Lines_All trxl
 WHERE trxl.interface_line_attribute6 in
       (SELECT MTL_TXN_REQUEST_LINES_V.TXN_SOURCE_LINE_ID
          FROM MTL_TXN_REQUEST_LINES_V
         WHERE organization_id = '124'
           AND - 1 = -1
           and (mtl_txn_request_lines_v.move_order_type != 6 AND
               mtl_txn_request_lines_v.line_status in (3, 7, 9)))
 order by line_number
5.经过以上分析对应的订单行和发运事务处理已经关闭,加上产生了物料事务处理和应收事务处理。说明订单对应行已经从销售登记-->挑库-->搬运-->发运确认-->应收等等过程已走完,也就说明此处理物料搬运单的记录是可以取消或删除。但是,本人还是建议取消好一些。因些,可以修改处理物料搬运单状态由“预批准”改为“取消”

然后保存,系统会自动处理。也可以用SQL在后台直接修改:

update mtl_txn_request_lines l
   set l.line_status = 5 --old is 7 
 where l.line_id = 658478;

注意:本方法仅作考参,请在UAT测试确认OK,才能用到PROD上。

相关内容