711: l_sqlerrno varchar2(20);
712: l_sqlerrmsg varchar2(2000);
713:
714: CURSOR l_onhand_acc_seq IS
715: SELECT csm_mtl_onhand_qty_acc_s.NEXTVAL
716: FROM dual;
717:
718: -- post deletes to onhand
719: CURSOR l_onhand_delete_csr IS
716: FROM dual;
717:
718: -- post deletes to onhand
719: CURSOR l_onhand_delete_csr IS
720: SELECT /*+ index(ohqacc CSM_MTL_ONHAND_QTY_ACC_U2) */ ohqacc.user_id
721: , ohqacc.inventory_item_id
722: , ohqacc.organization_id
723: , ohqacc.ACCESS_ID
724: FROM csm_mtl_onhand_qty_acc ohqacc
720: SELECT /*+ index(ohqacc CSM_MTL_ONHAND_QTY_ACC_U2) */ ohqacc.user_id
721: , ohqacc.inventory_item_id
722: , ohqacc.organization_id
723: , ohqacc.ACCESS_ID
724: FROM csm_mtl_onhand_qty_acc ohqacc
725: WHERE NOT EXISTS
726: (
727: SELECT 1
728: FROM mtl_onhand_quantities_detail ohqmv
745: );
746:
747: -- get the updates to onhands for all mobile users
748: CURSOR l_onhand_update_csr IS
749: SELECT /*+ index(ohqacc CSM_MTL_ONHAND_QTY_ACC_U2) index(ohqmv MTL_ONHAND_QUANTITIES_N4)*/ DISTINCT ohqacc.user_id
750: , ohqmv.INVENTORY_ITEM_ID
751: , ohqmv.ORGANIZATION_ID
752: , ohqmv.SUBINVENTORY_CODE
753: , ohqmv.LOCATOR_ID
754: , ohqmv.REVISION
755: , ohqmv.LOT_NUMBER
756: , ohqacc.quantity
757: , SUM(ohqmv.transaction_quantity) tot_qty
758: FROM csm_mtl_onhand_qty_acc ohqacc,
759: mtl_onhand_quantities_detail ohqmv
760: WHERE ohqacc.inventory_item_id = ohqmv.inventory_item_id
761: AND ohqacc.organization_id = ohqmv.organization_id
762: AND ohqacc.subinventory_code = ohqmv.subinventory_code
814: -- AND csi.organization_id = ila1.organization_id
815: -- AND csi.condition_type IN('G','B') --R12-4681995
816: )
817: AND NOT EXISTS
818: (SELECT /*index (ohqacc CSM_MTL_ONHAND_QTY_ACC_U2)*/ 1
819: FROM csm_mtl_onhand_qty_acc ohqacc
820: WHERE ohqacc.user_id = au.user_id
821: AND (ohqacc.inventory_item_id = ohqmv.inventory_item_id )
822: AND (ohqacc.organization_id = ohqmv.organization_id )
815: -- AND csi.condition_type IN('G','B') --R12-4681995
816: )
817: AND NOT EXISTS
818: (SELECT /*index (ohqacc CSM_MTL_ONHAND_QTY_ACC_U2)*/ 1
819: FROM csm_mtl_onhand_qty_acc ohqacc
820: WHERE ohqacc.user_id = au.user_id
821: AND (ohqacc.inventory_item_id = ohqmv.inventory_item_id )
822: AND (ohqacc.organization_id = ohqmv.organization_id )
823: AND (ohqacc.subinventory_code = ohqmv.subinventory_code )
826: AND ((ohqacc.revision IS NULL AND ohqmv.revision IS NULL) OR (ohqacc.revision = ohqmv.revision))
827: );
828:
829:
830: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
831: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
832: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
833: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
834: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
827: );
828:
829:
830: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
831: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
832: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
833: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
834: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
835: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
828:
829:
830: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
831: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
832: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
833: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
834: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
835: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
836: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
829:
830: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
831: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
832: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
833: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
834: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
835: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
836: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
837: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
830: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
831: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
832: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
833: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
834: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
835: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
836: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
837: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
838: TYPE access_idTab IS TABLE OF csm_mtl_onhand_qty_acc.access_id%TYPE INDEX BY BINARY_INTEGER;
831: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
832: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
833: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
834: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
835: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
836: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
837: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
838: TYPE access_idTab IS TABLE OF csm_mtl_onhand_qty_acc.access_id%TYPE INDEX BY BINARY_INTEGER;
839:
834: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
835: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
836: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
837: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
838: TYPE access_idTab IS TABLE OF csm_mtl_onhand_qty_acc.access_id%TYPE INDEX BY BINARY_INTEGER;
839:
840: inv_id inv_idTab;
841: org_id org_idTab;
842: sub_code sub_codeTab;
913: , P_TIMESTAMP => l_current_run_date
914: );
915:
916: -- FORALL i IN acc_id_lst.FIRST..acc_id_lst.LAST
917: -- DELETE CSM_MTL_ONHAND_QTY_ACC WHERE ACCESS_ID = acc_id_lst(i);
918:
919: FOR i IN 1..acc_id_lst.COUNT LOOP
920: DELETE CSM_MTL_ONHAND_QTY_ACC WHERE ACCESS_ID = acc_id_lst(i);
921: CSM_ITEM_INSTANCE_EVENT_PKG.DELETE_IB_NOTIN_INV(inv_id(i),org_id(i),user_id_lst(i));
916: -- FORALL i IN acc_id_lst.FIRST..acc_id_lst.LAST
917: -- DELETE CSM_MTL_ONHAND_QTY_ACC WHERE ACCESS_ID = acc_id_lst(i);
918:
919: FOR i IN 1..acc_id_lst.COUNT LOOP
920: DELETE CSM_MTL_ONHAND_QTY_ACC WHERE ACCESS_ID = acc_id_lst(i);
921: CSM_ITEM_INSTANCE_EVENT_PKG.DELETE_IB_NOTIN_INV(inv_id(i),org_id(i),user_id_lst(i));
922: END LOOP;
923:
924: END IF; -- end of deletes
969: CSM_UTIL_PKG.LOG('Pushing ' || user_id_lst.COUNT || 'updated records',
970: 'CSM_SYSTEM_ITEM_EVENT_PKG.REFRESH_MTL_ONHAND_QUANTITY',FND_LOG.LEVEL_STATEMENT);
971:
972: FORALL i IN user_id_lst.FIRST..user_id_lst.LAST
973: UPDATE CSM_MTL_ONHAND_QTY_ACC
974: SET LAST_UPDATE_DATE = l_current_run_date,
975: QUANTITY = qty(i)
976: WHERE user_id = user_id_lst(i)
977: AND inventory_item_id = inv_id(i)
1047: CSM_UTIL_PKG.LOG('Pushing ' || inv_id.COUNT || 'inserted records',
1048: 'CSM_SYSTEM_ITEM_EVENT_PKG.REFRESH_MTL_ONHAND_QUANTITY',FND_LOG.LEVEL_STATEMENT);
1049:
1050: FOR i IN inv_id.FIRST..inv_id.LAST LOOP
1051: SELECT csm_mtl_onhand_qty_acc_s.NEXTVAL INTO acc_id_lst(i) FROM dual;
1052: END LOOP;
1053:
1054: FORALL i IN inv_id.FIRST..inv_id.LAST
1055: INSERT INTO CSM_MTL_ONHAND_QTY_ACC (ACCESS_ID, user_id, INVENTORY_ITEM_ID,ORGANIZATION_ID,
1051: SELECT csm_mtl_onhand_qty_acc_s.NEXTVAL INTO acc_id_lst(i) FROM dual;
1052: END LOOP;
1053:
1054: FORALL i IN inv_id.FIRST..inv_id.LAST
1055: INSERT INTO CSM_MTL_ONHAND_QTY_ACC (ACCESS_ID, user_id, INVENTORY_ITEM_ID,ORGANIZATION_ID,
1056: SUBINVENTORY_CODE,LOCATOR_ID,REVISION,LOT_NUMBER, LAST_UPDATE_DATE,LAST_UPDATED_BY,
1057: CREATION_DATE,CREATED_BY, LAST_UPDATE_LOGIN, QUANTITY, GEN_PK) VALUES (acc_id_lst(i), user_id_lst(i), inv_id(i), org_id(i), sub_code(i),
1058: loc_id(i), rvsion(i), lot_num(i), l_current_run_date,1,l_current_run_date,1, 1, qty(i), acc_id_lst(i));
1059:
1379: PROCEDURE RECEIVED_MTL_ONHAND(p_org_id IN NUMBER,p_subinv_code IN VARCHAR2,p_item_id IN NUMBER,p_user_id IN NUMBER)
1380: IS
1381: -- get the updates to onhands for all mobile users
1382: CURSOR l_onhand_update_csr IS
1383: SELECT /*+ index(ohqacc CSM_MTL_ONHAND_QTY_ACC_U2) index(ohqmv MTL_ONHAND_QUANTITIES_N4)*/ DISTINCT ohqacc.user_id
1384: , ohqmv.INVENTORY_ITEM_ID
1385: , ohqmv.ORGANIZATION_ID
1386: , ohqmv.SUBINVENTORY_CODE
1387: , ohqmv.LOCATOR_ID
1388: , ohqmv.REVISION
1389: , ohqmv.LOT_NUMBER
1390: , ohqacc.quantity
1391: , SUM(ohqmv.transaction_quantity) tot_qty
1392: FROM csm_mtl_onhand_qty_acc ohqacc,
1393: mtl_onhand_quantities_detail ohqmv
1394: WHERE ohqmv.inventory_item_id=p_item_id
1395: AND ohqmv.organization_id=p_org_id
1396: AND nvl(ohqmv.subinventory_code,'-999') = nvl(p_subinv_code,'-999')
1434: AND ila.subinventory_code = ohqmv.subinventory_code
1435: AND ila.organization_id = ohqmv.organization_id
1436: AND SYSDATE BETWEEN NVL(ila.effective_date_start, SYSDATE) AND NVL(ila.effective_date_end, SYSDATE) )
1437: AND NOT EXISTS
1438: (SELECT /*index (ohqacc CSM_MTL_ONHAND_QTY_ACC_U2)*/ 1
1439: FROM csm_mtl_onhand_qty_acc ohqacc
1440: WHERE ohqacc.user_id = au.user_id
1441: AND ohqacc.inventory_item_id = ohqmv.inventory_item_id
1442: AND ohqacc.organization_id = ohqmv.organization_id
1435: AND ila.organization_id = ohqmv.organization_id
1436: AND SYSDATE BETWEEN NVL(ila.effective_date_start, SYSDATE) AND NVL(ila.effective_date_end, SYSDATE) )
1437: AND NOT EXISTS
1438: (SELECT /*index (ohqacc CSM_MTL_ONHAND_QTY_ACC_U2)*/ 1
1439: FROM csm_mtl_onhand_qty_acc ohqacc
1440: WHERE ohqacc.user_id = au.user_id
1441: AND ohqacc.inventory_item_id = ohqmv.inventory_item_id
1442: AND ohqacc.organization_id = ohqmv.organization_id
1443: AND ohqacc.subinventory_code = ohqmv.subinventory_code
1449: CURSOR c_find_instances
1450: IS
1451: SELECT cii.instance_id,
1452: cqa.user_id
1453: FROM csm_mtl_onhand_qty_acc cqa
1454: , csi_item_instances cii
1455: , csi_instance_statuses iis
1456: , asg_user asg
1457: WHERE cqa.inventory_item_id=p_item_id
1476: AND cia.instance_id = cii.instance_id
1477: );
1478:
1479:
1480: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
1481: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
1482: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
1483: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
1484: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
1477: );
1478:
1479:
1480: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
1481: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
1482: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
1483: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
1484: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
1485: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
1478:
1479:
1480: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
1481: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
1482: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
1483: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
1484: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
1485: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
1486: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
1479:
1480: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
1481: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
1482: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
1483: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
1484: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
1485: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
1486: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
1487: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
1480: TYPE inv_idTab IS TABLE OF csm_mtl_onhand_qty_acc.inventory_item_id%TYPE INDEX BY BINARY_INTEGER;
1481: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
1482: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
1483: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
1484: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
1485: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
1486: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
1487: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
1488: TYPE access_idTab IS TABLE OF csm_mtl_onhand_qty_acc.access_id%TYPE INDEX BY BINARY_INTEGER;
1481: TYPE org_idTab IS TABLE OF csm_mtl_onhand_qty_acc.organization_id%TYPE INDEX BY BINARY_INTEGER;
1482: TYPE sub_codeTab IS TABLE OF csm_mtl_onhand_qty_acc.subinventory_code%TYPE INDEX BY BINARY_INTEGER;
1483: TYPE rvsionTab IS TABLE OF csm_mtl_onhand_qty_acc.revision%TYPE INDEX BY BINARY_INTEGER;
1484: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
1485: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
1486: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
1487: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
1488: TYPE access_idTab IS TABLE OF csm_mtl_onhand_qty_acc.access_id%TYPE INDEX BY BINARY_INTEGER;
1489:
1484: TYPE loc_idTab IS TABLE OF csm_mtl_onhand_qty_acc.locator_id%TYPE INDEX BY BINARY_INTEGER;
1485: TYPE lot_numTab IS TABLE OF csm_mtl_onhand_qty_acc.lot_number%TYPE INDEX BY BINARY_INTEGER;
1486: TYPE tran_qtyTab IS TABLE OF mtl_onhand_quantities_detail.transaction_quantity%TYPE INDEX BY BINARY_INTEGER;
1487: TYPE user_idTab IS TABLE OF asg_user.user_id%TYPE INDEX BY BINARY_INTEGER;
1488: TYPE access_idTab IS TABLE OF csm_mtl_onhand_qty_acc.access_id%TYPE INDEX BY BINARY_INTEGER;
1489:
1490: inv_id inv_idTab;
1491: org_id org_idTab;
1492: sub_code sub_codeTab;
1514: CSM_UTIL_PKG.LOG('Pushing ' || user_id_lst.COUNT || ' updates',
1515: 'CSM_SYSTEM_ITEM_EVENT_PKG.RECEIVED_MTL_ONHAND',FND_LOG.LEVEL_STATEMENT);
1516:
1517: FORALL i IN 1..user_id_lst.COUNT
1518: UPDATE CSM_MTL_ONHAND_QTY_ACC
1519: SET LAST_UPDATE_DATE = sysdate, QUANTITY = qty(i)
1520: WHERE user_id = user_id_lst(i)
1521: AND inventory_item_id = inv_id(i)
1522: AND organization_id = org_id(i)
1562: CSM_UTIL_PKG.LOG('Pushing ' || inv_id.COUNT || ' inserts',
1563: 'CSM_SYSTEM_ITEM_EVENT_PKG.RECEIVED_MTL_ONHAND',FND_LOG.LEVEL_STATEMENT);
1564:
1565: FOR i IN 1..inv_id.COUNT LOOP
1566: SELECT csm_mtl_onhand_qty_acc_s.NEXTVAL INTO acc_id_lst(i) FROM dual;
1567: END LOOP;
1568:
1569: FORALL i IN inv_id.FIRST..inv_id.LAST
1570: INSERT INTO CSM_MTL_ONHAND_QTY_ACC (ACCESS_ID, user_id, INVENTORY_ITEM_ID,ORGANIZATION_ID,
1566: SELECT csm_mtl_onhand_qty_acc_s.NEXTVAL INTO acc_id_lst(i) FROM dual;
1567: END LOOP;
1568:
1569: FORALL i IN inv_id.FIRST..inv_id.LAST
1570: INSERT INTO CSM_MTL_ONHAND_QTY_ACC (ACCESS_ID, user_id, INVENTORY_ITEM_ID,ORGANIZATION_ID,
1571: SUBINVENTORY_CODE,LOCATOR_ID,REVISION,LOT_NUMBER, LAST_UPDATE_DATE,LAST_UPDATED_BY,
1572: CREATION_DATE,CREATED_BY, LAST_UPDATE_LOGIN, QUANTITY, GEN_PK) VALUES (acc_id_lst(i), user_id_lst(i), inv_id(i), org_id(i), sub_code(i),
1573: loc_id(i), rvsion(i), lot_num(i), sysdate,1,sysdate,1, 1, qty(i), acc_id_lst(i));
1574: