Configuration
Breadcrumbs

Template Menus

In Anjana Data, menus are top-level blocks within the dynamic forms of metadata templates. Their main purpose is to group and classify the information of an object (entity or relationship) into different sections, allowing metadata to be organized in a clear and navigable way.

Each menu contains at least one section, which represents the second level of classification and in which the specific attributes of the object are defined.

In this way, menus and sections structure metadata into two hierarchical levels:

  • Level 1 – Menu: Main categories that appear in the object form (example: DETAIL, DATA QUALITY, EXTENDED GOVERNANCE).

  • Level 2 – Section: Subsections within each menu that group related attributes (example: within the DETAIL menu, sections such as FUNCTIONAL, GOVERNANCE, SECURITY AND DATA PROTECTION and TECHNICAL).

Thanks to this hierarchical organization, users can easily navigate the Data Portal forms, locate relevant information and maintain consistency in asset documentation.

image-20250911-104153.png
Example of a Menu along with its description in the DATASET template

Menus are configured in the Menus table of the Configuration Panel. Defining menus is the first step in creating the metadata templates for entities and relationships in the metamodel.

image-20250902-165929.png
Menus table for adding new menus to an entity or relationship template

Structure of the Menus table

Each menu is characterized by the following fields:

  • Id: unique identifier of the menu.

    • Automatically assigned from the Configuration Panel.

  • Name: display name of the menu within the template.

    • When configuring multiple languages, the Name value itself should be used as the translation key in the translations table, creating one record per language.

  • Description: description of the menu. This description (or its translation value) is visible in the metadata template and helps understand the content of the menu.

    • It can also be internationalized by using the Description value as config_key in translations.

  • order: display order of the menu within the template of the same subType (1, 2, 3, …).

  • subType: object subtype to which the menu belongs.

    • Corresponds to a value from the Object Sub-types table resulting from the concatenation of the Id and the name (e.g., 1-DATASET, 2-DATASET_FIELD, 3-DSA).

Notes

  • If the Name/Description text has no translation in translations, the text specified in these fields will be displayed.

  • The order is only compared between menus of the same subType.

  • The same subType must have at least one menu and can have unlimited menus (e.g., DETAIL, GOVERNANCE, QUALITY, SECURITY).

Important:

The ADHERENCE relationship requires a menu as it contains metadata corresponding to user adherences to DSAs.

Adding a Menu in the Menus table

Adding a new menu involves adding a new record to the Menus table.

image-20250902-171600.png
Example of adding a new menu to the DATASET template

To add the record and register a new menu:

  1. Click the New button in the top-right corner. This will open a wizard with the fields defined in the Structure of the Menus table section.

  2. Fill in the role fields according to the structure described in the previous section.

    • Name : With the name or its translation key (e.g., DETAIL)

    • Description : With the description or its translation key (e.g., DETAIL OF DATASET)

    • order: With the position the menu being created will occupy relative to the other menus to be configured for that entity or relationship (e.g., 1)

    • subType: Select the entity or relationship subtype for which the menu is defined (select the subtype, e.g., 1-DATASET)

  3. Click Save to save or Cancel to discard.

Note: After adding menus, it is necessary to run the Clear cache action from the Configuration Panel (Actions > Clear cache) for the changes to be applied and become visible in the Data Portal.

Modifying a Menu in the Menus table

Modifying a record in the Menus table must be done with caution, as it can have different levels of impact depending on the field affected.

  • Modification of the Name or Description fields must be done with caution:

    • If internationalization has not been configured, the texts can be modified without impact.

    • If internationalization has been configured, modifying these texts has an impact on the corresponding records in translations (same config_key as Name/Description). In this case, consider whether it is sufficient to modify only the translation value (value) or whether the key (config_key) also needs to be updated.

  • Modifying the order field can be done without any impact other than its repositioning within the object template.

  • Modifying the subType can have a high impact, as it directly affects the entire object template.

    • If no governed assets exist in the Data Portal, modification is possible but implies the following:

      • All configuration dependent on the menu (sections and attributes of each section) is transferred to the newly selected subType.

      • Before the modification, validations on the attributes belonging to the subtype template must be deleted (table templateAttributeValidations).

      • Before the modification, versioning rules on the attributes belonging to the subtype template must be deleted (table Edition Configuration).

      • Before the modification, attribute relationships on the attributes belonging to the subtype template must be deleted (table Attribute Relationship).

    • If governed assets exist in the Data Portal, the modification cannot be performed.

Note: After modifying menus, it is necessary to run the Clear cache action from the Configuration Panel (Actions > Clear cache) for the changes to be applied and become visible in the Data Portal.


Configuring Menus via direct database access (Developer view)

The database (DB) table that contains the parameterization of metadata template menus is anjana.menu and has the following structure.

Column

Data type

Constraints / Notes

id_menu

int4 (INTEGER)

PRIMARY KEY. Unique identifier of the menu. Managed through sequences.

description

varchar(255)

Optional. Description of the menu. Can be used as a translation key in translations.

name

varchar(255)

Name of the menu. Must be unique within the same id_object_subtype (UNIQUE constraint). Can be used as a translation key in translations.

order_menu

int4 (INTEGER)

Display order of menus within the same object subtype. Combined UNIQUE constraint with id_object_subtype.

id_object_subtype

int4 (INTEGER)

Foreign key to anjana.object_subtype(id_object_subtype). Defines which entity or relationship the menu belongs to.

Below is an example script to configure the DETAIL menu for DATASET:

SQL
INSERT INTO anjana.sections
(id_section, description, id_menu, "name", order_section)
VALUES(1, 'FUNCIONAL INFORMATION OF DATASET', 1, 'FUNCIONAL', 1);

Important:

  • Once the insert has been executed, run the sequence update for the table. (From the Configuration Panel at Actions > Reset DQ sequences you can update the sequences for all tables, including this one).

  • The entire responsibility for the configuration logic falls on the developer executing SQL queries directly against the tables. It is strongly recommended to carefully review the Table Structure section.