Платформа 3V/Справочник/Задание атрибутов в справочнике: различия между версиями
< Платформа 3V | Справочник
Перейти к навигации
Перейти к поиску
м (A.kazanceva переименовал страницу Платформа 3V/Справочник/2. Задание атрибутов в справочнике в Платформа 3V/Справочник/Задание атрибутов в справочнике) |
|||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
− | + | Структура JSON атрибута справочника: | |
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! "attributes": [...] | ||
+ | |- | ||
+ | | <syntaxhighlight lang="JSON" line> | ||
+ | { | ||
+ | "id": 1, | ||
+ | "name": "...", | ||
+ | "code": "...", | ||
+ | "description": "", | ||
+ | "dataType": "...", | ||
+ | "type": "...", | ||
+ | "isNullable": false, | ||
+ | "hasMultipleValues": false, | ||
+ | "isVisible": false, | ||
+ | "isReadOnly": true, | ||
+ | "formula": null, | ||
+ | "tableName": "", | ||
+ | "identIndex": { | ||
+ | "code": null, | ||
+ | "isUnique": false, | ||
+ | "dbIndexName": null, | ||
+ | "fields": [], | ||
+ | "isNew": true | ||
+ | }, | ||
+ | "referenceIndex": { | ||
+ | "code": null, | ||
+ | "isUnique": false, | ||
+ | "dbIndexName": null, | ||
+ | "fields": [], | ||
+ | "isNew": true | ||
+ | }, | ||
+ | "attributeLink": null, | ||
+ | "defaultValue": null, | ||
+ | "defaultValueExpression": null, | ||
+ | "userAttributePermissions": null, | ||
+ | "component": null | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |} | ||
+ | |||
+ | == Описание свойств атрибута == | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Свойство !! Описание | ||
+ | |- | ||
+ | | id || Уникальный идентификатор атрибута справочника (базовые атрибуты имеют идентификаторы от 1 до 4, нумерация дополнительных атрибутов начинается с 20) | ||
+ | |- | ||
+ | | name || Наименование атрибута, которое будет по умолчанию отображаться у атрибута | ||
+ | |- | ||
+ | | code || Код атрибута в таблице в базе данных | ||
+ | |- | ||
+ | | description || описание хранимых данных атрибута | ||
+ | |- | ||
+ | | dataType || тип данных (список доступных типов данных см. ниже) | ||
+ | |- | ||
+ | | type || тип атрибута (список доступных типов атрибутов см. ниже) | ||
+ | |- | ||
+ | | isNullable || флаг о возможности пустого значения | ||
+ | |- | ||
+ | | hasMultipleValues || для атрибутов в типом данных "Связанный" флаг на возможность множественной отметки | ||
+ | |- | ||
+ | | isVisible || флаг о видимости атрибута | ||
+ | |- | ||
+ | | isReadOnly || флаг о возможности только чтения или редактирования атрибута | ||
+ | |- | ||
+ | | formula || формула расчета для [[Платформа_3V/Справочник/Вычислимые атрибуты|'''вычислимых атрибутов''']] | ||
+ | |- | ||
+ | | tableName || Физическое имя связанной таблицы для множественного атрибута | ||
+ | |- | ||
+ | | attributeLink || блок свойств предназначенных для указания [[Платформа 3V/Справочник/Изменение типа атрибута на связанный|'''связи между двумя справочниками''']] | ||
+ | |- | ||
+ | | attributeLink.name || наименование связанного справочника | ||
+ | |- | ||
+ | | attributeLink.linkedDictionaryId || идентификатор связанного справочника | ||
+ | |- | ||
+ | | attributeLink.linkedAttributeId || в связанном справочнике идентификатор атрибута, по которому необходимо связать данные | ||
+ | |- | ||
+ | | attributeLink.linkedAttributeNameId || в связанном справочнике идентификатор атрибута, значения которого необходимо отобразить в текущем справочнике | ||
+ | |- | ||
+ | | attributeLink.canSelect || связь атрибутов, по которой будет происходить [[Платформа_3V/Отчет/Блокировка_для_выбора_элементов_в_выпадающих_списках|'''блокировка элементов в столбцах отчета''']] | ||
+ | |- | ||
+ | | defaultValue || [[Платформа_3V/Отчет/Установка_значения_по_умолчанию|'''постоянное значение атрибута по умолчанию''']] | ||
+ | |- | ||
+ | | defaultValueExpression || [[Платформа_3V/Отчет/Установка_значения_по_умолчанию|'''значение атрибута по умолчанию на основании выражения''']] | ||
+ | |- | ||
+ | | component || наименование компонента (веб), который должен использоваться для работы с данными. Например, используется для [[Платформа_3V/Отчет/Логический атрибут в 3х состояниях (True/False/null)|'''отображения в отчетах логических атрибутов в трех возможных состояниях (True/False/null)''']] | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | Базовыми атрибутами справочника является: | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Наименование атрибута (name) !! Идентификатор (id) !! Код (code) !! Тип атрибута (type) !! Тип данных (dataType) | ||
+ | |- | ||
+ | | Идентификатор || 1 || ID || Id || Integer/String/DateTime/Guid | ||
+ | |- | ||
+ | | Наименование || 2 || NAME || Name || String | ||
+ | |- | ||
+ | | Порядок || 3 || ORD || Ord || Integer | ||
+ | |- | ||
+ | | Родитель || 4 || PARENT_ID || ParentId || Integer/String/DateTime/Guid | ||
+ | |} | ||
+ | |||
+ | Типы данных: | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Тип данных (dataType) !! Описание | ||
+ | |- | ||
+ | | Boolean || Логическое значение (да/нет) | ||
+ | |- | ||
+ | | Clob || Двоичные данные | ||
+ | |- | ||
+ | | DateTime || Дата и время | ||
+ | |- | ||
+ | | Double || Вещественное число | ||
+ | |- | ||
+ | | Integer|| Целое число (32 разряда) | ||
+ | |- | ||
+ | | Guid || Гарантированный уникальный идентификатор | ||
+ | |- | ||
+ | | Json || Данные в формате JSON | ||
+ | |- | ||
+ | | Long || Целое число (64 разряда) | ||
+ | |- | ||
+ | | String || Строка | ||
+ | |} | ||
+ | |||
+ | '''NB!''' Поддержка атрибутов типа DateTime, String и guid в качестве первичного ключа справочника - идентификатора поддерживается только чтения, без изменения элементов. Если в справочнике есть атрибут с типом "родитель", то ему необходимо обязательно указывать тип данных такой же как у идентификатора! |
Текущая версия на 10:35, 13 сентября 2021
Структура JSON атрибута справочника:
"attributes": [...] |
---|
1 {
2 "id": 1,
3 "name": "...",
4 "code": "...",
5 "description": "",
6 "dataType": "...",
7 "type": "...",
8 "isNullable": false,
9 "hasMultipleValues": false,
10 "isVisible": false,
11 "isReadOnly": true,
12 "formula": null,
13 "tableName": "",
14 "identIndex": {
15 "code": null,
16 "isUnique": false,
17 "dbIndexName": null,
18 "fields": [],
19 "isNew": true
20 },
21 "referenceIndex": {
22 "code": null,
23 "isUnique": false,
24 "dbIndexName": null,
25 "fields": [],
26 "isNew": true
27 },
28 "attributeLink": null,
29 "defaultValue": null,
30 "defaultValueExpression": null,
31 "userAttributePermissions": null,
32 "component": null
33 }
|
Описание свойств атрибута
Свойство | Описание |
---|---|
id | Уникальный идентификатор атрибута справочника (базовые атрибуты имеют идентификаторы от 1 до 4, нумерация дополнительных атрибутов начинается с 20) |
name | Наименование атрибута, которое будет по умолчанию отображаться у атрибута |
code | Код атрибута в таблице в базе данных |
description | описание хранимых данных атрибута |
dataType | тип данных (список доступных типов данных см. ниже) |
type | тип атрибута (список доступных типов атрибутов см. ниже) |
isNullable | флаг о возможности пустого значения |
hasMultipleValues | для атрибутов в типом данных "Связанный" флаг на возможность множественной отметки |
isVisible | флаг о видимости атрибута |
isReadOnly | флаг о возможности только чтения или редактирования атрибута |
formula | формула расчета для вычислимых атрибутов |
tableName | Физическое имя связанной таблицы для множественного атрибута |
attributeLink | блок свойств предназначенных для указания связи между двумя справочниками |
attributeLink.name | наименование связанного справочника |
attributeLink.linkedDictionaryId | идентификатор связанного справочника |
attributeLink.linkedAttributeId | в связанном справочнике идентификатор атрибута, по которому необходимо связать данные |
attributeLink.linkedAttributeNameId | в связанном справочнике идентификатор атрибута, значения которого необходимо отобразить в текущем справочнике |
attributeLink.canSelect | связь атрибутов, по которой будет происходить блокировка элементов в столбцах отчета |
defaultValue | постоянное значение атрибута по умолчанию |
defaultValueExpression | значение атрибута по умолчанию на основании выражения |
component | наименование компонента (веб), который должен использоваться для работы с данными. Например, используется для отображения в отчетах логических атрибутов в трех возможных состояниях (True/False/null) |
Базовыми атрибутами справочника является:
Наименование атрибута (name) | Идентификатор (id) | Код (code) | Тип атрибута (type) | Тип данных (dataType) |
---|---|---|---|---|
Идентификатор | 1 | ID | Id | Integer/String/DateTime/Guid |
Наименование | 2 | NAME | Name | String |
Порядок | 3 | ORD | Ord | Integer |
Родитель | 4 | PARENT_ID | ParentId | Integer/String/DateTime/Guid |
Типы данных:
Тип данных (dataType) | Описание |
---|---|
Boolean | Логическое значение (да/нет) |
Clob | Двоичные данные |
DateTime | Дата и время |
Double | Вещественное число |
Integer | Целое число (32 разряда) |
Guid | Гарантированный уникальный идентификатор |
Json | Данные в формате JSON |
Long | Целое число (64 разряда) |
String | Строка |
NB! Поддержка атрибутов типа DateTime, String и guid в качестве первичного ключа справочника - идентификатора поддерживается только чтения, без изменения элементов. Если в справочнике есть атрибут с типом "родитель", то ему необходимо обязательно указывать тип данных такой же как у идентификатора!