Anda di halaman 1dari 25

Collaborate 10 Copyright@2010 by Lisa Laine 1

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

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.

What are Documents of 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 2
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 3
How to configure?
Lets setup an HR Information Type category with a couple sub-categories called Offer Letter and
Termination.

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 4
Navigation: Other Definitions > Application Utilities Lookups
1. Query DOCUMENT_CATEGORY (F11, CtrlF11)
2. Add a Code: HR_INFO,
3. Add Meaning: HR Information
4. Save




Collaborate 10 Copyright@2010 by Lisa Laine 5

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 6

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 Category Code Subcategory Code
HR Offer Letter HR Information Offer Letter
HR Termination HR Information 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 Name
Legislation
Code Table Name
HR Offer Letter HR Offer Letter US HR_DOCUMENT_TYPES_V
HR Termination HR Termination US HR_DOCUMENT_TYPES_V
Collaborate 10 Copyright@2010 by Lisa Laine 7
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 8
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 9

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).
What are 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.


Opening up the details by clicking update task



Collaborate 10 Copyright@2010 by Lisa Laine 10


Why use HR Checklists?
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:

Collaborate 10 Copyright@2010 by Lisa Laine 11
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

HR Checklist Overview
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.

1. 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.
Collaborate 10 Copyright@2010 by Lisa Laine 12
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 13


How to configure HR Checklists?
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
1. Create Checklist Life Event
Responsibility: US Super HRMS Manager
1. Create a new Life Event with the type of Checklist
Navigation: Total Compensation > General Definitions -> Additional Setup -> Life Event
Reasons

Collaborate 10 Copyright@2010 by Lisa Laine 14


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 15




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 16

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 1 0
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 17

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 18
1. Assign Roles and Grants
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.
2. Create Conditions, Approval Group and Rule
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.

4. Create Condition
Collaborate 10 Copyright@2010 by Lisa Laine 19

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 20
The Checklists and Tasks are defined in the Setup/Maintain Checklists function.
Before you start this step, you may want to create task performers in Oracle Approvals Management
(AME)
Navigation: Work Structures > Checklists -> Setup/Maintain Checklists
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 21




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 22
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 23


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 24
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 25
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

Anda mungkin juga menyukai