> ## Documentation Index
> Fetch the complete documentation index at: https://docs.superoffice.com/llms.txt
> Use this file to discover all available pages before exploring further.

# screen_definition table

> A configurable screen

## screen\_definition Table (370)

A configurable screen

## Fields

| Name                          | Description                                                                                               | Type                            | Nullable |
| ----------------------------- | --------------------------------------------------------------------------------------------------------- | ------------------------------- | :------: |
| id                            | Primary key                                                                                               | PK                              |    No    |
| name                          | A field for entering the name of this entry                                                               | String(255)                     |    No    |
| id\_string                    | A field for an id\_string which may be used to access the screen                                          | String(255)                     |    No    |
| hierarchy\_id                 | The screen definition is inside this hierarchy folder                                                     | FK [hierarchy](./hierarchy.mdx) |    No    |
| screen\_key                   | This field holds the authentication key if used                                                           | String(255)                     |    No    |
| layout\_model                 | An enum for which layout model this screen is using.                                                      | layout\_model                   |    Yes   |
| load\_script\_body            | The ejscript to execute the first time this screen is loaded, e.g. for form loading                       | Clob                            |    Yes   |
| load\_post\_cgi\_script\_body | The ejscript to execute after setFromCgi, e.g. when the page is submitted                                 | Clob                            |    Yes   |
| load\_final\_script\_body     | The ejscript to execute just before the page is printed, after button/action scripts have been run        | Clob                            |    Yes   |
| creation\_script              | The script used at the top of all other creation scripts on this page                                     | Clob                            |    Yes   |
| warn\_on\_navigate            | Decides if user will get a warning if he accidentally navigates away from unsaved changes for this screen | Bool                            |    No    |
| description                   | Optional description of what this screen is used for                                                      | String(2047)                    |    Yes   |
| autosave                      | Whether this screen uses autosave or not                                                                  | Bool                            |    Yes   |

<img src="https://mintcdn.com/superofficeas/8-OIGQQJR0VGDXy_/media/loc/en/database/tables/screen_definition.png?fit=max&auto=format&n=8-OIGQQJR0VGDXy_&q=85&s=2c01e40ba9a412e3636c0aa02eed9299" alt="screen_definition table relationship diagram" width="1169" height="1009" data-path="media/loc/en/database/tables/screen_definition.png" />

## Indexes

| Fields        | Types | Description |
| ------------- | ----- | ----------- |
| hierarchy\_id | FK    | Index       |

## Relationships

| Table                                                        | Description                                                               |
| ------------------------------------------------------------ | ------------------------------------------------------------------------- |
| [hierarchy](./hierarchy)                                     | This table contains folders used to group the extra tables in the system. |
| [screen\_definition\_action](./screen-definition-action)     | An action to perform for a certain button in an screen                    |
| [screen\_definition\_element](./screen-definition-element)   | An element in a configurable screen                                       |
| [screen\_definition\_hidden](./screen-definition-hidden)     | The name of a hidden variable to keep for this screen                     |
| [screen\_definition\_language](./screen-definition-language) | Custom language variables used for screens                                |

## Replication Flags

* None

## Security Flags

* No access control via user's Role.


## Related topics

- [screen_definition_hidden table](/en/database/tables/screen-definition-hidden.md)
- [screen_definition_language table](/en/database/tables/screen-definition-language.md)
- [screen_definition_element table](/en/database/tables/screen-definition-element.md)
- [screen_definition_action table](/en/database/tables/screen-definition-action.md)
- [Delete Hierarchy From Path](/en/api/reference/restful/agent/list_agent/delete-hierarchy-from-path.md)
- [SuperOffice.WebApi.Data.Domain](/en/api/reference/webapi/SuperOffice.WebApi.Data.Domain.md)
