If true, allows querying all rows without pagination limits via API
Global flag controlling whether records can be created via API
Global flag controlling whether records can be deleted via API
Whether records in this entity can be merged together
Global flag controlling whether records can be updated via API
Whether users can search this entity through the search API
Whether to audit when users access records from this entity
Whether to audit when views are run against this entity
The underlying database table name this entity maps to
The database view used as a "wrapper" for accessing this entity's data
Whether the base view is generated by CodeGen (true) or manually created (false)
Whether to automatically delete related records when a parent is deleted
CodeName is a unique name that can be used for various programatic purposes, singular version of the entity name but modified from entity name in some cases to remove whitespace and prefix with _ in the event that the entity name begins with a number or other non-alpha character
If true, uses a custom resolver for GraphQL operations instead of standard CRUD
Type of delete operation: Hard (physical delete) or Soft (mark as deleted)
Detailed description of the entity's purpose and contents
Optional display name for the entity. If not provided, the entity Name will be used for display purposes.
Import statement for the entity's TypeScript subclass
Name of the TypeScript subclass for this entity if custom behavior is needed
Name of the SQL Server full-text catalog used for searching
Whether the full-text catalog is generated by CodeGen
Name of the full-text index on this entity
Whether the full-text index is generated by CodeGen
Whether full-text search is enabled for this entity
Name of the function used for full-text searching
Whether the full-text search function is generated by CodeGen
Unique identifier for the entity
CSS class or icon identifier for displaying this entity in the UI
Whether this entity is available through the GraphQL API
Unique name of the entity used throughout the system
Optional suffix appended to entity names for display purposes
Reserved for future use - parent entity for hierarchical relationships
Field name that contains the preferred communication method (email, phone, etc.)
Default display type for relationships: Search (type-ahead) or Dropdown
Database schema that contains this entity's table and view
Whether to track all changes to records in the RecordChange table
Whether the user form for this entity is generated by CodeGen
Maximum number of rows to return in user views to prevent performance issues
If true, this is a virtual entity not backed by a physical database table
Private _Private _Private _Private _Date and time when this entity was created
Date and time when this entity was last updated
Name of the stored procedure for creating records
Whether the create stored procedure is generated by CodeGen
Name of the stored procedure for deleting records
Whether the delete stored procedure is generated by CodeGen
Name of the stored procedure used for matching/duplicate detection
Name of the stored procedure for updating records
Whether the update stored procedure is generated by CodeGen
Private Static __createdPrivate Static __deletedPrivate Static __updatedThe BaseTable but with spaces inbetween capital letters
Returns the DisplayName if it exists, otherwise returns the Name.
Returns an array of all fields that are configured for encryption. These fields will be automatically encrypted at rest and decrypted on load.
Array of encrypted fields
Gets all fields for this entity with their complete metadata.
Array of all entity fields
Returns the primary key field for the entity. For entities with a composite primary key, use the PrimaryKeys property which returns all. In the case of a composite primary key, the PrimaryKey property will return the first field in the sequence of the primary key fields.
Returns an array of all fields that are foreign keys to other entities.
Array of foreign key fields
Returns the EntityField object for the Field that has IsNameField set to true. If multiple fields have IsNameField on, the function will return the first field (by sequence) that matches. If no fields match, if there is a field called "Name", that is returned. If there is no field called "Name", null is returned.
Gets the security permissions for this entity by role.
Array of permission settings
Returns an array of all fields that are part of the primary key for the entity. If the entity has a single primary key, the array will have a single element.
Gets all relationships where other entities reference this entity.
Array of entity relationships
Gets custom configuration settings for this entity.
Array of entity-specific settings
Returns an array of all fields that have unique constraints on them.
Array of fields with unique constraints
Static CreatedReturns the name of the special reserved field that is used to store the CreatedAt timestamp across all of MJ. This is only used when an entity has TrackRecordChanges turned on
Static DeletedReturns the name of the special reserved field that is used to store the DeletedAt timestamp across all of MJ. This is only used when an entity has DeleteType=Soft
Static UpdatedReturns the name of the special reserved field that is used to store the UpdatedAt timestamp across all of MJ. This is only used when an entity has TrackRecordChanges turned on
Returns the Permissions for this entity for a given user, based on the roles the user is part of
Returns RLS security info attributes for a given user and permission type
Generates a where clause for SQL filtering for a given entity for a given user and permission type. If there is no RLS for a given entity or the user is exempt from RLS for the entity, a blank string is returned.
Determines if a given user, for a given permission type, is exempt from RowLevelSecurity or not
Protected copyCopies 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.
The initialization data object
Private prepareStatic AssertThis static factory method is used to check to see if the entity in question is active or not If it is not active, it will throw an exception or log a warning depending on the status of the entity being either Deprecated or Disabled.
the EntityInfo object to check the status of
the name of the caller that is calling this method, used for logging purposes such as BaseEntity::constructor as an example.
Static BuildBuilds a simple javascript object that will pre-populate a new record in the related entity with values that link back to the specified record. This is useful, for example, when creating a new contact from an account, we want to pre-populate the account ID in the new contact record
Static BuildReturns a RunViewParams object that is setup to filter the related entity for the provided record
Optional filter: stringOptional maxRecords: number
Catalog of all entities across all schemas. Contains comprehensive metadata about each entity including its database mappings, security settings, and UI preferences.