The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT cost_layer_id
FROM cst_pac_item_costs
WHERE pac_period_id = i_pac_period_id
AND inventory_item_id = i_item_id
AND cost_group_id = i_cost_group_id;
SELECT COUNT(quantity_layer_id), MAX(quantity_layer_id)
FROM cst_pac_quantity_layers
WHERE pac_period_id = i_pac_period_id
AND inventory_item_id = i_item_id
AND cost_group_id = i_cost_group_id
GROUP BY quantity_layer_id;
SELECT cst_pac_item_costs_s.nextval
INTO l_cost_layer_id
FROM dual;
SELECT bom.cst_pac_quantity_layers_s.nextval
INTO l_quantity_layer_id
FROM dual;
INSERT INTO cst_pac_item_costs (
cost_layer_id,
pac_period_id,
inventory_item_id,
cost_group_id,
total_layer_quantity,
buy_quantity,
make_quantity,
issue_quantity,
item_cost,
item_buy_cost,
item_make_cost,
begin_item_cost,
material_cost,
material_overhead_cost,
resource_cost,
overhead_cost,
outside_processing_cost,
pl_material,
pl_material_overhead,
pl_resource,
pl_outside_processing,
pl_overhead,
tl_material,
tl_material_overhead,
tl_resource,
tl_outside_processing,
tl_overhead,
pl_item_cost,
tl_item_cost,
unburdened_cost,
burden_cost,
last_update_date,
last_updated_by,
creation_date,
created_by,
request_id,
program_id,
program_application_id,
program_update_date,
last_update_login
)
VALUES (
l_cost_layer_id,
i_pac_period_id,
i_item_id,
i_cost_group_id,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
SYSDATE,
i_user_id,
SYSDATE,
i_user_id,
i_request_id,
i_prog_id,
i_prog_appl_id,
SYSDATE,
i_login_id
);
INSERT INTO cst_pac_item_cost_details (
cost_layer_id,
cost_element_id,
level_type,
item_cost,
item_buy_cost,
item_make_cost,
item_balance,
make_balance,
buy_balance,
last_update_date,
last_updated_by,
creation_date,
created_by,
request_id,
program_id,
program_application_id,
program_update_date,
last_update_login
)
VALUES (
l_cost_layer_id,
1,
1,
0,
0,
0,
0,
0,
0,
SYSDATE,
i_user_id,
SYSDATE,
i_user_id,
i_request_id,
i_prog_id,
i_prog_appl_id,
SYSDATE,
i_login_id
);
INSERT INTO cst_pac_quantity_layers (
quantity_layer_id,
cost_layer_id,
pac_period_id,
inventory_item_id,
cost_group_id,
layer_quantity,
begin_layer_quantity,
last_update_date,
last_updated_by,
creation_date,
created_by,
request_id,
program_id,
program_application_id,
program_update_date,
last_update_login
)
VALUES (
l_quantity_layer_id,
l_cost_layer_id,
i_pac_period_id,
i_item_id,
i_cost_group_id,
0,
0,
SYSDATE,
i_user_id,
SYSDATE,
i_user_id,
i_request_id,
i_prog_id,
i_prog_appl_id,
SYSDATE,
i_login_id
);
INSERT INTO cst_pac_period_balances (
pac_period_id,
cost_group_id,
inventory_item_id,
cost_layer_id,
quantity_layer_id,
cost_element_id,
level_type,
txn_category,
txn_category_qty,
txn_category_value,
period_quantity,
periodic_cost,
period_balance,
variance_amount,
last_update_date,
last_updated_by,
last_update_login,
created_by,
creation_date,
request_id,
program_application_id,
program_id,
program_update_date)
(SELECT i_pac_period_id,
i_cost_group_id,
i_item_id,
l_cost_layer_id,
l_quantity_layer_id,
1, -- cost element
1, -- level type
1, -- txn_category (Period Beginning)
0, -- txn_category_qty
0, -- txn_category_value
0, -- period_quantity
0, -- periodic_cost
0, -- period_balance
0, -- variance
sysdate,
i_user_id,
i_login_id,
i_user_id,
sysdate,
i_request_id,
i_prog_appl_id,
i_prog_id,
sysdate
from dual
-- Insert balance records in CPPB only for asset items. Check asset flag for
-- the item in the item master organization
where exists (select 1
from mtl_system_items msi, cst_cost_groups ccg
where msi.inventory_item_id = i_item_id
and msi.inventory_asset_flag = 'Y'
and msi.organization_id = ccg.organization_id
and ccg.cost_group_id = i_cost_group_id));