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.
- LEARNER_CAN_ENROLL – Master eligibility check for a learner enrolling in an event.
- LEARNER_CAN_SELF_ENROLL – Determines whether a learner may self-enroll, applying self-enrollment restrictions.
- EMPLOYEE_CAN_ENROLL and EXT_LEARNER_CAN_ENROLL – Internal-employee and external-learner variants of the enrollment check.
- CHK_DELEGATE_OK_FOR_EVENT – The function the user searched for; validates whether a delegate (a person acting on another’s behalf) is permitted to enroll in the specified event, honoring delegation privileges.
- LEARNER_CAN_SEE_CATEGORY, LEARNER_CAN_SEE_COURSE, LEARNER_CAN_SEE_OFFERING – Visibility checks controlling whether a learner may view a category, course, or offering in the catalog.
- …CAN_ENROLL_IN_PATH family (LEARNER, EMP, EXT) – Eligibility for enrollment into a learning path.
- …CAN_SELF_ENROLL_IN_PATH family (LRN, EMP, EXT) – Self-enrollment into a learning path.
- …CAN_ENROLL_IN_FORUM and …CAN_SELF_ENROLL_IN_FORUM families (LEARNER, LRN, EMP, EXT) – Eligibility for forum enrollment and self-enrollment.
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:
- PER_ALL_PEOPLE_F and HZ_PARTIES – Identify the learner/delegate and party.
- OTA_EVENTS and OTA_EVENT_ASSOCIATIONS – Event definitions, public-event flag, maximum internal attendees, parent offering.
- OTA_OFFERINGS and OTA_ACTIVITY_VERSIONS – Offering and activity-version context.
- OTA_LEARNING_PATHS – Learning path eligibility.
- OTA_FORUMS_B, OTA_CHATS_B, OTA_CATEGORIES_USAGES, OTA_CERTIFICATIONS_B – Forums, chats, catalog categorization, and certification linkage.
- OTA_USER_GROUPS_B – User-group membership driving group-based access.
- FND_USER, FND_TIMEZONES_B – Application user and timezone lookups.
- BEN_ELIGY_PRFL_F – Benefits eligibility profiles, used to restrict enrollment based on HR eligibility.
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.
-
PACKAGE: APPS.OTA_LEARNER_ACCESS_UTIL
12.1.1
-
PACKAGE: APPS.OTA_LEARNER_ACCESS_UTIL
12.2.2
-
PACKAGE BODY: APPS.OTA_LEARNER_ACCESS_UTIL
12.2.2
-
PACKAGE BODY: APPS.OTA_LEARNER_ACCESS_UTIL
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTV_SCHEDULED_EVENTS
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTV_SCHEDULED_EVENTS
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTA_EVENTS
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTA_EVENTS
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTV_SCHEDULED_EVENTS
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on PER_PEOPLE_F
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTV_SCHEDULED_EVENTS
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTA_EVENTS
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on PER_PEOPLE_F
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTA_EVENTS
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on HZ_PARTIES
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on PER_PEOPLE_F
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on HZ_PARTIES
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on PER_PEOPLE_F
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on HZ_PARTIES
12.1.1
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on HZ_PARTIES
12.2.2
-
APPS.OTA_LEARNER_ACCESS_UTIL dependencies on OTA_TIMEZONE_UTIL
12.2.2