运行 Supplier Merge Program 没有同步 update RSH & RT

来源:互联网 发布:南北方饮食差异 知乎 编辑:程序博客网 时间:2024/06/06 00:50

   首先我们看下 Oracle 官方文档上怎么说的:

   "Use Supplier Merge to combine two or more suppliers that you identify as duplicates. You can update purchase orders and invoices for the old supplier to refer to the new supplier. The Supplier Merge window also allows you to merge supplier sites so that any sites assigned to an old supplier can be reassigned to the new supplier."

   大概是说, Supplier Merge 这个form 的作用就是把两个 Suppliers 合并成一个Supplier, 与此同时会update PO 和 发票的信息, 重新指向新的 Supplier.

   当我们使用这个功能的时候, 我们可以单独选择transfer 发票 (invoices), 采购订单 PO, 或者同时选择两个. 在transfer 发票的时候还可以只transfer 未支付的发票, 或者transfer 所有的发票, 包括已经支付的, 支付一半的等等.

   在运行完这个concurrent request 之后, EBS 会自动打印PO Header update 报表和 Supplier Merge 报表.

   下面我们就来做一个这个case:

   1. 创建一个PO, 注意Supplier 和 Site


   2. 接收这个PO

   等RTP 跑完之后, 我们可以看到 PO_HEADERS_ALL 的 vendor_id = 1375, vendor_site_id = 3240, 分别对应上面的Supplier 和 Site. RSH 和 RT 表里面的vendor_id 和vendor_site_id 与POH 里面的相同.


   3. 现在我们要去做 Supplier Merge 了. 运行这个program 需要切换到Payables 职责下面


   4. 找到Supplier Merge form


   在Invoices 下面可以选择 All, Unpaid, None, 也可以勾选PO. 这里我们选择All 并且勾上PO

   不勾选copy, 因为"If you want to reassign the Old Supplier Site to the new Supplier, select Copy Site and do not enter a New Supplier Site."

   点击Merge, 这时会提交一个concurrent request: Supplier Merge Program


  

   这里的参数就是PO header 里面的vendor_id 和 vendor_site_id. 等这个request 跑完, 我们再去看PO_HEADERS_ALL 和 RCV_SHIPMENT_HEADERS, RCV_TRANSACTIONS 表中的信息, 这里的Vendor_id, Vendor_site_id 已经改成了Allied Manufacturing 的 ID 了.



   我们可以去PO 界面上查找这个订单, 发现header 上面的Supplier 和Site 都已经改成新的了.


   同样可以去 Form 上确认shipment header 和 receipt 的Vendor 信息被更新了.

   提交这个concurrent 会update 的表:

AP_DUPLICATE_VENDORS

AP_SUPPLIER_CONTACTS

AP_SUPPLIER_SITES_ALL

AP_RECURRING_PAYMENTS

AP_INVOICES_ALL

AP_CHECKS_ALL

MTL_INTERCOMPANY_PARAMETERS


   在 patch 7592393:R12.AP.A 之前, 运行这个concurrent program 是有个bug的, 运行完Supplier Merge, 只有PO 上的Supplier 和 Site 被更新了, 但是相关的 RSH & RT 没有得到更新.

   有Generic Datafix Script 专门解决这个问题, 也可以自己写脚本更新.

   但是要杜绝这个bug, 还是要打上面这个patch.

0 0