Skip to content

Entities

What is an entity and why is it important?

Section titled “What is an entity and why is it important?”

An Entity is the main data structure DatAscend revolts around, you can see Entities as tables in a database, or collections in a noSQL database, or an excel table for the non technicals.

Entities can have:

  • Properties - To hold information, like name or description
  • Relations - To point to other records from another Entities, like items assigned to a category in an inventory system
  • Translations - Currently supporting English and Spanish label translations to both Properties and Relations
  • Permissions - A set of permissions per role to indicate what can be done to this entity by those roles
  • Configurations - Entity specific configurations to describe some behaviors like which fields to be used to list the entitie’s records across the system

How to access the entity creation section?

Section titled “How to access the entity creation section?”
  1. The place to create, edit or generally manipulate Entities is the Studio. To enter it you can simply click the Studio navigation item on the header of the page.

    Note:

    • You need to be assigned to an Administrator role in order to see or even access the Studio
    • If you are on the welcome page, you can also click the Studio card
Dashboard image with the Studio header navigation item hovered
  1. Once on the Studio click on the litle button with the document plus icon, and select Add Entity
Studio image with the create new entity dropdown expanded
  1. You will see the following modal, where you need to provide Name and Label where the Name will be the unique name for this entity, and the label its the friendly readable name for users

Notes:

  • Name and Label cannot be edited once the entity is created
  • The Name is automatically scaped to a system safe text
Studio image with the create new entity modal visible showing name and label fields
  1. In the next step you will see the Attributes table, where the default id will be added to your new entity. Here you can click the + Add Attribute to add new fields to your entity, you can start modeling your data capture requirements here, description, photos, numbers, you name it, we have several field types for you to pick. Click Continue to create a new entity

Note: Similar to the Name field on the previous step, the Attribute text gets automatically sanitized to a safe string

Studio image with the create new entity modal visible showing the attributes table, with the columns: attribute, label, type, required, indexable, editable
  1. Once your Entity is created you will be able to edit it further, configuring all of the other fields properties, adding relations to other entities and any other configurations like permissions and translations
Studio image with two entities related, showing the details drawer in the attributes tab, with the attributes and relations visible
  1. Clicking the dropdown button at the end of each attribute row will display further actions on the attribute, click the “Configure Atribute” to see all available configurations
Studio image with the details drawer, clicking the dropdown button on an attribute to see actions on it
  1. You will see the following modal with all of the options you can configure for the field:
Studio image with the configure attribute modal open, showing all of the available options
  • Name: The name of the field, automatically sanitized to a safe text
  • Label: The human friendly name of the field
  • Type: The select field holding the type of this field

  • Indexable: Logical toggle to indicate if this field needs to be indexed, usually true if you use it for references to other entities or you are going to regularly query records by this field
  • Searchable: If the field can be used in filters
  • Unique: If the value of this fields should be unique across all records
  • Readonly: If the field cannot be edited by users
  • Importable: If data imports can assign values to this field
  • Required: If the field must have a value to create a record for this Entity
  • Audited: If its stored on audit changes
  • Reportable: If it can be used in reports queries
  • Visible: If it can at all be visualized by users in the system

  • Default value: The value this field should have by default when initially creating a new record
  • Regular Expressión (Regex): This is a more developer facing configuration, its based on the Regex syntax to indicate a pattern the string value should match, used most commonly to validate emails or indicate invalid characters
  • Options: You can specify options for a field by clicking the ”+” button, it will show an entry with Label and Value properties to add options, use it to specify a limited set of values, for example a field “color” might only have 3 possible values “Red, Green, Blue”, here is where you specify them

  • Help text: Text used to provide some information about this field, to direct users on how to interact with it, will be displayed under the field when creating records
  • Comments: More information for the field, but it will not be visible right away, will be in a (i) icon, and the text will be visible when the user hovers it
  • Group: Used to group fields on the record editor view, usually specifies some text to logically separate fields in sections, fields will be grouped based on the value of this configuration

  • Precision: Used to specify the step numeric fields will give when increment or decrement
  • Size: To indicate the width a field will occupy on the record editor
  • Length: The max length the provided value can have
  1. After clicking Save on this modal, the changes will be staged on the field but unsaved on the entity, you will need to click the Save button on the details drawer to get them saved on the Entity

Translations allow entity labels and properties to be visible in different languages. To configure them:

  1. In the entity details drawer, select the Translations tab.
  2. Select the desired language (e.g., English or Spanish).
  3. Provide translations for the entity’s attributes and relations.
  4. Click Save to apply the changes.
Image of the translations tab

To configure the permissions of an entity, follow these steps:

  1. In the entity details drawer, select the Permissions tab.
  2. You will see a table with available roles and permitted actions (create, read, update, delete).
  3. Check or uncheck the boxes according to the permissions you want to assign to each role.
  4. Click Save to apply the changes.
Image of the permissions tab

To configure the properties that will appear in dropdown lists:

  1. In the entity details drawer, select the Configurations tab.
  2. Locate the Show as option with the fields section.
  3. Select the properties you want to include in dropdown lists.
  4. Click Save to apply the changes.
Image of the dropdown properties configuration
  • Description: Create an entity Product with attributes like Name, Description, Price, and Category.
  • Configuration: Add relations between Product and Category to organize products.
  • Best Practice: Use validations to ensure the price is a positive number.
Image of the inventory management use case
  • Description: Create an entity Project with attributes like Project Name, Start Date, End Date, and Status.
  • Configuration: Add relations between Project and Tasks to manage related activities.
  • Best Practice: Use date fields to validate start and end dates, ensuring the end date is later than the start date.
Image of the project management use case

Relations configuration has its own set of complexity, so we will cover it on the next page.