---
title: "SQL-029: Retrieve security users by MenuUser"
summary: Retrieves MENU_SECURITY_USER records filtered by MENU_USER.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business.Menu
reference_type: package
---

# SQL-029: Retrieve security users by MenuUser

Retrieves menu security user records from `MENU_SECURITY_USER` for a specific user. Note: the DB analysis documents that `BeforeRetrieve` does not issue an `AddParm("MenuUser", ...)` call in this branch despite the SQL containing a `:MenuUser` bind variable — a source-level anomaly.

## Classification

| Field | Value |
| --- | --- |
| **SQL ID** | SQL-029 |
| **Operation type** | Read |
| **Execution method** | Inline SQL |
| **Database** | Oracle |
| **Schema** | `[unqualified]**` |
| **Command type** | Text |
| **Business object** | `clsMenuSecurityUserCollection` |
| **Criteria property** | `retrieveForUserSQL` |
| **Lifecycle method** | `BeforeRetrieve` (MenuUser > String.Empty) / `AfterRetrieve` |

## Parameters

No `AddParm` calls detected in the active branch despite the SQL's `:MenuUser` bind variable.*

## Tables

| Table | Access | Columns used |
| --- | --- | --- |
| [MENU_SECURITY_USER](../database-tables.md#menu-security-user) | SELECT | `MENU_SECURITY_USER_SEQ_NUM`, `SECURITY_GROUP_TXT`, `MENU_USER`, `MENU_USER_ID` |

## Sample SQL

```sql
Select MENU_SECURITY_USER.MENU_SECURITY_USER_SEQ_NUM as MenuSecurityUserSeq,
       MENU_SECURITY_USER.SECURITY_GROUP_TXT as SecurityGroupTxt,
       MENU_SECURITY_USER.MENU_USER as MenuUser,
       MENU_SECURITY_USER.MENU_USER_ID as MenuUserID
From MENU_SECURITY_USER
WHERE MENU_USER = :MenuUser
```


> **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 `**` could not be confirmed; treat as unknown until verified.

## Sources
- `Business\SAIF.Business.Menu\clsMenuSecurityUserCollection.vb`
