37: MMT.COST_GROUP_ID,
38: MMT.INVENTORY_ITEM_ID,
39: MMT.SUBINVENTORY_CODE
40: FROM
41: MTL_PER_CLOSE_DTLS MPSD ,
42: MTL_MATERIAL_TRANSACTIONS MMT,
43: ORG_ACCT_PERIODS OAP
44: WHERE
45: MPSD.ACCT_PERIOD_ID = C_ACCT_PERIOD_ID AND
69: IS
70: SELECT DISTINCT
71: COST_GROUP_ID,
72: INVENTORY_ITEM_ID
73: FROM MTL_PER_CLOSE_DTLS
74: WHERE ORGANIZATION_ID = c_org_id
75: AND ACCT_PERIOD_ID = c_acct_period_id;
76:
77: CURSOR cur_get_mcacd_id(
136: END IF;
137:
138: l_stmt_num:=7;
139:
140: DELETE FROM MTL_PER_CLOSE_DTLS
141: WHERE
142: ORGANIZATION_ID = I_ORG_ID AND
143: ACCT_PERIOD_ID = I_ACCT_PERIOD_ID;
144:
179: | First, copy over from the prior period all the unique
180: | combinations of cost group, Item and subinventory.
181: |--------------------------------------------------------+*/
182:
183: INSERT INTO MTL_PER_CLOSE_DTLS
184: (COST_GROUP_ID,
185: ACCT_PERIOD_ID,
186: SECONDARY_INVENTORY,
187: INVENTORY_ITEM_ID,
209: SYSDATE,
210: i_prog_id,
211: i_prog_appl_id,
212: i_user_id
213: FROM MTL_PER_CLOSE_DTLS OLD
214: WHERE
215: OLD.ACCT_PERIOD_ID = l_last_period_id AND
216: OLD.SECONDARY_INVENTORY IS NOT NULL AND
217: OLD.ORGANIZATION_ID = i_org_id
236: FROM MTL_SUPPLY SUP,
237: RCV_SHIPMENT_HEADERS RSH
238: WHERE
239: SUP.ITEM_ID IN
240: (select inventory_item_id from mtl_per_close_dtls OLD
241: where
242: OLD.ACCT_PERIOD_ID = l_last_period_id AND
243: old.cost_group_id = l_default_cost_group_id AND --2769970
244: OLD.SECONDARY_INVENTORY IS NULL AND
270: SUP.INTRANSIT_OWNING_ORG_ID = I_ORG_ID
271: GROUP BY SUP.ITEM_ID;
272:
273: /*Update the period end cost of previous period transactions..*/
274: UPDATE MTL_PER_CLOSE_DTLS MPSD
275: SET MPSD.PERIOD_END_UNIT_COST =
276: (SELECT OLD.PERIOD_END_UNIT_COST FROM
277: MTL_PER_CLOSE_DTLS OLD
278: WHERE OLD.ACCT_PERIOD_ID = l_last_period_id AND
273: /*Update the period end cost of previous period transactions..*/
274: UPDATE MTL_PER_CLOSE_DTLS MPSD
275: SET MPSD.PERIOD_END_UNIT_COST =
276: (SELECT OLD.PERIOD_END_UNIT_COST FROM
277: MTL_PER_CLOSE_DTLS OLD
278: WHERE OLD.ACCT_PERIOD_ID = l_last_period_id AND
279: OLD.INVENTORY_ITEM_ID = MPSD.INVENTORY_ITEM_ID AND
280: OLD.COST_GROUP_ID = l_default_cost_group_id AND --2769970
281: OLD.SECONDARY_INVENTORY IS NULL AND
303: | scrap and avg cost update do not get considered.
304: |------------------------------------------------------+*/
305:
306:
307: INSERT INTO MTL_PER_CLOSE_DTLS
308: (COST_GROUP_ID,
309: ACCT_PERIOD_ID,
310: SECONDARY_INVENTORY,
311: INVENTORY_ITEM_ID,
365: i_prog_id,
366: i_prog_appl_id,
367: i_user_id
368: FROM
369: MTL_PER_CLOSE_DTLS MPCD
370: WHERE
371: MPCD.organization_id = i_org_id AND
372: MPCD.acct_period_id = i_acct_period_id AND
373: MPCD.secondary_inventory IS NOT NULL;
375: l_stmt_num:=30;
376:
377: /*-------------------------------------------------------++
378: | Update quantities from the transaction table, for all
379: | rows in MTL_PER_CLOSE_DTLS table, based on all
380: | the transactions that have occured during the period.
381: |-------------------------------------------------------+*/
382:
383:
391: FETCH cur_mmt_qty INTO l_sum_period_qty,l_cost_group_id,l_item_id,l_subinv_code;
392:
393: EXIT WHEN cur_mmt_qty%NOTFOUND;
394:
395: UPDATE MTL_PER_CLOSE_DTLS MPSD
396: SET PERIOD_END_QUANTITY = NVL(l_sum_period_qty,0)+NVL(PERIOD_END_QUANTITY,0)
397: WHERE
398: MPSD.ACCT_PERIOD_ID = I_ACCT_PERIOD_ID
399: AND MPSD.ORGANIZATION_ID = I_ORG_ID
446: | for each run, therefore, sum from the beginning
447: | of time until now.
448: |-----------------------------------------------------*/
449:
450: INSERT INTO MTL_PER_CLOSE_DTLS
451: (COST_GROUP_ID,
452: ACCT_PERIOD_ID,
453: SECONDARY_INVENTORY,
454: INVENTORY_ITEM_ID,
510: SUP.INTRANSIT_OWNING_ORG_ID = I_ORG_ID AND
511: NOT EXISTS
512: (SELECT 'X'
513: FROM
514: MTL_PER_CLOSE_DTLS MPSD
515: WHERE
516: MPSD.INVENTORY_ITEM_ID = SUP.ITEM_ID AND
517: MPSD.ORGANIZATION_ID = I_ORG_ID AND
518: MPSD.COST_GROUP_ID = l_default_cost_group_id AND --2769970
622: CLOSE cur_get_mcacd_id;
623:
624: IF l_trans_id >= 0 THEN
625:
626: UPDATE mtl_per_close_dtls mpsd
627: SET
628: (period_end_unit_cost
629: ) =
630: (SELECT
683: i_prog_id,
684: i_prog_appl_id,
685: SYSDATE
686: FROM
687: MTL_PER_CLOSE_DTLS
688: WHERE
689: ACCT_PERIOD_ID = I_ACCT_PERIOD_ID AND
690: ORGANIZATION_ID = I_ORG_ID
691: GROUP BY COST_GROUP_ID;
722: i_prog_id,
723: i_prog_appl_id,
724: SYSDATE
725: FROM
726: MTL_PER_CLOSE_DTLS
727: WHERE
728: ACCT_PERIOD_ID = I_ACCT_PERIOD_ID AND
729: ORGANIZATION_ID = I_ORG_ID
730: GROUP BY SECONDARY_INVENTORY;