The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT 'x'
FROM cm_cmpt_dtl
WHERE organization_id = cp_organization_id
AND inventory_item_id = cp_inventory_item_id
AND period_id = cp_period_id
AND cost_type_id = cp_cost_type_id
AND cost_cmpntcls_id = cp_cost_cmpntcls_id
AND cost_analysis_code= cp_cost_analysis_code
AND cost_level = cp_cost_level;
log_msg(' Inserting Component Costs for Item ' || p_header_rec.inventory_item_id ||
' Organization Id ' || p_header_rec.organization_id ||
' Period Id ' || p_header_rec.period_id ||
' Cost Type Id ' || p_header_rec.cost_type_id);
SELECT gem5_cmpnt_cost_id_s.NEXTVAL
INTO l_cmpntcost_id
FROM DUAL ;
INSERT INTO cm_cmpt_dtl
(
cmpntcost_id,
inventory_item_id,
organization_id,
period_id,
cost_type_id,
cost_cmpntcls_id,
cost_analysis_code,
cost_level,
cmpnt_cost,
burden_ind,
fmeff_id,
rollover_ind,
total_qty,
costcalc_orig,
rmcalc_type,
rollup_ref_no,
acproc_id,
trans_cnt,
text_code,
delete_mark,
request_id,
program_application_id,
program_id,
program_update_date,
attribute1,
attribute2,
attribute3,
attribute4,
attribute5,
attribute6,
attribute7,
attribute8,
attribute9,
attribute10,
attribute11,
attribute12,
attribute13,
attribute14,
attribute15,
attribute16,
attribute17,
attribute18,
attribute19,
attribute20,
attribute21,
attribute22,
attribute23,
attribute24,
attribute25,
attribute26,
attribute27,
attribute28,
attribute29,
attribute30,
attribute_category,
creation_date,
created_by,
last_update_date,
last_updated_by,
last_update_login
)
VALUES
(
l_cmpntcost_id,
p_header_rec.inventory_item_id,
p_header_rec.organization_id,
p_header_rec.period_id,
p_header_rec.cost_type_id,
p_this_level_dtl_tbl(i).cost_cmpntcls_id,
p_this_level_dtl_tbl(i).cost_analysis_code,
0, -- Cost Level
p_this_level_dtl_tbl(i).cmpnt_cost,
p_this_level_dtl_tbl(i).burden_ind,
'', -- effectivity id
0, -- rollover indicator
decode(p_this_level_dtl_tbl(i).total_qty, FND_API.G_MISS_NUM, '', p_this_level_dtl_tbl(i).total_qty),
decode(p_this_level_dtl_tbl(i).costcalc_orig, FND_API.G_MISS_NUM, '', p_this_level_dtl_tbl(i).costcalc_orig),
decode(p_this_level_dtl_tbl(i).rmcalc_type, FND_API.G_MISS_NUM, '', p_this_level_dtl_tbl(i).rmcalc_type),
'', -- rollup ref#
'',-- acproc_id
'', -- trans cnt
'', -- text code
0, --delete mark
'',
'',
'',
'',
p_this_level_dtl_tbl(i).attribute1,
p_this_level_dtl_tbl(i).attribute2,
p_this_level_dtl_tbl(i).attribute3,
p_this_level_dtl_tbl(i).attribute4,
p_this_level_dtl_tbl(i).attribute5,
p_this_level_dtl_tbl(i).attribute6,
p_this_level_dtl_tbl(i).attribute7,
p_this_level_dtl_tbl(i).attribute8,
p_this_level_dtl_tbl(i).attribute9,
p_this_level_dtl_tbl(i).attribute10,
p_this_level_dtl_tbl(i).attribute11,
p_this_level_dtl_tbl(i).attribute12,
p_this_level_dtl_tbl(i).attribute13,
p_this_level_dtl_tbl(i).attribute14,
p_this_level_dtl_tbl(i).attribute15,
p_this_level_dtl_tbl(i).attribute16,
p_this_level_dtl_tbl(i).attribute17,
p_this_level_dtl_tbl(i).attribute18,
p_this_level_dtl_tbl(i).attribute19,
p_this_level_dtl_tbl(i).attribute20,
p_this_level_dtl_tbl(i).attribute21,
p_this_level_dtl_tbl(i).attribute22,
p_this_level_dtl_tbl(i).attribute23,
p_this_level_dtl_tbl(i).attribute24,
p_this_level_dtl_tbl(i).attribute25,
p_this_level_dtl_tbl(i).attribute26,
p_this_level_dtl_tbl(i).attribute27,
p_this_level_dtl_tbl(i).attribute28,
p_this_level_dtl_tbl(i).attribute29,
p_this_level_dtl_tbl(i).attribute30,
p_this_level_dtl_tbl(i).attribute_category,
sysdate,
p_user_id,
sysdate,
p_user_id,
FND_GLOBAL.LOGIN_ID
);
log_msg(' 1 this level row inserted for ' ||
' Cmptcls Id ' || p_this_level_dtl_tbl(i).cost_cmpntcls_id ||
' Analysis Code ' || p_this_level_dtl_tbl(i).cost_analysis_code ||
' Cmpntcost Id ' || l_cmpntcost_id);
x_costcmpnt_ids.delete ;
SELECT gem5_cmpnt_cost_id_s.NEXTVAL
INTO l_cmpntcost_id
FROM DUAL ;
INSERT INTO cm_cmpt_dtl
(
cmpntcost_id,
inventory_item_id,
organization_id,
period_id,
cost_type_id,
cost_cmpntcls_id,
cost_analysis_code,
cost_level,
cmpnt_cost,
burden_ind,
fmeff_id,
rollover_ind,
total_qty,
costcalc_orig,
rmcalc_type,
rollup_ref_no,
acproc_id,
trans_cnt,
text_code,
delete_mark,
request_id,
program_application_id,
program_id,
program_update_date,
attribute1,
attribute2,
attribute3,
attribute4,
attribute5,
attribute6,
attribute7,
attribute8,
attribute9,
attribute10,
attribute11,
attribute12,
attribute13,
attribute14,
attribute15,
attribute16,
attribute17,
attribute18,
attribute19,
attribute20,
attribute21,
attribute22,
attribute23,
attribute24,
attribute25,
attribute26,
attribute27,
attribute28,
attribute29,
attribute30,
attribute_category,
creation_date,
created_by,
last_update_date,
last_updated_by,
last_update_login
)
VALUES
(
l_cmpntcost_id,
p_header_rec.inventory_item_id,
p_header_rec.organization_id,
p_header_rec.period_id,
p_header_rec.cost_type_id,
p_lower_level_dtl_tbl(i).cost_cmpntcls_id,
p_lower_level_dtl_tbl(i).cost_analysis_code,
1, -- cost level : this level
p_lower_level_dtl_tbl(i).cmpnt_cost,
0, --p_lower_level_dtl_tbl(i).burden_ind
'', -- effectivity id
0, -- rollover indicator
'', -- total qty
3, -- costcalc_orig insert default value 3 as API Load
'', -- rmcalc_type
'', -- rollup ref#
'', --acproc_id
'', -- trans_cnt
'', -- text_code
0, -- delete mark
'', -- request id
'', -- appl id
'', -- program id
'', -- program_update_date
'', -- attribute1
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'',
'', -- attribute30
'', -- attribute_category
sysdate,
p_user_id,
sysdate,
p_user_id,
FND_GLOBAL.LOGIN_ID
);
log_msg(' 1 lower level row inserted for ' ||
' Cmptcls Id ' || p_lower_level_dtl_Tbl(i).cost_cmpntcls_id ||
' Analysis Code ' || p_lower_level_dtl_Tbl(i).cost_analysis_code ||
' Cmpntcost Id ' || l_cmpntcost_id);
x_costcmpnt_ids.delete ;
log_msg( x_costcmpnt_ids.count || ' Component cost row(s) inserted');
PROCEDURE Update_Item_Cost
(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
p_commit IN VARCHAR2 := FND_API.G_FALSE,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_header_rec IN GMF_ItemCost_PUB.Header_Rec_Type,
p_this_level_dtl_tbl IN GMF_ItemCost_PUB.This_Level_Dtl_Tbl_Type,
p_lower_level_dtl_Tbl IN GMF_ItemCost_PUB.Lower_Level_Dtl_Tbl_Type,
p_user_id IN fnd_user.user_id%TYPE
)
IS
/******************
* Local Variables *
******************/
l_api_name CONSTANT VARCHAR2(30) := 'Update_Item_Cost' ;
SAVEPOINT UPDATE_ITEM_COST_PVT ;
log_msg('Beginning Private Update Item Cost API.');
IF p_this_level_dtl_tbl(i).delete_mark = 0
THEN
UPDATE cm_cmpt_dtl
SET cmpnt_cost = decode(p_this_level_dtl_tbl(i).cmpnt_cost, FND_API.G_MISS_NUM, NULL, NULL, cmpnt_cost, p_this_level_dtl_tbl(i).cmpnt_cost),
burden_ind = decode(p_this_level_dtl_tbl(i).burden_ind, FND_API.G_MISS_NUM, NULL, NULL, burden_ind, p_this_level_dtl_tbl(i).burden_ind),
total_qty = decode(p_this_level_dtl_tbl(i).total_qty, FND_API.G_MISS_NUM, NULL, NULL, total_qty, p_this_level_dtl_tbl(i).total_qty),
costcalc_orig= decode(p_this_level_dtl_tbl(i).costcalc_orig, FND_API.G_MISS_NUM, NULL, NULL, costcalc_orig, p_this_level_dtl_tbl(i).costcalc_orig),
rmcalc_type = decode(p_this_level_dtl_tbl(i).rmcalc_type, FND_API.G_MISS_NUM, NULL, NULL, rmcalc_type, p_this_level_dtl_tbl(i).rmcalc_type),
delete_mark = 0,
ATTRIBUTE1 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE1, p_this_level_dtl_tbl(i).ATTRIBUTE1),
ATTRIBUTE2 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE2, p_this_level_dtl_tbl(i).ATTRIBUTE2),
ATTRIBUTE3 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE3, p_this_level_dtl_tbl(i).ATTRIBUTE3),
ATTRIBUTE4 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE4, p_this_level_dtl_tbl(i).ATTRIBUTE4),
ATTRIBUTE5 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE5, p_this_level_dtl_tbl(i).ATTRIBUTE5),
ATTRIBUTE6 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE6, p_this_level_dtl_tbl(i).ATTRIBUTE6),
ATTRIBUTE7 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE7, p_this_level_dtl_tbl(i).ATTRIBUTE7),
ATTRIBUTE8 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE8, p_this_level_dtl_tbl(i).ATTRIBUTE8),
ATTRIBUTE9 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE9, p_this_level_dtl_tbl(i).ATTRIBUTE9),
ATTRIBUTE10 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE10, p_this_level_dtl_tbl(i).ATTRIBUTE10),
ATTRIBUTE11 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE11, p_this_level_dtl_tbl(i).ATTRIBUTE11),
ATTRIBUTE12 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE12, p_this_level_dtl_tbl(i).ATTRIBUTE12),
ATTRIBUTE13 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE13, p_this_level_dtl_tbl(i).ATTRIBUTE13),
ATTRIBUTE14 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE14, p_this_level_dtl_tbl(i).ATTRIBUTE14),
ATTRIBUTE15 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE15, p_this_level_dtl_tbl(i).ATTRIBUTE15),
ATTRIBUTE16 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE16, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE16, p_this_level_dtl_tbl(i).ATTRIBUTE16),
ATTRIBUTE17 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE17, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE17, p_this_level_dtl_tbl(i).ATTRIBUTE17),
ATTRIBUTE18 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE18, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE18, p_this_level_dtl_tbl(i).ATTRIBUTE18),
ATTRIBUTE19 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE19, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE19, p_this_level_dtl_tbl(i).ATTRIBUTE19),
ATTRIBUTE20 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE20, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE20, p_this_level_dtl_tbl(i).ATTRIBUTE20),
ATTRIBUTE21 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE21, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE21, p_this_level_dtl_tbl(i).ATTRIBUTE21),
ATTRIBUTE22 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE22, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE22, p_this_level_dtl_tbl(i).ATTRIBUTE22),
ATTRIBUTE23 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE23, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE23, p_this_level_dtl_tbl(i).ATTRIBUTE23),
ATTRIBUTE24 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE24, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE24, p_this_level_dtl_tbl(i).ATTRIBUTE24),
ATTRIBUTE25 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE25, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE25, p_this_level_dtl_tbl(i).ATTRIBUTE25),
ATTRIBUTE26 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE26, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE26, p_this_level_dtl_tbl(i).ATTRIBUTE26),
ATTRIBUTE27 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE27, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE27, p_this_level_dtl_tbl(i).ATTRIBUTE27),
ATTRIBUTE28 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE28, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE28, p_this_level_dtl_tbl(i).ATTRIBUTE28),
ATTRIBUTE29 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE29, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE29, p_this_level_dtl_tbl(i).ATTRIBUTE29),
ATTRIBUTE30 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE30, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE30, p_this_level_dtl_tbl(i).ATTRIBUTE30),
attribute_category = decode(p_this_level_dtl_tbl(i).attribute_category, FND_API.G_MISS_CHAR, NULL, NULL, attribute_category, p_this_level_dtl_tbl(i).attribute_category),
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE cmpntcost_id = p_this_level_dtl_tbl(i).cmpntcost_id
AND cost_level = 0;
ELSE -- delete the record i.e mark for purge
UPDATE cm_cmpt_dtl
SET delete_mark = 1,
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE cmpntcost_id = p_this_level_dtl_tbl(i).cmpntcost_id
AND cost_level = 0;
IF p_this_level_dtl_tbl(i).delete_mark = 0
THEN
FND_MESSAGE.SET_NAME('GMF','GMF_API_UPD_IC_NOT_FOUND_ID');
IF p_this_level_dtl_tbl(i).delete_mark = 0
THEN
IF FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW >= G_Debug_Level
THEN
log_msg(' 1 row updated for Component Cost Id ' || p_this_level_dtl_tbl(i).cmpntcost_id);
log_msg(' 1 row deleted for Component Cost Id ' || p_this_level_dtl_tbl(i).cmpntcost_id);
IF p_this_level_dtl_tbl(i).delete_mark = 0
THEN
UPDATE cm_cmpt_dtl
SET cmpnt_cost = decode(p_this_level_dtl_tbl(i).cmpnt_cost, FND_API.G_MISS_NUM, NULL, NULL, cmpnt_cost, p_this_level_dtl_tbl(i).cmpnt_cost),
burden_ind = decode(p_this_level_dtl_tbl(i).burden_ind, FND_API.G_MISS_NUM, NULL, NULL, burden_ind, p_this_level_dtl_tbl(i).burden_ind),
total_qty = decode(p_this_level_dtl_tbl(i).total_qty, FND_API.G_MISS_NUM, NULL, NULL, total_qty, p_this_level_dtl_tbl(i).total_qty),
costcalc_orig= decode(p_this_level_dtl_tbl(i).costcalc_orig, FND_API.G_MISS_NUM, NULL, NULL, costcalc_orig, p_this_level_dtl_tbl(i).costcalc_orig),
rmcalc_type = decode(p_this_level_dtl_tbl(i).rmcalc_type, FND_API.G_MISS_NUM, NULL, NULL, rmcalc_type, p_this_level_dtl_tbl(i).rmcalc_type),
delete_mark = 0,
ATTRIBUTE1 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE1, p_this_level_dtl_tbl(i).ATTRIBUTE1),
ATTRIBUTE2 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE2, p_this_level_dtl_tbl(i).ATTRIBUTE2),
ATTRIBUTE3 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE3, p_this_level_dtl_tbl(i).ATTRIBUTE3),
ATTRIBUTE4 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE4, p_this_level_dtl_tbl(i).ATTRIBUTE4),
ATTRIBUTE5 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE5, p_this_level_dtl_tbl(i).ATTRIBUTE5),
ATTRIBUTE6 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE6, p_this_level_dtl_tbl(i).ATTRIBUTE6),
ATTRIBUTE7 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE7, p_this_level_dtl_tbl(i).ATTRIBUTE7),
ATTRIBUTE8 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE8, p_this_level_dtl_tbl(i).ATTRIBUTE8),
ATTRIBUTE9 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE9, p_this_level_dtl_tbl(i).ATTRIBUTE9),
ATTRIBUTE10 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE10, p_this_level_dtl_tbl(i).ATTRIBUTE10),
ATTRIBUTE11 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE11, p_this_level_dtl_tbl(i).ATTRIBUTE11),
ATTRIBUTE12 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE12, p_this_level_dtl_tbl(i).ATTRIBUTE12),
ATTRIBUTE13 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE13, p_this_level_dtl_tbl(i).ATTRIBUTE13),
ATTRIBUTE14 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE14, p_this_level_dtl_tbl(i).ATTRIBUTE14),
ATTRIBUTE15 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE15, p_this_level_dtl_tbl(i).ATTRIBUTE15),
ATTRIBUTE16 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE16, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE16, p_this_level_dtl_tbl(i).ATTRIBUTE16),
ATTRIBUTE17 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE17, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE17, p_this_level_dtl_tbl(i).ATTRIBUTE17),
ATTRIBUTE18 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE18, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE18, p_this_level_dtl_tbl(i).ATTRIBUTE18),
ATTRIBUTE19 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE19, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE19, p_this_level_dtl_tbl(i).ATTRIBUTE19),
ATTRIBUTE20 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE20, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE20, p_this_level_dtl_tbl(i).ATTRIBUTE20),
ATTRIBUTE21 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE21, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE21, p_this_level_dtl_tbl(i).ATTRIBUTE21),
ATTRIBUTE22 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE22, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE22, p_this_level_dtl_tbl(i).ATTRIBUTE22),
ATTRIBUTE23 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE23, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE23, p_this_level_dtl_tbl(i).ATTRIBUTE23),
ATTRIBUTE24 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE24, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE24, p_this_level_dtl_tbl(i).ATTRIBUTE24),
ATTRIBUTE25 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE25, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE25, p_this_level_dtl_tbl(i).ATTRIBUTE25),
ATTRIBUTE26 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE26, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE26, p_this_level_dtl_tbl(i).ATTRIBUTE26),
ATTRIBUTE27 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE27, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE27, p_this_level_dtl_tbl(i).ATTRIBUTE27),
ATTRIBUTE28 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE28, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE28, p_this_level_dtl_tbl(i).ATTRIBUTE28),
ATTRIBUTE29 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE29, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE29, p_this_level_dtl_tbl(i).ATTRIBUTE29),
ATTRIBUTE30 = decode(p_this_level_dtl_tbl(i).ATTRIBUTE30, FND_API.G_MISS_CHAR, NULL, NULL, ATTRIBUTE30, p_this_level_dtl_tbl(i).ATTRIBUTE30),
attribute_category = decode(p_this_level_dtl_tbl(i).attribute_category, FND_API.G_MISS_CHAR, NULL, NULL, attribute_category, p_this_level_dtl_tbl(i).attribute_category),
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE inventory_item_id = p_header_rec.inventory_item_id
AND organization_id = p_header_rec.organization_id
AND period_id = p_header_rec.period_id
AND cost_type_id = p_header_rec.cost_type_id
AND cost_cmpntcls_id = p_this_level_dtl_tbl(i).cost_cmpntcls_id
AND cost_analysis_code = p_this_level_dtl_tbl(i).cost_analysis_code
AND cost_level = 0;
UPDATE cm_cmpt_dtl
SET delete_mark = 1,
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE inventory_item_id = p_header_rec.inventory_item_id
AND organization_id = p_header_rec.organization_id
AND period_id = p_header_rec.period_id
AND cost_type_id = p_header_rec.cost_type_id
AND cost_cmpntcls_id = p_this_level_dtl_tbl(i).cost_cmpntcls_id
AND cost_analysis_code = p_this_level_dtl_tbl(i).cost_analysis_code
AND cost_level = 0;
IF p_this_level_dtl_tbl(i).delete_mark = 0 THEN
FND_MESSAGE.SET_NAME('GMF','GMF_API_UPD_IC_NOT_FOUND_DTL');
IF p_this_level_dtl_tbl(i).delete_mark = 0
THEN
IF FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW >= G_Debug_Level
THEN
log_msg(' 1 row updated for Component Class Id ' || p_this_level_dtl_tbl(i).cost_cmpntcls_id ||
' Analysis Code ' || p_this_level_dtl_tbl(i).cost_analysis_code);
log_msg(' 1 row deleted for Component Class Id ' || p_this_level_dtl_tbl(i).cost_cmpntcls_id ||
' Analysis Code ' || p_this_level_dtl_tbl(i).cost_analysis_code);
IF p_this_level_dtl_tbl(i).delete_mark = 0
THEN
IF (p_this_level_dtl_tbl(i).cmpntcost_id IS NOT NULL) OR (p_this_level_dtl_tbl(i).cmpntcost_id <> FND_API.G_MISS_NUM)
THEN
FND_MESSAGE.SET_NAME('GMF','GMF_API_IC_UPD_FAILED_ID');
IF p_lower_level_dtl_tbl(i).delete_mark = 0
THEN
UPDATE cm_cmpt_dtl
SET cmpnt_cost = decode(p_lower_level_dtl_tbl(i).cmpnt_cost, FND_API.G_MISS_NUM, NULL, NULL, cmpnt_cost, p_lower_level_dtl_tbl(i).cmpnt_cost),
delete_mark = 0,
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE cmpntcost_id = p_lower_level_dtl_tbl(i).cmpntcost_id
AND cost_level = 1;
UPDATE cm_cmpt_dtl
SET delete_mark = 1,
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE cmpntcost_id = p_lower_level_dtl_tbl(i).cmpntcost_id
AND cost_level = 1;
IF p_lower_level_dtl_tbl(i).delete_mark = 0
THEN
FND_MESSAGE.SET_NAME('GMF','GMF_API_UPD_IC_NOT_FOUND_ID');
IF p_lower_level_dtl_tbl(i).delete_mark = 0
THEN
IF FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW >= G_Debug_Level
THEN
log_msg(' 1 row updated for Component Cost Id ' || p_lower_level_dtl_tbl(i).cmpntcost_id);
log_msg(' 1 row deleted for Component Cost Id ' || p_lower_level_dtl_tbl(i).cmpntcost_id);
IF p_lower_level_dtl_tbl(i).delete_mark = 0
THEN
UPDATE cm_cmpt_dtl
SET cmpnt_cost = decode(p_lower_level_dtl_tbl(i).cmpnt_cost, FND_API.G_MISS_NUM, NULL, NULL, cmpnt_cost, p_lower_level_dtl_tbl(i).cmpnt_cost ),
delete_mark = 0,
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE inventory_item_id = p_header_rec.inventory_item_id
AND organization_id = p_header_rec.organization_id
AND period_id = p_header_rec.period_id
AND cost_type_id = p_header_rec.cost_type_id
AND cost_cmpntcls_id = p_lower_level_dtl_tbl(i).cost_cmpntcls_id
AND cost_analysis_code = p_lower_level_dtl_tbl(i).cost_analysis_code
AND cost_level = 1;
UPDATE cm_cmpt_dtl
SET delete_mark = 1,
last_update_date = sysdate,
last_updated_by = p_user_id,
last_update_login = FND_GLOBAL.LOGIN_ID
WHERE inventory_item_id = p_header_rec.inventory_item_id
AND organization_id = p_header_rec.organization_id
AND period_id = p_header_rec.period_id
AND cost_type_id = p_header_rec.cost_type_id
AND cost_cmpntcls_id = p_lower_level_dtl_tbl(i).cost_cmpntcls_id
AND cost_analysis_code = p_lower_level_dtl_tbl(i).cost_analysis_code
AND cost_level = 1;
IF p_lower_level_dtl_tbl(i).delete_mark = 0
THEN
FND_MESSAGE.SET_NAME('GMF','GMF_API_UPD_IC_NOT_FOUND_DTL');
IF p_lower_level_dtl_tbl(i).delete_mark = 0
THEN
IF FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW >= G_Debug_Level
THEN
log_msg(' 1 row updated for Component Class Id ' || p_lower_level_dtl_tbl(i).cost_cmpntcls_id ||
' Analysis Code ' || p_lower_level_dtl_tbl(i).cost_analysis_code);
log_msg(' 1 row deleted for Component Class Id ' ||p_lower_level_dtl_tbl(i).cost_cmpntcls_id ||
' Analysis Code ' || p_lower_level_dtl_tbl(i).cost_analysis_code);
IF p_lower_level_dtl_tbl(i).delete_mark = 0
THEN
IF (p_lower_level_dtl_tbl(i).cmpntcost_id IS NOT NULL) OR (p_lower_level_dtl_tbl(i).cmpntcost_id <> FND_API.G_MISS_NUM)
THEN
FND_MESSAGE.SET_NAME('GMF','GMF_API_IC_UPD_FAILED_ID');
ROLLBACK TO UPDATE_ITEM_COST_PVT;
ROLLBACK TO UPDATE_ITEM_COST_PVT;
ROLLBACK TO Update_Item_Cost_PVT;
END UPDATE_ITEM_COST ;
l_api_name CONSTANT VARCHAR2(30) := 'Delete_Item_Cost' ;
SELECT cd.cmpntcost_id, cd.cost_cmpntcls_id, cm.cost_cmpntcls_code,
cd.cost_analysis_code, cd.cmpnt_cost, cd.burden_ind,
cd.total_qty, cd.costcalc_orig, cd.rmcalc_type, cd.cost_level,
cd.delete_mark, cd.attribute1,cd.attribute2, cd.attribute3,
cd.attribute4, cd.attribute5, cd.attribute6, cd.attribute7,
cd.attribute8, cd.attribute9, cd.attribute10, cd.attribute11,
cd.attribute12, cd.attribute13, cd.attribute14, cd.attribute15,
cd.attribute16, cd.attribute17, cd.attribute18, cd.attribute19,
cd.attribute20, cd.attribute21, cd.attribute22, cd.attribute23,
cd.attribute24, cd.attribute25, cd.attribute26, cd.attribute27,
cd.attribute28, cd.attribute29, cd.attribute30, cd.attribute_category
FROM cm_cmpt_mst cm, cm_cmpt_dtl cd
WHERE cd.inventory_item_id = p_header_rec.inventory_item_id
AND cd.organization_id = p_header_rec.organization_id
AND cd.period_id = p_header_rec.period_id
AND cd.cost_type_id = p_header_rec.cost_type_id
AND cm.cost_cmpntcls_id = cd.cost_cmpntcls_id /* Bug 7631080 */
ORDER BY cd.cost_cmpntcls_id, cd.cost_analysis_code;
x_this_level_dtl_tbl(l_idx).delete_mark := cr_rec.delete_mark ;