Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
The table structure of REM repeats the table structure with tables and columns. Instead of columns, REM uses Attributes (sys_re_attribute). You can connect REM attributes with a table within the Model (sys_re_model). You can also create attribute collections as universal sets of attributes that can be used in several models at the same time.
Use the Record Extended Model (REM) menu category to access tables related to REM.
REM concept
Every table has its own data model specified by the business logic. The data model is represented by the column set. This data model can be extended with a child table containing the same column set as the parent one, and individual attributes inaccessible from the parent table. For example, the diagram below shows that all column columns of the User table are inherited by the Employee table:
Attributes extension circuit diagram
When few child tables are available, and the column overlap is high, this data model works fine. But when the number of child tables increases, and the column overlap decreases, the management of this data model becomes a challenge. The data model with a large and complicated table inheritance structure has some disadvantages:
- It requires more space for record storage.
- The speed of script execution decreases.
- It is difficult to configure the functionality related to the specific table, such as data import, layout setting, etc.
The Template Service Catalog is an example of such a table. It consists of a parent table for the catalog and a table record of each request template with specific attributes.
The Record Extended Model (REM) concept addresses the issue described above. The extension concept can be applied to a specific table record, by assigning additional attributes to it.
When a record extension model is applied to a record, it means that an auxiliary record set is created for this record containing information about specific attribute values. Therefore, the record has attributes inherited from a table, and in addition, it has attributes sourced from the extension model.
Configure an extension model
To configure your extension model, you need to:
- Create an extension model.
- Create attributes and link them to the model.
- (optional) Configure the attribute collection.
- (optional) Configure a model client script.
In the diagram below, you can see the difference between models and collections. Models are created with a specific attribute set that can only be used in this model. Collections contain attributes that can be applied to different models.
Note |
---|
It is not recommended to create collections with many attributes. It is better to create one collection several collections with one attribute. This approach provides flexibility in model configuration. |
Create a model
To create a model, complete the steps below:
- Navigate to Record Extended Model (REM) → Models.
- Click New and fill in the fields.
- Click Save or Save and exit to apply the changes.
Record extended model form fields
Field | Mandatory | Description | ||
---|---|---|---|---|
Title | +Y | Specify the model title that сan be specified in any language. | ||
Table | +Y | Reference to the table affected by the model.
| ||
Description | -N | Type a description for the model. | ||
After insert script | -N | Specify a script that should be executed after a record is created. Develop it using JavaScript extended by the SimpleOne SimpleRecord Server-Side methods. | ||
Active | -N | Select the checkbox to activate the model. | ||
Icon | -N | Add an icon to identify the model. | ||
Related Lists | ||||
Attributes | A list of the attributes linked to this model. | |||
Model Form Elements | A list of the form elements linked to this model. | |||
Used Collections | A list of applied collections. | |||
Model Client Scripts | A list of the model client scripts linked to this model. |
Note |
---|
|
Configure an attribute
In SimpleOne, you can create attribute mapping for models and collections. Data mapping is the process of connecting a data field from one table to a data field in another table. It reduces the potential for errors, helps standardize your data, and makes it easier to understand your data because it establishes direct relationships among your data across multiple tables at once.
To create an attribute, complete the steps below:
- Navigate to Record Extended Model (REM) → Attributes.
- Click New and fill in the fields.
- Click Save or Save and exit to apply the changes.
Attribute form fields
Field | Mandatory | Description | |||||||
---|---|---|---|---|---|---|---|---|---|
Container | +Y | Specify a previously created model. | |||||||
Attribute type | +Y | Specify the attribute type. | |||||||
Title | +Y | Specify the attribute title. You can use Latin, Cyrillic letters, [0..9] numbers, and the underscore symbol ( _ ). The Title field can be translated to other languages. | |||||||
Attribute name | +Y | Attribute system name. This field is populated automatically. Latin letters, [0..9] numbers, and the underscore symbol ( _ ) are allowed. The field is read-only after the record is saved. | |||||||
Map to column | -N | Specify the target field to map the attribute value before the record is inserted (including business rules of the before type). This option allows you to quickly transfer attribute values to fields. You can select columns of the table defined in the model record and columns of its child tables.
The following message appears if there is no target column in the table:
| |||||||
Comments | -N | Add some comments to describe the attribute. | |||||||
Active | -N | Select the checkbox to activate the attribute. | |||||||
Read only | -N | Select the checkbox to make the field added with this attribute read-only. | |||||||
Mandatory | -N | Select the checkbox to make the field added with this attribute mandatory. | |||||||
Type Specification tab | |||||||||
Dependent on column | +Y | Specify a reference column with a reference to of the Table (sys_db_table). The column should have the table_id name and reference to the Table dictionary to build conditions. The field appears when one of the following options is selected in the Attribute type field:
| |||||||
Maximum length | -N | Specify a maximum value length for the attribute value. The value length cannot exceed the allowed length for the specified data type. The field appears when one of the following options is selected in the Attribute type field:
| |||||||
Choice table | -N | Specify a table that stores the choice options. The field appears when the Choice option is selected in the Attribute type field. | |||||||
Choice field | +Y | Select a column of the Choice table field that contains choice options. The field appears when the Choice table field is populated. | |||||||
Choice type | +Y | Define whether the None option is applicable for the field. Available options:
The field appears when the Choice option is selected in the Attribute type field. | |||||||
Extra attributes | -N | Specify additional configurations for the field. For example, enter the text below to apply the radio buttons style to the choice field:
The field appears when one of the following options is selected in the Attribute type field:
| |||||||
Reference | +Y | Specify a table with the values you need. The field appears when the List or Reference option is selected in the Attribute type field. | |||||||
On delete | -N | Select the action to take when the referenced recordis deleted. Available options:
The field appears when the Reference option is selected in the Attribute type field. | |||||||
Default Value tab | |||||||||
Default value | -N | Specify the default value that will be populated to the field when creating a record. The field is mandatory when the Choice type is Dropdown without --None-- (specify a default value). | |||||||
Use dynamic default | -N | Select the checkbox if you need to generate the default value dynamically. | |||||||
Dynamic default | +Y | This field only appears when the Use dynamic default checkbox is selected. Select the script from the Dynamic Default Values (sys_default_value_dynamic) table, so its execution result will be automatically calculated and entered into this field; this value will be the default value for the column specified.
| |||||||
Reference Qualifier | |||||||||
Reference qualifier type | -N | Specify the type of the reference qualifier. Available options:
The field appears when the List, Reference or Field Name option is selected in the Attribute type field. | |||||||
Reference qualifier condition | -N | Configure filters using the condition builder. The field appears when the Simple option is selected in the Reference qualifier type field. | |||||||
Dynamic reference qualifier | -N | Select the dynamic reference qualifier from the list. The field appears when the Dynamic option is selected in the Reference qualifier type field. | |||||||
Reference qualifier fixed | -N | Select the checkbox to fix filters in breadcrumbs. This functionality blocks the use of the condition builder functionality. The field appears when one of the following options is selected in the Attribute type field:
|
Configure an attribute collection
Attribute collections are implemented to use Many-to-Many Relationships, so they allow you to reuse the same attributes across models instead of adding them separately to each model.
Note |
---|
It is not recommended to create collections with many attributes. It is better to create several collections with one attribute. This approach provides flexibility in model configuration. |
To use it, To use it, complete the following steps:
- Create a collection record as described below.
- Fill it with previously created attributes or create new ones using the Attributes related list.
- Relate this collection with previously created models using the Used in Models related list.
After that, all the attributes contained in this collection are used by all models this collection relates to.
Info |
---|
|
To create a collection, complete the steps below:
- Navigate to Record Extended Model (REM) → Collections.
- Click New and fill in the fields.
- Click Save or Save and exit to apply the changes.
Collection form fields
Field | Mandatory | Description |
---|---|---|
Title | +Y | Specify the collection title. |
Active | -N | Select the checkbox to activate the collection. |
Table | -N | Specify the table to which the collection is related. |
Related Lists | ||
Attributes | Create an attribute related to this collection or select an existing one from the table. | |
Form Elements | Create a form element related to this collection or select an existing one from the table. | |
Used in Models | Create a model related to this collection or select an existing one from the table. | |
Client Scripts | Create a model client script related to this collection or select an existing one from the table. |
Note |
---|
|
Configure a model client script
To create a record extended model client script, complete the steps below:
- Navigate to Record Extended Model (REM)→ Model Client Scripts.
- Click New and fill in the fields.
- Click Save or Save and exit to apply the changes.
Model Client Script form fields
Field | Mandatory | Description |
---|---|---|
Name | +Y | Define the client script name. |
Container | +Y | Reference to the model or collection. |
Type | +Y | Specify the script type. Available options:
|
Attribute | +Y | Specify a prevously created model attribute. This field is mandatory when the onChange script type is chosen. |
Description | -N | Add a description of the client script. |
Active | -N | Select the checkbox to activate the script. |
Order | -N | Specify the client script execution order. Scripts are executed in ascending order. |
Script | -N | Specify the client script. |
Configure model or collection form elements
You can arrange the fields of your model or collection attributes in a particular order and position, as you can do with form layouts.
Info |
---|
You can configure the position of the collection from the Model Form Elements related list of the Model form. But the position of the attributes within the collection must be configured from the Model Form Elements related list of the Collection form. |
Group attributes by common features and give them a title. In the screenshot below, custom model attributes are divided into two columns:
Tip |
---|
If you need to define a title for a group of attributes organized in one block, use the Begin element. The title will appear on the relevant page of the Self-Service Portal. |
To change the order of the displayed attributes, perform the following steps:
- Navigate to Record Extended Model (REM) → Models. or Record Extended Model (REM) → Collections, depending on what you need to configure.
- Open the model/collection Open the model you need.
- In the Related Lists area, select the Model Form Elements tab.
Arrange the attributes by changing the value in the Position field. The attributes are displayed on the form in the ascending order.
Tip Use the inline editing: double-click the cell in the Position column, enter the value, and press Enter to save the changes.
To configure a model layoutadd new elements to the model/collection layout (such as splits), perform the following steps: Anchor add split elements add split elements
- Navigate to Record Extended Model (REM) → Modelsto Record Extended Model (REM) → Models or Record Extended Model (REM) → Collections, depending on what you need to configure.
- Open the model/collection you need.
- In the Related Lists area, select the Model Form Elements tab.
- Click New and fill in the fields.
- Click Save or Save and exit to add the element.
Model Form Element form fields
Field | Mandatory | Description | ||
---|---|---|---|---|
Container | +Y | Specify a previously created model/collection. If the element is created from the related list, the field is populated automatically. | ||
Position | +Y | Define the order in which of the element will be on the form. The elements are displayed on a the form in the ascending order. | ||
Block element | +Y | Specify the type of the splitterelement. Available options:
| ||
Block title | -N | Specify the title of the group of fields. The title will be is displayed above the attributes group on the relevant page of the Self-Service Portal.
|
Table of Contents | ||||
---|---|---|---|---|
|