Member Junction
    Preparing search index...

    Class RowLevelSecurityFilterInfo

    Defines data access rules that filter records based on user context, implementing fine-grained security at the row level.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    __mj_CreatedAt: Date = null

    Timestamp when the filter was created

    __mj_UpdatedAt: Date = null

    Timestamp when the filter was last updated

    Description: string = null

    Description of the row level security filter

    FilterText: string = null

    SQL WHERE clause template that filters records based on user context variables

    ID: string = null

    Unique identifier for the row level security filter

    Name: string = null

    Name of the row level security filter

    PlatformVariants: string = null

    JSON column containing platform-specific SQL variants for the FilterText. Stores alternative filter SQL for platforms other than the default.

    Methods

    • Copies initialization data from a plain object to the class instance. Only copies properties that already exist on the class to prevent creating new fields. Special handling for DefaultValue fields to extract actual values from SQL Server syntax.

      Parameters

      • initData: any

        The initialization data object

      Returns void

    • Replaces user-specific tokens in the filter text with actual user values. Tokens are in the format {{UserFieldName}} where FieldName is any property of the UserInfo object.

      Parameters

      • user: UserInfo

        The user whose properties will be substituted into the filter text

      Returns string

      The filter text with all user tokens replaced with actual values

    • Default JSON serialization for BaseInfo subclasses.

      Emits all non-underscored direct field declarations. For _-prefixed private backing fields (the MJ pattern for collection storage — e.g. _Fields, _RelatedEntities, _OrganicKeys), emits the value of the corresponding same-named public getter instead. Purely computed getters without a backing field (display-name formatters, derived flags) are intentionally skipped — they can throw when source fields are null and don't belong on the wire anyway.

      Nested BaseInfo instances and arrays of them unwrap automatically via JSON.stringify's native toJSON() protocol.

      Subclasses may override to emit a filtered subset or custom shape (see EntityFieldValueInfo).

      Returns Record<string, unknown>