Search Results get_root_menu_name
Overview
JTF_MENU_PUB is a public PL/SQL package in the APPS schema that provides the programmatic interface for retrieving Oracle E-Business Suite menu structures, menu entries, and the functions they reference. It is the data-access layer behind the CRM Foundation (JTF) menu infrastructure, which supports the rendering of navigable menus for users based on their responsibility assignments. Rather than requiring callers to join FND_MENUS, FND_MENU_ENTRIES, and FND_FORM_FUNCTIONS directly, the package exposes strongly typed records and PL/SQL table types that encapsulate the hierarchy of root menus, submenus, and function-level entries.
The package header defines several record types, including menu_responsibility, root_menu_data, and the comprehensive menu_data record, which captures submenu identifiers, prompts, function identifiers, web host and agent attributes, encrypt/secure flags, icons, and descriptive text. These types allow calling code to consume menu data in a structured, portable form. The package is classified as a PUB API, indicating it is intended for external consumption by other Oracle components and customer extensions.
Key Procedures and Functions
The package exposes fourteen documented procedures and functions. The root menu functions — GET_ROOT_MENU, GET_ROOT_MENU_TL, GET_EXCLUDED_ROOT_MENU_TL, and GET_ROOT_MENU_NAME_TL — retrieve top-level menu definitions. The _TL variants return translated (language-specific) values from the underlying translated tables, while the non-TL variants return the base definitions.
GET_EXCLUDED_ROOT_MENU_TL, the object of the user's search, specifically returns root menus that are to be excluded from a given navigational context, with prompts and names localized to the session language. GET_EXCL_ENTIRE_MENU_TREE_TL complements this by returning the full set of excluded menus across the entire hierarchy.
GET_MENU_ENTRIES, GET_MENU_ENTRIES_TL, and GET_EXCLUDED_MENU_ENTRIES_TL return the individual entries within a menu, again distinguishing translated and excluded variants. GET_FUNC_ENTRIES returns function-level entries associated with a menu. The name-resolution functions — GET_FUNCTION_NAME, GET_FUNCTION_NAME_TL, GET_MENU_NAME, and GET_MENU_NAME_TL — accept identifying keys and return the corresponding translated or base name of a function or menu.
Tables Accessed
The package reads through APPS synonyms against the standard FND menu and function tables. FND_MENUS and FND_MENUS_TL supply root and submenu definitions and their translations. FND_MENU_ENTRIES and FND_MENU_ENTRIES_TL provide the entries that compose each menu, including prompts and descriptions. FND_FORM_FUNCTIONS and FND_FORM_FUNCTIONS_TL supply the function definitions referenced by menu entries, including the web host, agent, HTML call, encryption, and security attributes visible in the menu_data record. FND_RESPONSIBILITY and FND_RESPONSIBILITY_TL, together with FND_RESP_FUNCTIONS, are used to resolve which menus and functions are exposed to a given responsibility. DUAL supports scalar lookups, and PLITBLM is the standard PL/SQL table type used for list-based parameters.
Usage Notes
JTF_MENU_PUB is typically invoked from Forms-based CRM applications, JSP/HTML menu-rendering components, and custom PL/SQL code that needs a responsibility-aware view of the menu hierarchy. It is not a concurrent program itself, but may be called by concurrent processes that publish or audit menu structures. The documented metadata indicates it is referenced by two other packages, confirming its role as a shared utility. Developers extending menus or building custom navigation should call the _TL variants to respect session-language translation, and should use the excluded-menu functions when implementing security-trimmed or context-filtered navigation trees.