Search Results get_tax_record




Overview

HR_DE_TAX_SUPPORT is an Oracle E-Business Suite PL/SQL package owned by the APPS schema that supports German statutory tax processing for payroll and HR records. It is classified under the ETRM API classification "OTHER," indicating it is a supporting utility package rather than a fully public, declaratively documented business API. The package operates against assignment-level data (PER_ALL_ASSIGNMENTS_F) and payroll element entries (PAY_ELEMENT_ENTRIES_F), and it resolves the organizational context of affected employees through the HR organization hierarchy structures. Its central purpose is to apply bulk updates to German tax attributes — tax class, number of children, tax-free income, and additional income — across a selected population of assignments, and to maintain the corresponding tax element entries for those employees.

The package is declared AUTHID CURRENT_USER, so it executes with the privileges of the invoking schema rather than the definer. In practice this means it is normally invoked from within APPS-owned code, such as concurrent program logic, forms, or other APPS packages, where the necessary grants on the underlying HR and Payroll tables already exist.

Key Procedures and Functions

The package exposes three procedures and one function. Parameter lists are not reproduced here; the documented signatures should be obtained from the package header (perdetbu.pkh).

  • batch_update — The primary driver procedure, and the object most often associated with the search term "batch_update." It processes a population of assignments defined by an effective date, an organization hierarchy, a top organization, and an assignment set, and applies a specified action together with the German tax attributes (tax class, number of children, tax-free income, additional income). It carries a business group identifier and a process identifier that ties the run to a concurrent request or batch process.
  • tax_record — Handles tax processing for a single assignment. It accepts the assignment identifier, effective dates (start and end), the specific element entry to be affected, the same tax attributes used by batch_update, and an object version number for optimistic locking. This procedure is the single-record counterpart to the bulk batch_update.
  • delete_assignment — Removes assignment-level work records associated with a given process identifier, providing a cleanup mechanism when a batch run is rolled back or reprocessed.
  • get_tax_record — A function returning a character value that retrieves an existing tax record for a given assignment and effective date. It is typically used to validate current state before an update is applied.

Tables Accessed

The package reads and writes through APPS synonyms for the following objects:

  • PER_ALL_ASSIGNMENTS_F — The primary assignment datastore; tax attributes are applied at assignment level and the driving population is derived from this table.
  • PAY_ELEMENT_ENTRIES_F — Holds the payroll element entries that carry the German tax values into payroll processing; tax_record writes or updates entries here.
  • PER_ORG_STRUCTURE_VERSIONS and PER_ORG_STRUCTURE_ELEMENTS — Used to resolve the organization hierarchy supplied to batch_update, so the batch can target all assignments beneath a chosen top organization.
  • HR_ASSIGNMENT_SET_AMENDMENTS — Supports assignment set based selection and amendment tracking for the batch population.
  • DUAL — Used for simple scalar computations and utility queries.

Usage Notes

HR_DE_TAX_SUPPORT is not intended for direct ad hoc invocation by end users. It is normally called from:

  • Concurrent programs performing mass maintenance of German tax data, where batch_update is driven by a process identifier and the assignment selection criteria.
  • Oracle Forms-based HR or Payroll windows that maintain individual tax records, which invoke tax_record and get_tax_record.
  • Other APPS packages — the ETRM metadata records one dependent package — and custom extensions that need to keep tax element entries synchronized with assignment changes.

Because the package relies on assignment sets, organization hierarchies, and effective-dated element entries, any custom invocation must pass a valid business group, a consistent effective date, and a correct process identifier so that delete_assignment can later reverse the run. Callers should also respect the object version number when invoking tax_record to avoid overwriting concurrent changes. As an "OTHER" classification object with a limited header comment, the package should be treated as internal and subject to change between releases; customizations should isolate calls behind a wrapper rather than embedding them broadly.