The following lines contain the word 'select', 'insert', 'update' or 'delete':
G_operation VARCHAR2(30); -- values will be Insert, Update or Delete
G_operation := 'INSERT'; -- Bug 2659435
log_msg('Inserting record for resource : ' || l_rsrc_cost_rec.resources ||
' Legal entity id ' || l_rsrc_cost_rec.legal_entity_id ||
' Organization Id ' || l_rsrc_cost_rec.organization_id ||
' Period Id ' || l_rsrc_cost_rec.Period_id ||
' Cost type Id ' || l_rsrc_cost_rec.cost_type_id);
log_msg('1 row inserted');
PROCEDURE Update_Resource_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_resource_cost_rec IN Resource_Cost_Rec_Type
)
IS
l_api_name CONSTANT VARCHAR2(30) := 'Update_Resource_Cost' ;
SAVEPOINT Update_Alloc_Definition_PUB;
G_operation := 'UPDATE'; -- Bug 2659435
IF l_rsrc_cost_rec.delete_mark = 1 THEN
add_header_to_error_stack(p_resource_cost_rec); -- Bug 2659435
GMF_ResourceCost_PVT.Update_Resource_Cost
( p_api_version => 2.0
, p_init_msg_list => FND_API.G_FALSE
, p_commit => FND_API.G_FALSE
, x_return_status => l_return_status
, x_msg_count => l_count
, x_msg_data => l_data
, p_Resource_Cost_rec => l_rsrc_cost_rec
, p_user_id => l_user_id
);
log_msg( l_no_rows_upd || ' rows updated.');
ROLLBACK TO Update_Alloc_Definition_PUB;
ROLLBACK TO Update_Alloc_Definition_PUB;
ROLLBACK TO Update_Alloc_Definition_PUB;
END Update_Resource_Cost ;
PROCEDURE Delete_Resource_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_resource_cost_rec IN Resource_Cost_Rec_Type
)
IS
l_api_name CONSTANT VARCHAR2(30) := 'Delete_Resource_Cost' ;
SAVEPOINT Delete_Alloc_Definition_PUB;
G_operation := 'DELETE'; -- Bug 2659435
l_rsrc_cost_rec.delete_mark := 1 ;
GMF_ResourceCost_PVT.Update_Resource_Cost
( p_api_version => 2.0
, p_init_msg_list => FND_API.G_FALSE
, p_commit => FND_API.G_FALSE
, x_return_status => l_return_status
, x_msg_count => l_count
, x_msg_data => l_data
, p_Resource_Cost_rec => l_rsrc_cost_rec
, p_user_id => l_user_id
);
log_msg(l_no_rows_del || ' row(s) deleted.');
ROLLBACK TO Delete_Alloc_Definition_PUB;
ROLLBACK TO Delete_Alloc_Definition_PUB;
ROLLBACK TO Delete_Alloc_Definition_PUB;
END Delete_Resource_Cost ;
l_api_name CONSTANT VARCHAR2(30) := 'Delete_Item_Cost' ;
l_delete_mark NUMBER ;
l_delete_mark := p_rsrc_cost_rec.delete_mark ;
log_msg( 'delete_mark : ' || l_delete_mark);
SELECT period_id
INTO l_period_id
FROM gmf_period_statuses
WHERE legal_entity_id = l_legal_entity_id
AND calendar_code = l_calendar_code
AND period_code = l_period_code
AND cost_type_id = l_cost_type_id;
IF (G_operation <> 'DELETE') THEN
--
-- Usage Unit of Measure
--
IF FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW >= G_Debug_Level THEN -- Bug 2659435
log_msg('validating usage_uom : ' || l_usage_uom);
G_operation = 'UPDATE') OR
(G_operation = 'INSERT') THEN
add_header_to_error_stack(p_rsrc_cost_rec); -- Bug 2659435
((G_operation = 'UPDATE') OR
(G_operation = 'INSERT')) THEN
add_header_to_error_stack(p_rsrc_cost_rec); -- Bug 2659435
log_msg('Validating delete_mark : ' || l_delete_mark);
IF (l_delete_mark <> FND_API.G_MISS_NUM) AND
(l_delete_mark IS NOT NULL) THEN
IF l_delete_mark NOT IN (0,1) THEN
add_header_to_error_stack(p_rsrc_cost_rec); -- Bug 2659435
FND_MESSAGE.SET_NAME('GMF','GMF_API_INVALID_DELETE_MARK');
FND_MESSAGE.SET_TOKEN('DELETE_MARK',l_delete_mark);
ELSIF (l_delete_mark = FND_API.G_MISS_NUM AND
G_operation = 'UPDATE') OR
(G_operation = 'INSERT') THEN
add_header_to_error_stack(p_rsrc_cost_rec); -- Bug 2659435
FND_MESSAGE.SET_NAME('GMF','GMF_API_DELETE_MARK_REQ');
IF ((G_operation = 'UPDATE') AND (l_delete_mark = 1)) THEN
add_header_to_error_stack(p_rsrc_cost_rec);
END IF; -- Bug 2692459: G_operation <> 'DELETE'
x_rsrc_cost_rec.delete_mark := l_delete_mark ;
SELECT 'x'
FROM cm_rsrc_dtl
WHERE legal_entity_id = cp_legal_entity_id
/*B12404853 - Added nvl as Organization_id is not mandatory in cm_rsrc_dtl (Refer B12333658)
AND organization_id = cp_organization_id */
AND nvl(organization_id,0) = nvl(cp_organization_id,0) /*B12404853*/
AND resources = cp_resources
AND period_id = cp_period_id
AND cost_type_id = cp_cost_type_id;