Upload
ahmadbilal
View
65
Download
2
Embed Size (px)
Citation preview
Automate Mass HR Position Reorganization
Using Oracle Seeded API’s
Shri KulkarniShri KulkarniLana HicksLinda Grimes
July 2010
AgendaAgenda
• Introduction
• Challenging Task for Budget Reorganization• Challenging Task for Budget Reorganization
• Technical Overview
• Mass Move Process
• Questions and Answers
Application Implementations
E-Business Suite 11.5.10.2
Database 10.2.0.4
Oracle Application modulesOracle Application modules• Oracle Advanced Benefits, Oracle Assets, Oracle Cash Management• Oracle General Ledger, Oracle Grants Accounting, Oracle Human Resources
l l b b l bl• Oracle Inventory, Oracle Labor Distribution , Oracle Payables,• Oracle Payroll, Oracle Projects, Oracle Public Sector Budgeting Oracle
Purchasing, Oracle Receivables, Employee Self-Service, Oracle Time and L bLabor
Implementing 2010
Manager Self Service , iRecruitment , Learning Management
About our Business Groupsp
• 2 Business Groups – Board of County Co. & Clerk of Courts
• 2300 Board FT/PT employees (500+ Fire & EMS Employees)• 2300 Board FT/PT employees (500+ Fire & EMS Employees)• 2 different payrolls in BoCC business group
• 400 Clerk FT/PT employees/ p y
• 5 Labor Bargaining Units – EMU, FBC, FCS, FFU, PEU
• 2700 Oracle Self Service Users
• External iRecruitment / iSupplier (Public) Users
Challenging Task for Budget ReorganizationChallenging Task for Budget Reorganization
• Due to the economic issues faced by the state our countyDue to the economic issues faced by the state, our countygovernment has found the need to consolidate departments anddivisions, thus reducing labor costs.
• This is a challenging task to achieve in a timely manner. Wetherefore created a process that will allow us to automaticallymove all positions in one org to another org then transfer allmove all positions in one org to another org, then transfer allcurrent assignments to the new positions automatically.
Initial Problem
• We had a pending mass reorganization that would requireabout 800 positions/employees to have new positions created
d ti d t th i dand tied to their records.
• At 5 minutes per position being created and assigned toemployee, this would be approximately 800 x 5 = 4000
i tminutes,
• 66 plus hours for data entry input, plus then auditing time forvalidation of keying.
• Impact on PSB
• Great probability of error
Dept Div Movement for Re-Org (Oct 1 2009)
Position Flex Field Setup
WHY CAREER LADDER POSITIONS?• Career Ladder Positions are those positions that after certain criteria is met, like 1 additional years of
service, an employee will be automatically moved to the next level. There is only 1 budgeted position in service, an employee will be automatically moved to the next level. There is only 1 budgeted position in Budget, therefore, we can not setup 3 different position numbers for this.
• Example: Organization Name Job Name Position# Hiring StatusBuilding & Codes Building Inspector I 1479 Active Career Ladder
Building Inspector II 1479 NonActive Career LadderBuilding Inspector III 1479 NonActive Career Ladder
• The current assignment that occupies Position Number 1479, is a Building Inspector I.• After 1 year, they will become a Building Inspector II.• We would go to the Position Form and do the following:• 1) change the hiring status of the Building Inspector I to NonActive Career Ladder• 1) change the hiring status of the Building Inspector I to NonActive Career Ladder• 2) change the hiring status of the Building Inspector II to Active Career Ladder.• 3) update employee’s assignment and salary information.•
Th F th I f fl d t i if thThe Further Info flag determines if the position goes to Budget.
Technical Overview
CREATE TABLE "APPS"."POLK_REORG_POSITIONS" ( "REORG_DATE" DATE,
"OLD_ORGANIZATION_ID" NUMBER, "OLD_ORGANIZATION_NAME" VARCHAR2(250 BYTE), "NEW_ORGANIZATION_ID" NUMBER, "NEW_ORGANIZATION_NAME" VARCHAR2(250 BYTE), "OLD POSITION ID" NUMBER OLD_POSITION_ID NUMBER, "OLD_POSITION_NAME" VARCHAR2(250 BYTE), "NEW_POSITION_ID" NUMBER, "NEW POSITION NAME" VARCHAR2(250 BYTE), NEW_POSITION_NAME VARCHAR2(250 BYTE), "CREATION_DATE" DATE, "CREATED_BY" VARCHAR2(100 BYTE), "ASSIGNMENT_UPDATE_FLAG" VARCHAR2(30 BYTE), "ASSIGNMENT_UPDATED_DATE" DATE, "ASSIGNMENT_UPDATED_BY" VARCHAR2(250 BYTE), "ASSIGNMENT_ID" NUMBER, "HIRING STATUS" VARCHAR2(4000 BYTE)"HIRING_STATUS" VARCHAR2(4000 BYTE)
Oracle Seeded Oracle Seeded API’s
• HR_POSITION_API.CREATE_POSITION
• HR_POSITION_EXTRA_INFO_API.CREATE POSITION EXTRA INFOCREATE_POSITION_EXTRA_INFO
• HR_ASSIGNMENT_API.UPDATE EMP ASG CRITERIAUPDATE_EMP_ASG_CRITERIA
• HR_POSITION_API.UPDATE_POSITION
Custom Package for Position ReorgCustom Package for Position Reorgcreate or replace PACKAGE POLK_POSITION_REORG_PKG AS--/******************************************************************************/Create database package under apps.NAME: POLK_POSITION_REORG_PKG.PKGPURPOSE: This package is created to create new positions in re-org process.REVISIONS:Ver Date Author Description--------- ---------- --------------- ------------------------------------1.0 25-Aug-2009 Shri Kulkarni Initial Creation
******************************************************************************/-------------------------------------------------------------------------------------------------------------------------------------PROCEDURE polk_create_positions (errbuf VARCHAR2,
retcode NUMBER,p_position_id NUMBER,p from org NUMBER,p_ _ g ,p_to_org NUMBER,p_effective_date VARCHAR2,p_mode VARCHAR2,p_cost_allocation_keyflex_id NUMBER);
--PROCEDURE insert_position_extra_info( p_prev_position_id NUMBER,
p_new_position_id NUMBER);
Custom Package for Position ReorgPROCEDURE d t i t it i ( b f VARCHAR2PROCEDURE update_assignments_criteria( errbuf VARCHAR2,
retcode NUMBER,p_org NUMBER,p_effective_date VARCHAR2,p mode VARCHAR2);p_mode VARCHAR2);
--PROCEDURE update_assignments_costing ( p_assignment_id NUMBER,
p_code_combination_id NUMBER,p effective date DATEp_effective_date DATE,p_prev_position_id NUMBER,p_new_position_id NUMBER);
--PROCEDURE update asg criteria pos( p position id NUMBERPROCEDURE update_asg_criteria_pos( p_position_id NUMBER,
p_from_org NUMBER,p_effective_date DATE );
--PROCEDURE delete positions ( errbuf VARCHAR2PROCEDURE delete_positions ( errbuf VARCHAR2,
retcode NUMBER,p_position_id NUMBER,p_organization_id NUMBER,p effective date VARCHAR2p_effective_date VARCHAR2,p_mode VARCHAR2);
--END POLK_POSITION_REORG_PKG;
Mass Move - Steps Before ExecutionMass Move - Steps Before Execution
• Create new organizations if needed
• Print current Organization Hierarchy Diagrammer and• Print current Organization Hierarchy Diagrammer anddetermine needed changes.
• Run reports of existing positions that are to be created in neworganizations Ensure you have costing allocations and exportorganizations. Ensure you have costing allocations and exportinto Excel.
• Run reports of all employees in their current positions that areto be moved to new organizations and export into Excelto be moved to new organizations, and export into Excel.
• Manually move any employees who will not be transferring tonew organization as others will be.
Mass Move ExceptionsMass Move Exceptions
• If you have a small amount of employees whose positions willnot be transferred to the to Organization of the Mass Move,gyou must manually create these positions in the neworganization they will be moved to before doing the massmove for their organization.
• Manually change their assignment record.
• Wait for any assignment changes effective the date of themass change begin until after mass update is done.g g p
New Organization SetupNew Organization Setup
• Create any new organizations that are needed whenconsolidating old positions to new organization.
• Example:
• Old Organizations –Utiliti C it l P j tUtilities Capital ProjectsUtilities Customer ServiceUtilities Technical ServicesUtilities Operations
N O i iNew Organization –
Utilities
OrganizationDiagrammergbefore changes• Responsibility:
• US Super HRMS Manager
N i ti• Navigation:
• Work Structures >
• Organization > Organization >
• Diagrammer
Step 1: Polk Reorg – Create Positions
• <enter>
• <enter>
• <enter>
• <enter>
Polk Reorg – Create Positions - Creates new positions thatchanges the from organization to the new organization for allpositions whose first segment is the From Org.p g g
New Reorg CustomTable
• <enter>
• <enter>
• <enter>
• <enter>
Creates a history of Position reorganizations and allows for reporting (this position is split 3 ways)reporting (this position is split 3 ways)
fNew Position Verification
o Create Reports in Discoverer, SQL Developer, or EISAfter p pthat can be exported into excel and verified that thenew positions are created correctly with neworganization id
AfterStep
1
o Compare Position Counts By Org
Step 2: Polk Reorg – Update Assignments
• <enter>
• <enter>
• <enter>
• <enter>
Polk Reorg – Update Assignments – Update the assignments of all employees in the Positions that have changed p y gorganizations.
New Assignment Verification
• Run reports of newly created Assignment records to compare withold position and ensure they are assigned to new positions and havecorrect costing
• Compare Assignment Counts By Organization
• PSB report verifications, worksheets, Custom table changes
Assignments in Old Organization
New Assignments in Organization report
Position Counts By OrganizationsPosition Counts By Organizations
• <enter>
• <enter>
• <enter>
• <enter>
End Date Changed Positions
• Final step after assignments have been verified is to end datethe old positions using automated process that reads thethe old positions using automated process that reads thecustom POLK_REORG_POSITIONS table and end dates allold positions for the date of present reorganization.
• (sets position availability status to eliminated)(sets position availability status to eliminated)
Step 3: Polk Reorg End Date PositionsStep 3: Polk Reorg – End Date Positions
• <enter>
• <enter>
• <enter>
• <enter>
P iti St t C t ft d d tiPosition Status Count after end dating
• <enter>
• <enter>
• <enter>
• <enter>
Polk Reorg PositionsPolk Reorg Positions
• <enter>
• <enter>
• <enter>
• <enter>
Report to show the Old and New Organization Names after all Processes are runProcesses are run.
Reusability for Future Reorganizations
This process is reusable for futured k h f hreorganizations and keeps a history of such.
OrganizationDiagrammergafter changes
• Responsibility: US p ySuper HRMS Manager
• Navigation: Work Structures > Organization > Diagrammer
Budget and HR CompareBudget and HR Compare
Budget HRBudget HR
Polk Position Control Reportp
User can drag any columns from left to above pivot excel report
Create a Check-Off
Contact InformationContact Information
C t t I f ti• Contact Information:o HR/Position Controlo Linda Grimes [email protected] yo Lana Hicks [email protected] Shri Kulkarni [email protected]
P bli S t B d tio Public Sector Budgetingo Joy Dimbath [email protected]
Helpful Metalink DocumentsHelpful Metalink Documents
• APIs in Oracle HRMS (an Extract from the Implementation Guide) [ID 229133.1]Guide) [ID 229133.1]
• Understanding and Using APIs in Oracle HRMS [ID 72310.1]
• How to Create a Hardcoded API to Update an Employee A U h API Assignment Using the API hr_assignment_api.update_emp_asg_criteria [ID 815007.1]
• How Does One Create and/or Update Position and Position H h HR U API? [ID 736443 1 Hierarchy in HR Using an API? [ID 736443.1