You are on page 1of 25

R11 & R12 Goodies: Documents of Record White Paper and Checklists

By Lisa Laine Solution Beacon, LLC

Introduction

A few of the R11/R12 goodies are easy to adopt and create value. Documents of Record, released in HRMS RUP1, allows the user to create new, update existing, view and search Documents of Record for a person. New Checklist functionality, released in R12, automates task tracking: Trigger tasks based on eligibility and automate notifications. Learn how to streamline your compliance and administrative processes using documents of record and eliminate chasing action items by using checklists. We will discuss the functionality, the set up, and what mistakes to avoid.

Oracle introduced documents of record in later family packs of R12, but it hasnt gotten much limelight in the Oracle community. This is probably because many people might not understand its capability or the benefits of using it. In Release 12 Oracle has released a revised checklist functionality that is more robust than what was available in R11. This paper is going to discuss the benefits and how to set up those two goodies. Combined these two functionalities can make HR compliance easier. Lets take for example, the employee on boarding process for a customer not using Oracle Payroll. A checklist is triggered sending the employee an email notification to complete their new hire paperwork. An employee prints the w-4 form, completes it, signs it and then sends himself a copy using the copy machine. The employee can then upload the document to their documents of record using employee self service. Once the checklist is complete, Payroll can be notified of the completed actions providing the employee indicated they completed the task or they can just search for those documents that are required. Alternately, a notification of the uploaded document can be triggered to go to payroll when they update their form.

Documents of Record

What are Documents of Record?

The Documents of Record offers greater functionality than the attachments functionality, using the paperclip icon. The functionality was introduced in HRMS FP_K. The paperclip icon enabled users the ability to attach documents to a record, but was not searchable and could only be retrieved while in the individual record.

Documents of record are intended to store documents and compliance details that pertain to a persons employment record such as I-9 documents, visa information, prior paper based performance reviews, NDAs, employment agreements, W-4s, certifications, etc

Collaborate 10

Copyright@2010 by Lisa Laine

Example: Usage employee signs handbook acknowledgement page and uploads it to the documents of record section for storage The documents of record functionality has the following features: o Available in EE Self Service EEs can upload own documents o Manager Self Service - can upload and view documents for employees o HRMS Manager responsibilities can search in mass or upload for one person o Search by document category, subcategory, documents of record, expires after, expiration before, or verification status o Restrict by information types security o Supervisor verification of documents o Can store extra information and add Descriptive FlexFields o User has the option of uploading document or not, giving the ability to manage compliance while protecting privacy Below is a view of the documents of record search capability

The documents of record screen can be navigated to by one individual record

Collaborate 10

Copyright@2010 by Lisa Laine

Lets setup an HR Information Type category with a couple sub-categories called Offer Letter and Termination.

How to configure?

Register the Program


First register the program Register Document Types (EIT) in the US SHRMS Reports & Processes Request Group (one time step). (This may be there in future releases, but we needed to do it.)

Responsibility: System Administrator Navigation: Security > Responsibility > Request

1. Define Categories
Document of Record works like an Extra Information Type (EIT). It is important to note at the beginning that there must be a unique combination of DOCUMENT_TYPE and Subcategory as the Category and Subcategory fields don't contain picklists at the time of the creation of a Document of Record. These fields populate based on what is defined/selected in Document Type on the page.

Responsibility: US Super HRMS Manager


Collaborate 10 Copyright@2010 by Lisa Laine 3

Navigation: Other Definitions > Application Utilities Lookups


1. 2. 3. 4. Query DOCUMENT_CATEGORY (F11, CtrlF11) Add a Code: HR_INFO, Add Meaning: HR Information Save

Collaborate 10

Copyright@2010 by Lisa Laine

