---
title: clsMenuAuthorizedItem
summary: API reference for clsMenuAuthorizedItem.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-08-17
library: SAIF.Business.Menu
reference_type: package
---

# 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](../../business-rules.md#br-menu-002-group-granted-authorization) – [BR-MENU-006](../../business-rules.md#br-menu-006-inactive-favorites-excluded)). 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](../../business-rules.md#br-menu-007-authorized-items-are-read-only)).

## 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](../../business-rules.md#br-menu-007-authorized-items-are-read-only)).
- 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](../../business-rules.md#br-menu-026-secured-application-items-exclusion)).
- Falls back to the page's own name when no favorite-specific name was stored ([BR-MENU-023](../../business-rules.md#br-menu-023-favorite-name-fallback)).

## 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](../../business-rules.md#br-menu-025-unsecured-pseudo-user-membership)). |
| 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](../../business-rules.md#br-menu-005-favorites-appear-in-the-authorized-set)). |
| IsFavorite | `ReadOnly Property IsFavorite As Boolean` | True when this row was produced by the favorites branch of the authorization query ([BR-MENU-005](../../business-rules.md#br-menu-005-favorites-appear-in-the-authorized-set)). |
| MenuCategoryCode | `ReadOnly Property MenuCategoryCode As String` | Category code the underlying item belongs to; matched case-insensitively by `AppItemsByCategory` ([BR-MENU-027](../../business-rules.md#br-menu-027-category-filtering-safety)). |
| 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](../../business-rules.md#br-menu-010-visible-only-lookups)). |
| 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](../../business-rules.md#br-menu-023-favorite-name-fallback)). |
| PageLink | `ReadOnly Property PageLink As String` | The page URL matched by `FindPage`/`Item`/`ItemByCategory`, normalized per [BR-MENU-009](../../business-rules.md#br-menu-009-page-link-normalization). |
| 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](../../business-rules.md#br-menu-019-yn-boolean-flag-storage)). |
| IsDisplayPrint | `ReadOnly Property IsDisplayPrint As Boolean` | Toolbar flag copied from the underlying page ([BR-MENU-019](../../business-rules.md#br-menu-019-yn-boolean-flag-storage)). |
| IsDisplayDownload | `ReadOnly Property IsDisplayDownload As Boolean` | Toolbar flag copied from the underlying page ([BR-MENU-019](../../business-rules.md#br-menu-019-yn-boolean-flag-storage)). |
| IsDisplayHelp | `ReadOnly Property IsDisplayHelp As Boolean` | Toolbar flag copied from the underlying page ([BR-MENU-019](../../business-rules.md#br-menu-019-yn-boolean-flag-storage)). |
| IsDisplaySave | `ReadOnly Property IsDisplaySave As Boolean` | Toolbar flag copied from the underlying page ([BR-MENU-019](../../business-rules.md#br-menu-019-yn-boolean-flag-storage)). |
| IsDisplayInsert | `ReadOnly Property IsDisplayInsert As Boolean` | Toolbar flag copied from the underlying page ([BR-MENU-019](../../business-rules.md#br-menu-019-yn-boolean-flag-storage)). |
| IsDisplayDelete | `ReadOnly Property IsDisplayDelete As Boolean` | Toolbar flag copied from the underlying page ([BR-MENU-019](../../business-rules.md#br-menu-019-yn-boolean-flag-storage)). |
| 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](../../business-rules.md#br-menu-004-unsecured-items-open-to-all), [BR-MENU-026](../../business-rules.md#br-menu-026-secured-application-items-exclusion)). |

## 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](../../business-rules.md#br-menu-007-authorized-items-are-read-only)).

## Related documentation
- [Index](../../index.md)
- [Overview](../../overview.md)
- [Architecture](../../architecture.md)
- [Operations and processes](../../operations-processes.md)
- [Business rules](../../business-rules.md)
- [Database tables](../../database-tables.md)
- [API reference](../index.md)

> **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
