Search Results per_pay_bases




Overview

The PER_PAY_BASES table is a core reference table within the Oracle E-Business Suite Human Resources (PER) module. It serves as the master repository for defining specific salary or compensation bases used across the application. A pay basis is a fundamental concept that determines the unit of measurement for an employee's salary, such as an annual salary, an hourly rate, or a monthly wage. This table is essential for configuring and processing compensation correctly, as it links payroll calculations to the defined units of pay. Its role is to provide a standardized, business-group-specific list of valid pay bases that can be assigned to positions, assignments, and payroll elements, ensuring consistency in compensation management.

Key Information Stored

The table stores the definitional attributes for each pay basis. Its primary identifier is the PAY_BASIS_ID. Key columns include the NAME of the pay basis (e.g., 'Annual', 'Hourly'), which is unique within a BUSINESS_GROUP_ID. The BUSINESS_GROUP_ID itself is a critical column that enforces data security and partitioning at the business group level. Two other significant columns are INPUT_VALUE_ID and RATE_ID, which form a unique key with BUSINESS_GROUP_ID. These columns establish a direct link to the PAY_RATES table (via RATE_ID) and to the underlying input value definitions in the payroll engine, thereby connecting the pay basis concept to specific rate definitions and calculation rules used in payroll processing.

Common Use Cases and Queries

A primary use case is validating and reporting on the compensation structure for employees. For instance, an HR analyst may need to list all pay bases defined within a specific business group. A common reporting query involves joining PER_PAY_BASES to assignment data to analyze compensation by pay type.

  • Sample Query: List all active pay bases for a business group:
    SELECT name, pay_basis_id FROM per_pay_bases WHERE business_group_id = &business_group_id ORDER BY name;
  • Sample Query: Find assignments using a specific pay basis (e.g., Hourly):
    SELECT ppa.assignment_number, ppa.full_name FROM per_all_assignments_f ppa JOIN per_pay_bases ppb ON ppa.pay_basis_id = ppb.pay_basis_id WHERE ppb.name = 'Hourly' AND SYSDATE BETWEEN ppa.effective_start_date AND ppa.effective_end_date;

This table is also central during payroll setup and when creating or updating positions and assignments, as the PAY_BASIS_ID is a required reference.

Related Objects

As indicated by the foreign key relationships, PER_PAY_BASES is a key reference point for several major entities. The PAY_RATES table is directly linked via the RATE_ID. Crucially, the PAY_BASIS_ID is referenced by HR_ALL_POSITIONS_F (to define the pay basis for a position), PER_ALL_ASSIGNMENTS_F (to define the pay basis for an employee's assignment), and PAY_ELEMENT_LINKS_F (to link payroll elements to specific pay bases). It is also referenced by PQH_POSITION_TRANSACTIONS for position management workflows. All these relationships underscore its role as a master data table for compensation configuration within the HR and Payroll modules.