2. Define Subcategory Navigation: Other Definitions > User Types and Statuses
1. Query DOCUMENT_CATEGORY (F11, CtrlF11) 2. In the "System Type" field, Query the new CATEGORY using the LOV 3. Enter SUBCATEGORY by populating "Description" and "Code" fields a. System Type: HR Information b. Description: Offer Letter, Termination 4. You can do this more than once for the same category! Repeat this step until you have entered all SUBCATEGORIES belonging to a CATEGORY 5. Save

Collaborate 10

Copyright@2010 by Lisa Laine

3. Define Document Type


This step can be confusing because you create AND register at the same time. You will see this as there isn't a list of values for the "Document Type" parameter

Responsibility: US Super HRMS Responsibility (Note: when request groups are complete we dont need to use this responsibility) Navigation: Processes and Reports > Submit Processes and Reports > Register Document Types (EITs)
1. Enter the parameters as follows a. Document Type: Populate "Document Type" parameter with a UNIQUE name for your defined Document Type: Populate Category and Subcategory, choosing the values you defined above b. Multiple Rows: Yes c. Legislation Code: (as appropriate) d. Description: (as appropriate) e. Subcategory code: Offer Letter, Termination f. Authorization Required: (set to No) g. Waiting period: Null 2. Submit
Document Type HR Offer Letter HR Termination Category Code HR Information HR Information Subcategory Code Offer Letter Termination

* Note: A unique DOCUMENT TYPE must be defined for every unique CATEGORY/SUBCATEGORY

4. Add Document Type Navigation: Security > Information Types Security


3. Query the responsibilities to which you wish to add this DOCUMENT TYPE 4. Enter the data as follows: a. Code: HR Offer Letter , HR - Termination b. Select the DOCUMENT TYPE defined in step 3. The Category and Subcategory will now populate automatically based upon what was defined when the Document Type was created. 5. Save
Code HR Offer Letter HR Termination Name HR Offer Letter HR Termination Legislation Code US US Table Name HR_DOCUMENT_TYPES_V HR_DOCUMENT_TYPES_V

Collaborate 10

Copyright@2010 by Lisa Laine

Helpful Tips

The following are from various My Oracle Support (aka metalink) notes Does the verification of a document use AME? No, if verification is required (specified on the Register Document Types (EITs) concurrent process) then the employees supervisor will be required to verify the documents information. When the supervisor views the details in manager SSHR there is a Verify button. Can context values be added to the Extra Documents Information DFF? Yes. When a new document type is created it is not automatically added to the context values list of the dff. To add more segments, the document type can be added as a context and segments can be entered against that new context value. How can access to documents be restricted? The Documents of Record (DoR) functionality uses Information Type security for documents. This means that only DoRs for document types attached to a responsibility in the Information Type Security form will be visible in that responsibility. The documents of record function does not work in my custom menu? If you receive: "Function not available to this responsibility. Change responsibilities or contact your System Administrator". To attach the document of records to the menu, query the "Documents of Records" function, User Function Name as "Documents of Records". Add Documents of Record (HRDORPER_PER_TF) to the Person menu of your menu, with no value in the Prompt field. What APIs are available? hr_document_types_api.create_document_type hr_document_types_api.update_document_type hr_document_types_api.delete_document_type hr_document_extra_info_api. create_doc_extra_info hr_document_extra_info_api. update_doc_extra_info hr_document_extra_info_api. delete_doc_extra_info How can I find documents using SQL? The HR_DOCUMENT_EXTRA_INFO table holds details of document of record for a person. The DOCUMENT_EXTRA_INFO_ID is the System-generated primary key column and PERSON_ID is the Foreign Key to PER_ALL_PEOPLE_F table SELECT document_extra_info_id FROM hr_document_extra_info WHERE person_id = <person_id>; The FND_DOCUMENT_CATEGORIES table stores information about the categories in which documents are classified. For HR Documents of record name is 'HR_DOR' SELECT category_id FROM fnd_document_categories

Collaborate 10

Copyright@2010 by Lisa Laine

