Search Results learner_can_enroll




Overview

OTA_LEARNER_ACCESS_UTIL is a utility package in the Oracle EBS Learning Management (formerly Oracle iLearning / OTA schema) module. Its business function is to centralize the eligibility and access-control logic that governs whether a given learner may enroll in, self-enroll in, or even view a learning object such as a course, offering, learning path, or forum. It is classified as an API/UTIL package under the APPS schema, and its header (otlrnacc.pkh, version 120.7, last modified 2008) confirms that it has been a foundational component since early releases and remains present in 12.1.1 and 12.2.2.

The package encapsulates the rules that Learning Management applies to enforce enrollment restrictions—maximum internal attendees, public-event flags, parent offering relationships, attendee type (internal employee versus external learner), and delegate privileges. By isolating these rules in a single utility package, Oracle allows forms, concurrent programs, and other PL/SQL APIs to consistently answer the question “can this person enroll?” without duplicating complex logic.

Key Procedures and Functions

The package exposes 51 documented procedures and functions. The core entry points are the LEARNER_CAN_ENROLL overloads, which return a VARCHAR2 status indicating whether a person may enroll in an event. Overloaded signatures let calling code supply as little as person, party, and event, or as much as public-event flag, maximum internal attendees, start date, and parent offering.

The package also declares a person_ug_map record type and related collection types (person_ug_map_table, ug_learner_list, ug_learner_list_table), indicating internal use of user-group mappings to compute eligibility for groups of learners.

Tables Accessed

The package reads and references the following tables via APPS synonyms:

Usage Notes

OTA_LEARNER_ACCESS_UTIL is typically invoked from the Learning Management self-service forms and catalog pages as learners browse courses and attempt enrollment or self-enrollment. It is also called by other PL/SQL packages—three packages are documented as referencing it—and may be used in custom code or concurrent programs that validate enrollment eligibility in batch. Because delegation logic is included (via CHK_DELEGATE_OK_FOR_EVENT), the package supports scenarios where an administrator or manager enrolls on behalf of another person. Customizations should call the documented functions rather than reimplementing eligibility rules, since the package encapsulates evolving business policy across 12.1.1 and 12.2.2.