The following lines contain the word 'select', 'insert', 'update' or 'delete':
PA_PM_DELETE_DRAFT_BUDGET
PA_PM_DELETE_BUDGET_LINE
PA_PM_UPDATE_BUDGET
PA_PM_UPDATE_BUDGET_LINE
OIT Project Maintenance
Module Name
------------
PA_PM_ADD_TASK
PA_PM_UPDATE_PROJECT
PA_PM_UPDATE_TASK
PA_PM_DELETE_PROJECT
OIT Maintain Progess Data
Module Name
------------
PA_PM_UPDATE_PROJ_PROGRESS
PA_PM_UPDATE_EARNED_VALUE
*******************************************************************************/
/****************** Example Security Code Begins *******************************
-- To use the following example code, please uncomment the code.
--
-- The example allows only users assigned to the same organization as the
-- project organization to have access to the project.
--
-- If required, the security check can be only for specific modules.
-- You change the IF condition to include or remove the module names.
IF X_calling_module = 'Module Name' THEN
BEGIN
IF (x_project_id IS NOT NULL) THEN -- Added the condition for bug 2853458
SELECT 'x'
INTO x_tmp
FROM pa_projects_all ppa , per_assignments_f paf
WHERE ppa.project_id = X_project_id
AND ppa.carrying_out_organization_id = paf.organization_id
AND paf.person_id = X_person_id
AND paf.assignment_type = 'E'
AND paf.primary_flag='Y' --Added for bug 291451
AND trunc(SYSDATE)
BETWEEN paf.effective_start_date AND paf.effective_end_date;
ELSIF ( X_event = 'ALLOW_UPDATE' ) THEN
-- Default processing is to only grant ALLOW_QUERY access to cross
-- project update users (done at beginning of procedure), project authorities
-- for the encompassing organization, and active key members defined for the
-- project.
IF X_cross_project_user = 'Y' THEN
X_value := 'Y';