WHERE name='HR_DOR'; a) For Data type as File: SELECT * FROM fnd_lobs WHERE file_id IN ( SELECT media_id FROM fnd_documents_vl WHERE document_id IN ( SELECT document_id FROM fnd_attached_documents WHERE category_id = <catgeory_id> AND pk1_value = <document_extra_info_id> ) AND datatype_name = 'File' ); b) For Data type as short Text: SELECT * FROM fnd_documents_short_text WHERE media_id IN ( SELECT media_id FROM fnd_documents_vl WHERE document_id IN( SELECT document_id FROM fnd_attached_documents WHERE category_id = <catgeory_id> AND pk1_value = <document_extra_info_id> ) AND datatype_name = 'Short Text' ); c) For Data type as Web URL: SELECT url FROM fnd_documents_vl WHERE document_id IN ( SELECT document_id FROM fnd_attached_documents WHERE category_id = <catgeory_id> AND pk1_value = <document_extra_info_id> ) AND datatype_name='Web Page';

Collaborate 10

Copyright@2010 by Lisa Laine

HR Checklists

HR Checklists are configurable checklists for common life event processes such as on-boarding. Depending on the life event, a checklist is dynamically built (based on eligibility) to comprise a number of associated tasks with target completion dates and designated task performers. Notifications are sent out to complete the task. This feature also integrates with Oracle Approvals Management (AME) to provide task approvals when required. For example when a person is hired, a new hire life event is detected. When the checklists life events are processed, a new hire checklist is created for that person. The checklist contains a series of tasks that must be completed for that individual. The checklist is attached to the person record. Below is a sample of what the checklist looks like for the HR Professional.

What are HR Checklists?

The checklist functionality in Release twelve replaces the sign-off checklist functionality in Release 11. The new checklist functionality offers more robust administration of checklists and leverages Oracle eligibility profiles to create dynamic checklists and routing through Oracle Approvals Management (AME).

Opening up the details by clicking update task

Collaborate 10

Copyright@2010 by Lisa Laine

Automation of checklists for key HR transactions creates consistency and supports compliance of corporate policies by ensuring line managers know critical, key information and steps needed for processing HR transactions. Manager time spent on performing these transactions is reduced, freeing time for other more value added activities. By automating these infrequent actions through predefined Checklists in Release 12.1, organizations can improve productivity and reduce risk of non-compliance. Why spend all that time emailing and following up on the checklists. Typical checklists include new hire, termination, transfer, but Id also expand the checklist functionality to things like expiring certifications, visa expirations, and even for standard benefits to detect life events (Note: you wont get the automatic processing or the power of life events, but you dont need to run a report any longer). Anything that pertains to tasks being completed for an employee can be a checklist. Ive listed one restriction below:

Why use HR Checklists?

Collaborate 10

Copyright@2010 by Lisa Laine

10

HR Checklist Overview

Checklists are limited to Employee person types! OAB does not process Life Events for Contingent Workers or Applicants neither does the Eligibility Profile pick up those person types

Checklists leverage the functionality used for Advanced Benefits, it uses life events and eligibility profiles. So OAB must be installed, but not necessarily implemented nor licensed to use it. We define a life event and the criteria for triggering the life event. The life event is detected by one of two methods: the allocated checklist form is opened from the persons record or the concurrent checklist process is runs to detect checklist life events. The tasks in the checklists may have eligibility profiles associated with them so that only those tasks that are relevant are created. The task notifies the performer of that action via email/notifications. They mark the task complete or incomplete and the checklist is updated. Below is a checklist generated for an individual.

Responsibility: US Super HRMS Manager Navigation: People > Enter and Maintain -> Others -> Allocated Checklists

Notifications

When set up, the performer will default against the allocated tasks. Checklists use the parallel approval process which means that on initial allocation the first approver in the list is selected. Subsequently, whoever responds first to the notification will update the status. A notification will be sent to each member of the Approval Group saying, 'Action Required: Complete <task name> for <employee name>', 2. The performer will select either: COMPLETED or NOT COMPLETED. 3. Whichever person responds to these buttons first will set the status on the task to either Completed or Rejected.
1.

