A "menu" represents a menu tab and sub-menus in the ]po[ application. Also the [report list page] is built using menu items associated with reports.
The decision for a dynamic data-structure for menus was based on the need for extending the menu structure using add-on packages. For example, a human resources modules may want to add a new sub-menu "Employees" in the "Users" main menu to show information about this specific kind of user.
You can create new menu items and set permissions for existing menus in the menu maintenance screen.
CREATE TABLE im_menus ( menu_id integer constraint im_menu_id_pk primary key constraint im_menu_id_fk references acs_objects, -- the name that should appear on the tab package_name varchar(200) not null, name varchar(200) not null, url varchar(200) not null, sort_order integer, -- parent_id allows for tree view for navbars parent_menu_id integer constraint im_parent_menu_id_fk references im_menus, -- Make sure there are no two identical -- menus on the same _level_. constraint im_menus_name_un unique(name, parent_menu_id) );