Skip to content

clsMenuAuthorizedItem

A read-only, denormalized row from the per-user authorization projection — one menu item as seen by a specific user, combining MENU_ITEM, MENU_PAGE, MENU_CATEGORY_CODE, and BUSONLINE_APPS_CODE data with flags indicating whether the item is a favorite and/or unsecured (BR-MENU-002 – BR-MENU-006). Every persistence-related Criteria SQL property throws ApplicationException, so instances exist only as query results, never as objects a caller creates, updates, or deletes (BR-MENU-007).

Purpose

  • Presents one authorized-item row to the presentation layer for menu rendering and page-authorization checks, with no create/retrieve-by-key/update/delete of its own (BR-MENU-007).
  • Carries both the favorite flag and the unsecured flag so callers can distinguish genuinely group-granted items from unsecured or favorited ones (BR-MENU-026).
  • Falls back to the page's own name when no favorite-specific name was stored (BR-MENU-023).

Context

  • Namespace: SAIF.Business.Menu
  • Assembly/package: SAIF.Business.Menu (SAIF.BOF.Presentation.Web.Infragistics111 NuGet package)

Public members

Member Signature Purpose
MenuItemSeqNum ReadOnly Property MenuItemSeqNum As Decimal Identifies the underlying clsMenuItem this row represents.
MenuUser ReadOnly Property MenuUser As String The account this authorized-item row was resolved for; UNSECURED is treated as matching any user by Contains (BR-MENU-025).
MenuUserEmplid ReadOnly Property MenuUserEmplid As String Employee ID of the resolved user, carried through from the favorite or security-user row.
MenuOrder ReadOnly Property MenuOrder As Decimal Display order; meaningful for favorite rows, sourced from MENU_FAVORITE.MENU_ORDER_NUM (BR-MENU-005).
IsFavorite ReadOnly Property IsFavorite As Boolean True when this row was produced by the favorites branch of the authorization query (BR-MENU-005).
MenuCategoryCode ReadOnly Property MenuCategoryCode As String Category code the underlying item belongs to; matched case-insensitively by AppItemsByCategory (BR-MENU-027).
MenuCategory ReadOnly Property MenuCategory As String Display description of the item's category.
IsVisible ReadOnly Property IsVisible As Boolean Visibility flag; hidden items are excluded from visible-only lookups (BR-MENU-010).
ToolTip ReadOnly Property ToolTip As String Tooltip text for this item's placement.
MenuPageSeqNum ReadOnly Property MenuPageSeqNum As Decimal Identifies the underlying clsMenuPage.
PageName ReadOnly Property PageName As String Display name of the underlying page.
FavoriteName ReadOnly Property FavoriteName As String Favorite-specific label, when one was stored.
FavoritePageName ReadOnly Property FavoritePageName As String Effective favorite label: FavoriteName if set, otherwise PageName (BR-MENU-023).
PageLink ReadOnly Property PageLink As String The page URL matched by FindPage/Item/ItemByCategory, normalized per BR-MENU-009.
ApplicationCode ReadOnly Property ApplicationCode As String Code of the owning application.
ApplicationPath ReadOnly Property ApplicationPath As String Virtual-directory path of the owning application, as used by DumpAllMenuItemsToString.
IsDisplaySavePreferences ReadOnly Property IsDisplaySavePreferences As Boolean Toolbar flag copied from the underlying page (BR-MENU-019).
IsDisplayPrint ReadOnly Property IsDisplayPrint As Boolean Toolbar flag copied from the underlying page (BR-MENU-019).
IsDisplayDownload ReadOnly Property IsDisplayDownload As Boolean Toolbar flag copied from the underlying page (BR-MENU-019).
IsDisplayHelp ReadOnly Property IsDisplayHelp As Boolean Toolbar flag copied from the underlying page (BR-MENU-019).
IsDisplaySave ReadOnly Property IsDisplaySave As Boolean Toolbar flag copied from the underlying page (BR-MENU-019).
IsDisplayInsert ReadOnly Property IsDisplayInsert As Boolean Toolbar flag copied from the underlying page (BR-MENU-019).
IsDisplayDelete ReadOnly Property IsDisplayDelete As Boolean Toolbar flag copied from the underlying page (BR-MENU-019).
PrintToolTip ReadOnly Property PrintToolTip As String Tooltip text for the print control, copied from the underlying page.
DownloadToolTip ReadOnly Property DownloadToolTip As String Tooltip text for the download control, copied from the underlying page.
SaveToolTip ReadOnly Property SaveToolTip As String Tooltip text for the save control, copied from the underlying page.
DeleteToolTip ReadOnly Property DeleteToolTip As String Tooltip text for the delete control, copied from the underlying page.
InsertToolTip ReadOnly Property InsertToolTip As String Tooltip text for the insert control, copied from the underlying page.
IsUnsecured ReadOnly Property IsUnsecured As Boolean True when this row was produced by the unsecured-item branch of the authorization query — the item has no MENU_SECURITY rows at all (BR-MENU-004, BR-MENU-026).

Inherited public members

Members in this section are inherited from clsBusinessBase in SAIF.Framework.Core (delivered by the SAIF.BOF.Framework package). They are available on this type through inheritance.

Member Signature Purpose Origin
Rules ReadOnly Property Rules As clsRulesManager Exposes the object's rule manager, used to register and evaluate validation rules.† SAIF.Framework.Core — clsBusinessBase
BeginEdit Sub BeginEdit() Begins an editable transaction on the object, snapshotting current state for a later cancel.† SAIF.Framework.Core — clsBusinessBase
CancelEdit Sub CancelEdit() Reverts the object to the state captured by the most recent BeginEdit.† SAIF.Framework.Core — clsBusinessBase
ApplyEdit Sub ApplyEdit() Commits the in-progress edit, discarding the BeginEdit snapshot.† SAIF.Framework.Core — clsBusinessBase
SetPreviousLink Sub SetPreviousLink(item As ILinkItem) Sets the previous node in a doubly linked list of business objects.† SAIF.Framework.Core — clsBusinessBase
SetNextLink Sub SetNextLink(item As ILinkItem) Sets the next node in a doubly linked list of business objects.† SAIF.Framework.Core — clsBusinessBase
InsertLinkAfter Sub InsertLinkAfter(item As ILinkItem) Inserts the given item immediately after this object in a linked sequence.† SAIF.Framework.Core — clsBusinessBase

Behavioral notes

  • All five IBusinessCriteria SQL properties (CreateSQL, RetrieveSQL, RetrieveAllSQL, UpdateSQL, DeleteSQL) throw ApplicationException(BOC.Messages.InvalidSQLProperty), so the inherited Save/Delete lifecycle from clsBusinessBase cannot be exercised on this type (BR-MENU-007).

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with † were retrieved from dependency library documentation via the Legends CLI RAG service. They describe inherited behavior from the indicated origin library and should be verified if the dependency version changes.

Sources

  • SAIF.Business.Menu/clsMenuAuthorizedItem.vb