Collaborate 10

Copyright@2010 by Lisa Laine

11

4.

The Notification to all performers will then show 'FYI: <employee name> task <task name> is updated'

Managing Checklists
Managers can view and update the tasks allocated to the employees reporting to them, and employees can view, and update their own allocated tasks. If your email is integrated, they can also update the tasks directly from their email. In Self Service, the attributes of the tasks can be maintained here, including completion status, duration, performer and flexfield information. Tasks can also be deleted, and added to the employee. For employees, add the function HR_ALLOCATED_CHECKLIST_SS to their Self Service menu if not already there, and for Managers, add HR_ALLOCATED_CHECKLIST_MGR_SS to get access to the Allocated Checklists page. The checklist and tasks are allocated by the Allocate Checklists and Tasks Process. It should be noted, however, that subsequent changes to the checklist are not re-allocated to employees who have already received the checklist and tasks when the Life Event is triggered. If a task has been added since the allocation, the task can be added manually to each employee using the Allocated Checklists page, or by running the per_checklist_events.allocate_person_tasks procedure using the API.

Collaborate 10

Copyright@2010 by Lisa Laine

12

Based on My Oracle Support Note 740618.1. Lets create a checklist that contains two tasks, one is for all employees and one is for full-time employees only

How to configure HR Checklists? 1. Create Checklist Life Event

Responsibility: US Super HRMS Manager Navigation: Total Compensation > General Definitions -> Additional Setup -> Life Event Reasons
1. Create a new Life Event with the type of Checklist

Collaborate 10

Copyright@2010 by Lisa Laine

13

2. Click on Person Changes button. If there is an existing person change defined that you can use, choose it from the LOV on Name; otherwise, click on Define Person Change to specify the event that will trigger the allocation of your checklist tasks. For example, the following will detect that a New Employee has been entered by establishing if a new period of service has been created: Table Name - PER_PERIODS_OF_SERVICE Column Name - DATE_START Old Value - No Value New Value - Any Value

Collaborate 10

Copyright@2010 by Lisa Laine

14

2. Create Eligibility Profile (Optional)


By Defining Eligibility Profiles you can tailor the tasks in a checklist to suit particular groupings. For instance, some tasks may only be applicable to people in a particular location. If no eligibility profile is defined then all people are eligible once the Life Event is processed. The Eligibility Profiles form used must be the one available under the Work Structures -> Checklists menu as the 'Applies To' field defaults to a Checklist Profile, as opposed to a Benefits Profile.

Navigation: Work Structures > Checklists -> Eligibility Profiles

Collaborate 10

Copyright@2010 by Lisa Laine

15

For example, to create an eligibility profile that is only applicable to full-time employee assignments: Header Name New Hire - Full Time Assignment Type Any Assignment Applies To Checklist Profile Status Active Employment Tab Full/Part Time from dropdown menu Seq 10 Full/Part Time Fulltime-Regular

3. Create Additional Checklist Categories (Optional)


There are two seeded checklist categories, On-Boarding (recruitment, hiring, orientation, etc) Off-Boarding (termination, relocation, long term sickness,etc) Navigation: Application Utilities Lookups > lookup type: CHECKLIST_CATEGORY

4. Create Descriptive Flexfields (Optional)


There are two Descriptive Flexfields which can be used to provide additional context information on Allocated Checklists and Tasks if required. Additional Allocated Checklist Details - Base table (PER_ALLOCATED_CHECKLISTS). You could set up this DFF to display segments specific to the defined Checklist.

Collaborate 10

Copyright@2010 by Lisa Laine

16

Additional Allocated Task Details Base table (PER_ALLOCATED_TASKS). You could set up this DFF to display segments specific to the defined tasks

5. Set up Performers in AME


Performers can be automatically assigned to designated checklist tasks by setting up an Approval Group within Oracle Approvals Management (AME). This section will provide some basic steps on how to do this, but for a more detailed understanding of using AME and Workflow Notifications, see the Oracle Approvals Management Implementation Guide, and Oracle Workflow Administrator and Users Guides.

