1: PACKAGE BODY WMS_RULE_3 AS
2:
3: PROCEDURE open_curs
4: (
5: p_cursor IN OUT NOCOPY WMS_RULE_PVT.cv_pick_type,
6: p_organization_id IN NUMBER,
7: p_inventory_item_id IN NUMBER,
8: p_transaction_type_id IN NUMBER,
9: p_revision IN VARCHAR2,
108: ,sub.reservable_type
109: ,nvl(loc.reservable_type,1) locreservable -- Bug 6719290
110: ,nvl(lot.reservable_type,1) lotreservable -- Bug 6719290
111: ,nvl(loc.pick_uom_code, sub.pick_uom_code) uom_code
112: ,WMS_Rule_PVT.GetConversionRate(
113: nvl(loc.pick_uom_code, sub.pick_uom_code)
114: ,msn.current_organization_id
115: ,msn.inventory_item_id) conversion_rate
116: ,msn.lpn_id lpn_id
152: and decode(g_lot_number, '-9999', 'a', base.LOT_NUMBER) = decode(g_lot_number, '-9999', 'a', g_lot_number)
153: and decode(g_lpn_id, -9999, 1, base.lpn_id) = decode(g_lpn_id, -9999, 1, g_lpn_id)
154: and decode(g_cost_group_id, -9999, 1, base.cost_group_id) = decode(g_cost_group_id, -9999, 1, g_cost_group_id)
155: and mptdtv.PP_TRANSACTION_TEMP_ID = g_pp_transaction_temp_id
156: and Wms_Rule_Pvt.Match_Planning_Group(base.ORGANIZATION_ID,base.locator_id, g_project_id, mptdtv.project_id, mptdtv.task_id,g_transaction_type_id,g_inventory_item_id,base.project_id,base.task_id) = 1
157: and msi.ORGANIZATION_ID = base.ORGANIZATION_ID
158: and msi.INVENTORY_ITEM_ID = base.INVENTORY_ITEM_ID
159: and mln.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
160: and mln.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
165: )
166: and mlna.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
167: and mlna.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
168: and mlna.LOT_NUMBER (+) = base.LOT_NUMBER
169: and ( mlna.EXPIRATION_DATE is NULL OR mlna.EXPIRATION_DATE > sysdate OR wms_rule_pvt.g_allow_expired_lot_txn = 'Y' ) order by decode(base.project_id,g_project_id,1,NULL,2,3) asc,base.CONVERSION_RATE desc
170: ,WMS_Parameter_PVT.GetItemOnHand(
171: base.ORGANIZATION_ID
172: ,mptdtv.INVENTORY_ITEM_ID
173: ,base.SUBINVENTORY_CODE
220: ,sub.reservable_type
221: ,nvl(loc.reservable_type,1) locreservable -- Bug 6719290
222: ,nvl(lot.reservable_type,1) lotreservable -- Bug 6719290
223: ,nvl(loc.pick_uom_code, sub.pick_uom_code) uom_code
224: ,WMS_Rule_PVT.GetConversionRate(
225: nvl(loc.pick_uom_code, sub.pick_uom_code)
226: ,msn.current_organization_id
227: ,msn.inventory_item_id) conversion_rate
228: ,msn.lpn_id lpn_id
267: and decode(g_lot_number, '-9999', 'a', base.LOT_NUMBER) = decode(g_lot_number, '-9999', 'a', g_lot_number)
268: and decode(g_lpn_id, -9999, 1, base.lpn_id) = decode(g_lpn_id, -9999, 1, g_lpn_id)
269: and decode(g_cost_group_id, -9999, 1, base.cost_group_id) = decode(g_cost_group_id, -9999, 1, g_cost_group_id)
270: and mptdtv.PP_TRANSACTION_TEMP_ID = g_pp_transaction_temp_id
271: and Wms_Rule_Pvt.Match_Planning_Group(base.ORGANIZATION_ID,base.locator_id, g_project_id, mptdtv.project_id, mptdtv.task_id,g_transaction_type_id,g_inventory_item_id,base.project_id,base.task_id) = 1
272: and msi.ORGANIZATION_ID = base.ORGANIZATION_ID
273: and msi.INVENTORY_ITEM_ID = base.INVENTORY_ITEM_ID
274: and mln.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
275: and mln.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
280: )
281: and mlna.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
282: and mlna.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
283: and mlna.LOT_NUMBER (+) = base.LOT_NUMBER
284: and ( mlna.EXPIRATION_DATE is NULL OR mlna.EXPIRATION_DATE > sysdate OR wms_rule_pvt.g_allow_expired_lot_txn = 'Y' ) group by base.ORGANIZATION_ID
285: ,base.INVENTORY_ITEM_ID
286: ,base.REVISION
287: ,base.LOT_NUMBER
288: ,base.LOT_EXPIRATION_DATE
361: ,sub.reservable_type
362: ,nvl(loc.reservable_type,1) locreservable -- Bug 6719290
363: ,nvl(lot.reservable_type,1) lotreservable -- Bug 6719290
364: ,nvl(loc.pick_uom_code, sub.pick_uom_code) uom_code
365: ,WMS_Rule_PVT.GetConversionRate(
366: nvl(loc.pick_uom_code, sub.pick_uom_code)
367: ,msn.current_organization_id
368: ,msn.inventory_item_id) conversion_rate
369: ,msn.lpn_id lpn_id
404: and decode(g_lot_number, '-9999', 'a', base.LOT_NUMBER) = decode(g_lot_number, '-9999', 'a', g_lot_number)
405: and decode(g_lpn_id, -9999, 1, base.lpn_id) = decode(g_lpn_id, -9999, 1, g_lpn_id)
406: and decode(g_cost_group_id, -9999, 1, base.cost_group_id) = decode(g_cost_group_id, -9999, 1, g_cost_group_id)
407: and mptdtv.PP_TRANSACTION_TEMP_ID = g_pp_transaction_temp_id
408: and Wms_Rule_Pvt.Match_Planning_Group(base.ORGANIZATION_ID,base.locator_id, g_project_id, mptdtv.project_id, mptdtv.task_id,g_transaction_type_id,g_inventory_item_id,base.project_id,base.task_id) = 1
409: and msi.ORGANIZATION_ID = base.ORGANIZATION_ID
410: and msi.INVENTORY_ITEM_ID = base.INVENTORY_ITEM_ID
411: and mln.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
412: and mln.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
417: )
418: and mlna.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
419: and mlna.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
420: and mlna.LOT_NUMBER (+) = base.LOT_NUMBER
421: and ( mlna.EXPIRATION_DATE is NULL OR mlna.EXPIRATION_DATE > sysdate OR wms_rule_pvt.g_allow_expired_lot_txn = 'Y' ) group by base.ORGANIZATION_ID
422: ,base.INVENTORY_ITEM_ID
423: ,base.REVISION
424: ,base.LOT_NUMBER
425: ,base.LOT_EXPIRATION_DATE
502: ,x.reservable_type reservable_type
503: ,x.locreservable locreservable
504: ,x.lotreservable lotreservable
505: ,NVL(loc.pick_uom_code,sub.pick_uom_code) uom_code
506: ,WMS_Rule_PVT.GetConversionRate(
507: NVL(loc.pick_uom_code, sub.pick_uom_code)
508: ,x.organization_id
509: ,x.inventory_item_id) conversion_rate
510: ,NULL locator_inventory_item_id
593: and decode(g_lot_number, '-9999', 'a', base.LOT_NUMBER) = decode(g_lot_number, '-9999', 'a', g_lot_number)
594: and decode(g_lpn_id, -9999, 1, base.lpn_id) = decode(g_lpn_id, -9999, 1, g_lpn_id)
595: and decode(g_cost_group_id, -9999, 1, base.cost_group_id) = decode(g_cost_group_id, -9999, 1, g_cost_group_id)
596: and mptdtv.PP_TRANSACTION_TEMP_ID = g_pp_transaction_temp_id
597: and Wms_Rule_Pvt.Match_Planning_Group(base.ORGANIZATION_ID,base.locator_id, g_project_id, mptdtv.project_id, mptdtv.task_id,g_transaction_type_id,g_inventory_item_id,base.project_id,base.task_id) = 1
598: and msi.ORGANIZATION_ID = base.ORGANIZATION_ID
599: and msi.INVENTORY_ITEM_ID = base.INVENTORY_ITEM_ID
600: and mln.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
601: and mln.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
606: )
607: and mlna.ORGANIZATION_ID (+) = base.ORGANIZATION_ID
608: and mlna.INVENTORY_ITEM_ID (+) = base.INVENTORY_ITEM_ID
609: and mlna.LOT_NUMBER (+) = base.LOT_NUMBER
610: and ( mlna.EXPIRATION_DATE is NULL OR mlna.EXPIRATION_DATE > sysdate OR wms_rule_pvt.g_allow_expired_lot_txn = 'Y' ) group by base.ORGANIZATION_ID
611: ,base.INVENTORY_ITEM_ID
612: ,base.REVISION
613: ,base.LOT_NUMBER
614: ,base.LOT_EXPIRATION_DATE
649:
650: END open_curs;
651:
652: PROCEDURE fetch_one_row(
653: p_cursor IN WMS_RULE_PVT.cv_pick_type,
654: x_revision OUT NOCOPY VARCHAR2,
655: x_lot_number OUT NOCOPY VARCHAR2,
656: x_lot_expiration_date OUT NOCOPY DATE,
657: x_subinventory_code OUT NOCOPY VARCHAR2,
697:
698:
699: END fetch_one_row;
700:
701: PROCEDURE close_curs( p_cursor IN WMS_RULE_PVT.cv_pick_type) IS
702: BEGIN
703: if (p_cursor%ISOPEN) THEN
704: CLOSE p_cursor;
705: END IF;
706: END close_curs;
707:
708: -- LG convergence new procedure for the new manual picking select screen
709: PROCEDURE fetch_available_rows(
710: p_cursor IN WMS_RULE_PVT.cv_pick_type,
711: x_return_status OUT NOCOPY NUMBER) IS
712:
713: /* Fix for Bug#8360804 . Added temp variable of type available_inventory_tbl */
714: