Feb 23, 2018

EBS iRecruitment: Disable Vacancy Editing for Hiring Managers


Majority of organizations go through 1-level or 2-level approval process before publishing the vacancies/requisitions in external websites and job portals. Once applicants start applying for vacancy, hiring managers/recruiters take over and manage application details/statuses. And there is no need to edit vacancy details once it is published. Have you ever wanted to disable vacancy edit options for hiring managers? Well, you are not alone, many of them wish the same and you will know how after reading this article.

First thought to address such a requirement, is to try using OA page personalizations to hide the update buttons and icons. Well, if you take this road, you will soon realize, it may not be a good idea.

Vacancy in iRecruitment module can be edited at couple of different places, one using the pencil icon after searching for vacancy and another using "update" button upon clicking on vacancy name.



Seeded functionality of vacancy update options is based on function security and works on SPEL syntax as shown below. i.e OA page at runtime, checks the function availability "IRC_VAC_DETS_EDIT" and enable/disable vacancy update options.




Here is a simple trick to do this. Navigate to System Administrator -> Security -> Responsibility -> Define screen and query for your responsibility and add a new entry in "Menu Exclusions" sub tab at the bottom section of the form.




Exclusion Type: Function
Exclude Functions:
- Irc CM Home Page Create Vacancy
- Irc Vacancy Details – Create
- Irc Vacancy Details - Edit


You might have to clear global cache from Functional Admin for this change to take immediate affect. This is how pages looks like after adding exclusions.





Is this helpful? Comment below to let me know.

Thanks
Suresh

Feb 22, 2018

EBS iRecruitment: How to restrict application search and view for specific responsibility


It’s very common for businesses to show or hide applications for certain responsibilities. This may be due to data security/privacy concerns OR to enable role separations in larger organizations. For example, a typical organizational practice for hiring managers to access qualified applications ONLY and hide dis-qualified/active applications, whereas, recruiters can view and manage all applications. This blog post will discuss how to address such requirements in iRecruitment.

Basics First:
Let's say, a candidate is registered and applied for open vacancies in iRecruitment portal. His/her personal details will be stored on person record of type "Applicant" and assignment is created for tracking application details such as application status - say change from active application to qualified or hire or rejection or work preferences or questionnaire responses. Application details can also be visible in core forms, using person form -> Others button -> Applications.

Seeded assignment statuses may not always be sufficient for organizational needs and new statuses are created using "Assignment Statuses" screen. Multiple user statuses can be mapped to one external or system status. External statuses are visible to applicants, whereas system statuses are used by iRec to enable certain features.

Just for our discussion today, let's assume the following statuses.




 And assume a test applicant, who applied for 3 different vacant positions. One of the applications is qualified, second one is disqualified and third one is still under consideration.



Approach-1: Restriction based on Security Profile

Hiring manager for asset specialist vacancy in the above example, should be able to see the applicant's details/work preferences/questionnaire responses for this vacancy ONLY and don't need to know about the other 2 applications. Security Profile can be used to apply this restriction. This approach will completely hide the application info from vacancy search and view candidate details page (applications sub tab).

  • To activate security profile, the following profile options should be set first.


Profile Option
Value
Level
HR: Enable RTM Security
No
Responsibility
IRC: Show Applications
Restrict On Assignment Security
Responsibility
HR: Security Profile
Select the security profile from the list
Responsibility



  •  Next, navigate to HRMS Manager -> Security -> Profile form and create a new/edit existing security profile as per options shown below. Don't forget to select "Restrict" applicants and check the box that says, "Restrict on Individual Assignments".

  


      ASSIGNMENT.assignment_status_type_id in
          (SELECT irc.assignment_status_type_id
           FROM irc_assignment_statuses  irc,
                per_assignment_status_types past
           WHERE irc.assignment_id = ASSIGNMENT.assignment_id
             AND irc.assignment_status_type_id = past.assignment_status_type_id
             AND UPPER(past.user_status) NOT IN ('ACTIVE APPLICATION', 'APPLICANT NOT QUALIFIED')
             AND assignment_status_id =
                   (SELECT MAX(assignment_status_id)
                    FROM irc_assignment_statuses
                    WHERE assignment_id = irc.assignment_id) )

If the additional clause in "Custom Security" tab is valid, it is automatically incorporated in a SQL select statement that system generates to restrict access to records, based on the restrictions you have set up in the other tabbed regions. The list of employees, contingent workers, and applicants specified by these other restrictions is therefore further restricted by the custom restriction. The clause fits into the system-generated statement in the following way (this statement is not visible on screen):

SELECT
    1
FROM
    per_all_assignments_f ASSIGNMENT,
    per_all_people_f PERSON,
    per_person_type_usages_f PERSON_TYPE
WHERE
    assignment.assignment_id =:asg_id
    AND :effective_date BETWEEN ASSIGNMENT.effective_start_date
           AND ASSIGNMENT.effective_end_date
      AND PERSON.person_id=ASSIGNMENT.person_id
      AND :effective_date BETWEEN PERSON.effective_start_date
           AND PERSON.effective_end_date
      AND PERSON.person_id=PERSON_TYPE.person.id
    AND :effective_date BETWEEN PERSON_TYPE.effective_start_date
            AND PERSON_TYPE.effective_end_date
    AND {your custom where clause fragment goes here}

  • Run the program "Security List Maintenance" for this specific security profile




Security Profile should be activated now. Screenshot of candidate details page before restriction.



Candidate details page after restriction






Approach-2: Restriction by modifying seeded instance set

This method can be used to restrict the view/search on "Applications by Vacancy" page. It won't work for restricting in Candidate Details page.

iRec has a seeded grant that includes object instance set "Instance set to Restrict Applicant Search". This can be changed to add predicate condition using "Functional Developer" -> Security -> Objects and query for "Object to Restrict Applicant Search", go to "Object Instance Sets" sub tab.




(
    (fnd_global.RESP_NAME = 'IRC Hiring Manager'
        AND
     HR_GENERAL.get_user_status(&TABLE_ALIAS.assignment_status_type_id) in ('Applicant Qualified')
    )
    OR
    (fnd_global.RESP_NAME <> 'IRC Hiring Manager'
     AND
    &TABLE_ALIAS.PER_SYSTEM_STATUS in ('ACTIVE_APL','TERM_APL','OFFER','INTERVIEW1','INTERVIEW2','ACCEPTED','ACTIVE_ASSIGN')
    )
)


Note that, this predicate condition applies to all IRC responsibilities, so be sure to write an if-else kind of restriction as shown above. Lastly, assign this grant to the required responsibility/user to activate this restriction.

Do you find this post useful? Comment down below to let me know.

References:
394083.1 - Understanding and Using HRMS Security in Oracle HRMS
1668082.1 - Oracle iRec: Creating Data Filters for Applicant Search based on the Assignment System Status