Collaborate 10

Copyright@2010 by Lisa Laine

17

Before attempting to set up AME, checklist approval requirements must be well-planned in advance, and the user with the responsibility for setting this up should be assigned the AME Roles and grants. Follow instructions in Note 375119.1. AME has implemented Role Based Access Model (RBAC), so do not attempt to assign the AME Responsibilities directly to your user as you will not be able to select any transaction types using the AME Dashboards as a consequence. Once that is done, you can continue. From Business Analyst Dashboard, select CHECKLIST transaction type. Click on Conditions link, and click on Create button. Select CHECKLIST_ATTRIBUTE and enter a name in the 'String Value' field in the region below. This will be the Approvals Identifier for linking to the checklist task. See step 5 in Setup Steps above.
1. Create Approval Group by selecting the tab 'Approver Groups'. 2. Set usage type to Static, and voting method to 'First Responder wins', 3. Add group members as required.

1. Assign Roles and Grants

2. Create Conditions, Approval Group and Rule

4. Create Condition

Collaborate 10

Copyright@2010 by Lisa Laine

18

5. Associate the Action Type, 'Approval-Group Chain of Authority' to the CHECKLIST

Transaction Type.

6. Select 'Rules' tab to define an AME Approval Rule of type 'List Creation',

7. Associate with your condition and action type. 8. Finish the process to save the AME rule.

6. Create Checklists and Tasks

Collaborate 10

Copyright@2010 by Lisa Laine

19

The Checklists and Tasks are defined in the Setup/Maintain Checklists function. Navigation: Work Structures > Checklists -> Setup/Maintain Checklists
Before you start this step, you may want to create task performers in Oracle Approvals Management (AME) Click the Add Checklist icon to create a checklist against a specific category. Define a name and link in the Life Event created in step 1)

Then use Add Task to create tasks associated to your checklist. Define a name, duration and mandatory flag.

Link in an eligibility profile if required, and an AME identifier if a performer is to be assigned automatically to the task when it is allocated (see below for further information on setting up AME). Alternatively a performer can be allocated manually in the Allocated Checklists function in Self Service.

Collaborate 10

Copyright@2010 by Lisa Laine

20

7. Run Allocate Checklists and Tasks Program This program should be scheduled at intervals regular enough to cater for the frequency of occurring Life Events. When the Allocated Checklists function is run in Self Service the program is run in background for the individual person to ensure the information displayed is current, but it's better to remove the overhead by scheduling this concurrent program. The program identifies pending Life Events linked to Checklists, and allocates the checklist tasks to the person based on eligibility profiles. It executes the pl/sql procedure called per_checklist_events.allocate_tasks. Navigate to Processes and Reports - > Submit Processes and Reports.

Collaborate 10

Copyright@2010 by Lisa Laine

21

Program Name - Allocate Checklists and Tasks Process

Helpful Tips Performers can be automatically assigned to designated checklist tasks by setting up an
What do I do if my checklists dont fire? Check OAB installed Check eligibility Check life event triggers Check start date for employee is not before system date How do I find the checklist life event? Select LER_ID, EFFECTIVE_START_DATE, EFFECTIVE_END_DATE, NAME, BUSINESS_GROUP_ID, TYP_CD from BEN_LER_F where typ_cd='CHECKLIST'; Collaborate 10 Copyright@2010 by Lisa Laine 22

