Skip to content
Logo

Extra options

Abris has many additional features that can be used to develop a more convenient interface.

Display Filtering

There are times when it is required to show not all the data, but part of it, depending on some condition.Such queries are not related to the structure of the Database, but are used only for the convenience of users.In order not to use filtering constantly, but to use the desired filter by default, you can use this function.

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"hardFilter": [{"levelup": false, "operand": {"field": "a", "path": ["a"], "op": "b", "value": [" c ", ...]}}, ...]}

The levelup field always contains false.The value "true" is used for more complex queries containing additional conditions for fields, and is mainly intended for internal use.

The field "field" contains the name of the field by which filtering is performed.

The "path" field contains a value if several tables were used to create the entity.For simple queries, this field contains a value similar to the value in the "field" field.

The "op" field contains the operation to be performed.The values ​​in this field can be:

  • "EQ" is equal to;

  • "NEQ" is not equal;

  • "G" is more;

  • "F" - a function call with a name corresponding to the value in the "field" field;

  • "FC" is a special parameter for internal use.This manual is not used;

  • "EQF" - compares the value from the field "field" with the value from the field "value";

  • "FEQ" is a special parameter for internal use.This manual is not used;

  • "L" is less;

  • "GEQ" is greater than or equal to;

  • "LEQ" is less than or equal to;

  • "C" - substring occurrence;

  • "ISN" is 0;

  • "ISNN" is not equal to 0.

The "value" field contains the value at which the condition (operation) will be executed.

  1. Instead of a, b, and c, enter:

  2. instead of “a” - the name of the field (not the title) by which to filter;

  3. instead of “b”, an operation upon fulfillment of which filtering will be carried out;

  4. instead of "c", the value that the operation will use as the border.

  5. If there are several conditions for filtering, you can list them with a comma inside the "hardFilter" element.

  6. If there are several values ​​that will be used by the operation for filtering, then they can be listed with a comma inside the "value" element.

  7. Click "Save."

After the update, the changes will take effect.

Default Sort Setting

This function allows you to automatically sort by one or more fields.

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"order": [{"field": "a", "desc": "b"}, ...]}

The field "field" contains the name of the field by which sorting is performed.

The "desc" field contains the value "false" in the case of sorting from the smallest to the largest, and "true" in the opposite case.

  1. Instead of "a" and "b" enter the values.

  2. If there are several conditions for sorting, then they can be listed with a comma inside the "order" element.

  3. Click "Save."

After the update, the changes will take effect.

Select multiple records

By default, this function does not work, but when using buttons in list forms (see the "Buttons" section of the "In the list" section), you may need to select several entries.To do this, you must:

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"multiSelect": true}
  1. Click "Save."

You can select an entry by clicking on the mark located to the left of each line.

Auto reload page

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"reload_interval": ms}

Instead of "ms" it is necessary to specify the number-interval (in milliseconds) with which the page will be updated.

  1. Click "Save."

Hiding empty fields

Unfilled data fields can be hidden when viewing.By default, all fields are displayed.

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"hideEmptyFields": true}
  1. Click "Save."

Tree setup (segment #treedetailed).

There are cases when, in essence, there is no explicit foreign key, or several of them.Then for the tree it is necessary to explicitly indicate which field contains the parent keys and which fields are the left and right keys.In this case, it is required:

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"parent_property": "parent_key", "left_key_property": "b", "right_key_property": "c",}
  • Instead of "a", you must specify a field containing the parent keys.

  • Instead of "b" and "c" indicate the names of the fields containing the left and right keys, respectively.

You can specify not all parameters, but only some of them.

  1. Click "Save."

Analysis Resolution

In Abris, the "Analysis" function is available in the "Context Menu", which allows statistical calculations for table fields.It can be hidden from users or allowed.

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"pivotEnable": a}

Instead of "a", you must specify the value "true" or "false" in order to enable or disable the display of the element, respectively.

  1. Click "Save."

By default, the Analysis item is false.

Report Resolution

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"reportEnable": a}

Instead of "a", you must specify the value "true" or "false" in order to enable or disable the display of the element, respectively.

  1. Click "Save."

By default, the Report item is false.

Set the number of articles per page

For the "articles" data type, it is possible to set the number of simultaneously displayed articles.

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

    {"articlePageSize": a}

Instead of "a", you must specify the number of articles displayed.

  1. Click "Save."

Adding an icon to a tree

For tree elements, you can set icons.

  1. In the tree in which the elements will have icons, you need to add an additional column of text format (see p. Adding columns to the table .

  2. In the created column for the necessary elements, it is necessary to place the names of the icons, choosing the ones suitable on the Font Awesome website.For example, "fa-address-book".

  3. Go to "Contextual Actions" ---> "Settings ...".

  4. In the "Advanced Settings" field, enter the following:

    {"icon_property": "a"}

Instead of "a", you must specify the name of the field in which the names of the icons are stored.

  1. Click "Save."

Setting the display template for the detailed form

To display the detailed form, there are several templates that differ in a set of properties, buttons and the general principle of operation.

In order to specify the required template for display, you must:

  1. You must select the desired entity and go to "Context Actions" ---> "Settings ...".

  2. In the "Advanced Settings" field, enter the following:

       {"detailView": "a"}

Instead of "a" specify one of the display templates:

  • detail (used by default);

  • element;

  • dmsdetail.

  • Click "Save."

After updating the page, the changes will take effect and the detailed form of the table entries will open in accordance with the specified template.

Customizing RadioButton Buttons

Adding a RadioButton widget to the detailed form

  1. Go to the settings of the entity for which you want to add this widget.

  2. Add a column that will be the selected value or key of the radio button.

  3. As the type of column display, select the type "RadioButton Group".

  4. The type of column in the database must match the type of selectable values ​​in the group.

  5. Save the parameters of the added column and proceed to configure additional parameters of the corresponding projection.

Configuring Advanced Projection Options to Display RadioButton Button Groups

The parameter name (eg "radio-test_radio") is formed from the radio prefix and the column name for the corresponding widget (eg test_radio) Usage examples 1. Get values ​​from the source-value column in the source-table table.Save the value {"radio-test_radio": {"source-table": "test_kv", "source-value": "test_value"}} in the test_radio field 2. Select values ​​from a specific class.{"radio-test_radio": {"source-table": "test_kv", "source-value": "test_value", "source-class-key": "test_class", // name of the value class column "source- class ":" weekdays "// value}} 3. Save the key in the test_radio field instead of the value {" radio-test_radio ": {" source-table ":" test_kv "," source-key ":" test_key "," source -value ":" test_value "}} 4. Get values ​​from a predefined set {" radio-test_radio ": {" source-items ": [" Mon "," Tue "," Wed "," Thu "," Fri "," Sat "," Sun "]}} 4.1.Use values ​​from the source-items set, but save the index of the selected item (1, 2, 3 ...) {"radio-test_radio": {"source-items": ["Mon", "Tue", "Wed "," Thu "," Fri "," Sat "," Sun "]," use-enumeration ":" true "}} 5. Get values ​​from the dictionary {key, value} {" radio-test_radio ": {" source-dictionary ": [{" key ":" 100 "," value ":" A Hundred "}, {" key ":" 1000 "," value ":" A Thousand "}, {" key ":" 1000000 "," value ":" A Million "}]}} 6. Add an option to return the value to null {" radio-test_radio ": {" source-table ":" test_kv "," source-value ":" test_value "," null-option ":" not specified "// description of the option to reset to null}}

aggregate - function in development

join_field_distinct - function in development