Skip to content

clsMenuSecurity

Owns one item-to-group assignment row.

Purpose

  • Persist the security-group name assigned to a menu item.
  • Provide assignment rows later joined during authorization.

Context

  • Namespace: SAIF.Business.Menu
  • Assembly/package: SAIF.Business.Menu.dll

Public members

Member Signature Purpose
MenuSecuritySeqNum Public Property MenuSecuritySeqNum() As Decimal Surrogate primary key of the MENU_SECURITY row, generated from MENU_SECURITY_SEQ and used to target update/delete statements.
MenuItemSeqNum Public Property MenuItemSeqNum() As Decimal Foreign key linking the security-group assignment to its owning MENU_ITEM row.
SecurityGroup Public Property SecurityGroup() As String Name of the security group this row grants access to; joined case-insensitively against user memberships to authorize a menu item (BR-MENU-003).
UpdateDate Public Property UpdateDate() As Date Records the timestamp of the row's last save, used for audit purposes.
UpdateUser Public Property UpdateUser() As String Identifies the user who last saved the row, recorded for audit purposes on each write.
IsValid Public Overrides ReadOnly Property IsValid() As Boolean Overrides clsBusinessBase.IsValid. AddBusinessRules() for this type contains only commented-out template placeholders, so no local Rules-engine field-level validation exists; the confirmed behavior is inherited from clsBusinessBase.*
IsDirty Public Overrides ReadOnly Property IsDirty() As Boolean Reports whether any of the security-assignment row's own property values have changed since load, overriding the inherited clsBusinessBase.IsDirty.
Equals Public Overloads Shared Function Equals(ByVal objA As Object, ByVal objB As Object) As Boolean Compares business-object identity using this type's key semantics.
Equals Public Overloads Overrides Function Equals(ByVal inObject As Object) As Boolean Compares business-object identity using this type's key semantics.
Equals Public Overloads Function Equals(ByVal inObject As clsMenuSecurity) As Boolean Compares business-object identity using this type's key semantics.
GetHashCode Public Overrides Function GetHashCode() As Integer Returns a hash based on the type's business identity semantics.
ToString Public Overrides Function ToString() As String Returns the type's string representation for diagnostics or UI binding.
NewMenuSecurity Public Shared Function NewMenuSecurity(ByVal inDataportal As IDataPortalInfo, ByVal inMenuItemSeqNum As Decimal) As clsMenuSecurity Creates a new typed object using the supplied data-portal context.
GetMenuSecurity Public Shared Function GetMenuSecurity(ByVal inDataportal As IDataPortalInfo, ByVal inMenuSecuritySeqNum As Decimal) As clsMenuSecurity Retrieves the single MENU_SECURITY row identified by the surrogate key inMenuSecuritySeqNum, populating the assigned SecurityGroup name and its owning MenuItemSeqNum.

Behavioral notes

Constraints and usage notes

  • Stores free-text group names.

Inherited public members

No dependency-resolution.json was produced for this run, so the members below are a best-effort inference from typical SAIF BOF framework (clsBusinessBase) patterns observed elsewhere in this codebase, not a Legends CLI-sourced dependency lookup.**

From clsBusinessBase (SAIF.BOF.Framework)**

Member Signature Purpose Origin
Save Public Overridable Function Save() As Boolean Routes the object through the inherited data-portal lifecycle to persist it when dirty and valid.** clsBusinessBase
Delete Public Overridable Sub Delete() Marks the object for deletion and, on Save(), routes it through BeforeDelete/AfterDelete.** clsBusinessBase
AddErrorMessage Protected Sub AddErrorMessage(ByVal inKey As String, ByVal inMessage As String) Records a named validation/error message consulted by the inherited IsValid implementation.** clsBusinessBase
MarkOld Protected Sub MarkOld() Clears the object's dirty flag after a successful load or save.** clsBusinessBase
MarkNew Protected Sub MarkNew() Marks a freshly constructed object as new/dirty so Save() treats it as an insert candidate.** clsBusinessBase

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

  • SAIF.Business.Menu\clsMenuSecurity.vb