Where do I find the Checklist Definition? select CHECKLIST_ID, NAME, CHECKLIST_CATEGORY, EVENT_REASON_ID from PER_CHECKLISTS where BUSINESS_GROUP_ID=xx; Where do I find Checklist Tasks details? select TASK_IN_CHECKLIST_ID, CHECKLIST_TASK_NAME, ELIGIBILITY_PROFILE_ID, MANDATORY_FLAG, TARGET_DURATION, TARGET_DURATION_UOM, TASK_SEQUENCE from PER_TASKS_IN_CHECKLIST where CHECKLIST_ID=xx; How do I find the triggered life event? select BEN_IDENTIFIED_EVENT_ID, EVENT_REASON_ID, PERSON_ID, STATUS, EFFECTIVE_DATE from PER_BEN_IDENTIFIED_EVENTS; This table gets emptied when the purge parameter is set to Yes when running the Allocate Checklists program How do I find the checklists and the tasks allocated to the employees? select ALLOCATED_CHECKLIST_ID, CHECKLIST_ID, PERSON_ID, ASSIGNMENT_ID, CHECKLIST_NAME, CHECKLIST_CATEGORY from PER_ALLOCATED_CHECKLISTS where CHECKLIST_ID=61 select ALLOCATED_TASK_ID, ALLOCATED_CHECKLIST_ID, TASK_NAME, PERFORMER_ORIG_SYS_ID PERFORMER, TASK_OWNER_PERSON_ID TASK_OWNER

Collaborate 10

Copyright@2010 by Lisa Laine

23

from PER_ALLOCATED_TASKS where ALLOCATED_CHECKLIST_ID = 21;

Allocating Checklist Tasks using an API (from My Oracle Support)


When setting up checklists, it may be necessary to do a manual allocation because some employees have already experienced the Life Event that has been defined. For instance, if the Life Event is triggered for new employees, and several were entered onto the system prior to the Life Event being defined and linked to the Checklist. In these circumstances the per_checklist_events.create_event procedure can be called directly. The example shown passes the parameters directly but it can be incorporated into a loop where the target person_ids are passed in with the target start dates. DECLARE v_error varchar2(4000); l_target_start_date date := to_date('01-Oct-2008','dd-mon-yyyy'); l_person_id number := 31524; l_life_event_id number := 41775; BEGIN dbms_output.ENABLE(1000000); per_checklist_events.create_event (p_effective_date => l_target_start_date ,p_person_id => l_person_id ,p_assignment_id => null ,p_ler_id => l_life_event_id); EXCEPTION WHEN OTHERS THEN v_error := SUBSTR(SQLERRM,1,250); dbms_output.put_line(v_error); END; commit: This has the effect of creating the Pending row on PER_BEN_IDENTIFIED_EVENTS. Once that is present it will be picked up by the Allocate Checklists and Tasks concurrent program. This concurrent program can also be called directly. For example DECLARE l_errbuf varchar2(2000); l_retcode varchar2(1000); BEGIN per_checklist_events.allocate_tasks (errbuf => l_errbuf, retcode => l_retcode, p_purge => 'Y'); END; commit;

Collaborate 10

Copyright@2010 by Lisa Laine

24

If a Checklist had not been previously allocated, the allocate_tasks process should be run. Howvever if a task has been added to an existing checklist after allocation to a group of employees, the additional task can be added either manually in the Allocated Checklists page, or by the allocate_person_tasks procedure as described below. A Pending row must have previously been written to the per_ben_identified_events table using the create_event procedure. DECLARE v_error varchar2(4000); l_person_id number := 29622; BEGIN dbms_output.ENABLE(1000000); per_checklist_events.allocate_person_tasks (p_person_id => l_person_id); EXCEPTION WHEN OTHERS THEN v_error := SUBSTR(SQLERRM,1,250); dbms_output.put_line(v_error); END;

Conclusion

Checklists and Documents of Record are easy to implement pieces of functionality that can make the HR administrators life easier. If used in conjunction with existing functionality, they can really help create more end to end automated processes.

References

My Oracle Support Metalink Notes, Oracle Corporation Oracle Human Resources Management Systems, Enterprise and Workforce Management Guide (US) , Release 12, Part No. B31629-03, Page 7-1 to 7-9, Checklists Overview , Oracle Corporation

Collaborate 10

Copyright@2010 by Lisa Laine

25

You might also like