Application Programmatic Interface. API is nothing but a logical grouping of PL/SQL packaged procedures and functions, which acts as an interface to the database.
APIs are used extensively in Oracle HRMS. For every insert/update or delete to any of the base tables, an API is available.
APIs are primarily used to validate the data being inserted into the base tables and also for inserting or updating the data on deleting the data from the base tables.
Object Version Number
In Oracle HRMS, every row in the database table has an object version number. When a new row is created, the object version number for the row is 1. When the row is changed, the object version number is incremented by one. When a user queries a record, the object version number is also fetched along with the other information.
Consider, two users A and B query the same record having Object Version Number 1 simultaneously. If user A makes changes to the records and saves the changes, the current object version number (in this case 1) is compared with the object version number of the record in the database (in this case 1). Since, these values are same, the changes are valid and so the changes are saved and the object version number of the record is incremented by 1. It will become 2.
If user B also does changes and tries to save them, the object version number in the database is 2 against the object version number of the record sent to client (in this case 1). Since, the object version numbers are different, it is evident that the record is already changed by another user and so the changes done by user B are not valid as they may override changes done by user A.
The user B will get an error message:”Record has been modified by another user”. He/she will have to re-query the record to do the changes.
This is one of the important parameters for an API.
Every API has a number of parameters. Not all parameters are mandatory. Generally, the optional parameters are followed by a default value, e.g. p_email_address in varchar2 default null.
Control parameters are the mandatory parameters common across all the APIs.
This is one of the control parameters. For insert APIs, p_object_version_number is an OUT parameter. For update APIs, p_object_version_number is an IN OUT parameter.
This is an IN parameter. The parameter decides that the record needs to be saved to the database or not Default value for p_validate is FALSE. If TRUE value is passed, the data is only validated and not saved to the database.
APIs that are used to insert/update/delete the date tracked data have this control parameter. This is a mandatory IN parameter that defines the date from which the current change needs to be applied.
APIs used to update the date tracked data have this control parameter. Valid values for this parameter are: UPDATE, CORRECTION, UPDATE_OVERRIDE and UPDATE_CHANGE_INSERT
APIs used to delete date track data have this control parameter. Valid values for this parameter are: ZAP, DELETE, FUTURE_CHANGE, and DELETE_NEXT_CHANGE
List of Important APIs
SIT stands for Special Information Types.
This is nothing but the Personal Analysis Key Flexfield. This can be used to define any special information that cannot be stored with the help of the main system. Any number of instances can be defined of the Personal Analysis KFF. Each instance is knows as Special Information Type. Each SIT can have up to thirty fields. Each field is a segment of the KFF.
When a new segment combinations is created, the system will first check to see whether that combination already exists in the table before creating a row. If the combination does exist, the system only retrieves the ID of the row it found. The system therefore has to scan through the whole SIT combinations table.
SITs are primarily attached to people. They can also be used with Jobs, Positions, and Activities (in OTA), but with skill meaning (competencies).
EIT stands for Extra Information Types.
EITs are a type of Descriptive Flexfield. When a new segment combinations is created, the row is just inserted into the appropriate table (without checking whether the combination already exists). There is now full scan of the underlying table and so performance shouldn't be affected by the size of the table.
EIT's can be attached to People, Assignment, Job, Position, Location and Organization.
Oracle Advanced Benefits
The compensation management using Oracle HRMS is explained in the earlier part of the document. In addition to the compensation and benefit functionality, Oracle offers Oracle Advanced Benefits module.
In an enterprise every employee is eligible for certain benefits. These benefits could be Dental insurance, Medical insurance, Life Insurance, Pension Plans and various other benefits. Certain benefits are provided by the employer and for certain benefits the employee needs to contribute. This entire advanced benefits administration can be handled effectively with the use of OAB.
The OAB structure contains of benefits programs, plans, plan types, options, enrollments, enrollment rates and beneficiaries.
E.g. a program could be a Retiree Program. Only, retired people (Ex-employees) could be enrolled under this program.
Plans are the benefits plans which are available under a program.
A person enrolled under the retiree program will be eligible for the plans which are in the program.
Plan types are medical, dental, vision, spouse life, dependent life, 401K etc.
Options available for the employees to choose from could be Employee Only, Employee plus family, Employee plus Spouse, Employee plus dependents etc. The contacts entered for an employee play an important roles when it comes to opting for options such as employee plus family. The dependents eligible for benefits are termed as covered dependents or beneficiaries.
With the help of eligibility criteria set up in the system, the system determines which employee becomes eligible under which benefit program. Life events are set up in the system which helps the employee to opt for enrollment changes. e.g. a single employee when married can opt for employee plus spouse benefits.
The rates are defined in the system, which are linked with the programs, plans and options chosen by the employee.
SSHR stands for self service human resources. The module provides self service management for both the managers as well as employees.
This is a web based module. With the help of intranet and a web browser the employees and their managers can access personal data and career management functionality.
SSHR uses Oracle Workflow extensively. Workflow helps in managing the information flow between the employees and the management. Decision making can be routed through proper channels with the usage of Workflow.
Following functionalities are available with SSHR:
Matching a person to a job or position by competence and planning succession.
Candidate offers enables you to perform web–based recruitment.
Access/Modify personal data