Некоторые сущности Timetta поддерживают пользовательские (кастомные) поля.
Это позволяет администраторам расширять стандартную модель данных без изменения структуры системы.
Если сущность поддерживает кастомизацию, это указано в её описании через признак Customizable.
Кастомные поля настраиваются администраторами в интерфейсе системы.
Для каждого поля задаются:
После создания такие поля сразу становятся частью API соответствующей сущности и доступны наравне со стандартными свойствами.
Отдельной публикации или синхронизации не требуется.
Timetta поддерживает ограниченный набор слотов для пользовательских данных.
Поддерживаются следующие типы:
| Тип | Количество |
|---|---|
| Строка | 15 |
Число (decimal) |
5 |
Целое число (int) |
5 |
| Дата | 5 |
Логическое значение (bool) |
5 |
Справочник (DirectoryEntry) |
15 |
Пользователь (User) |
5 |
Множественный справочник (DirectorySetEntry) |
1 |
Каждое кастомное поле привязывается к одному из этих технических свойств.
Для работы с кастомными полями необходимо использовать Data Field Name, указанный в карточке настройки кастомного поля.
Именно это имя используется в API.
Например, если в настройке поля указано:
Data Field Name: StringValue3
то чтение:
GET https://api.timetta.com/odata/Projects?$select=id,name,StringValue3
И обновление:
PATCH https://api.timetta.com/odata/Projects('45eb27e2-161e-4eeb-9b56-72eaea30511d')
Content-Type: application/json
{
"StringValue3": "Высокий приоритет"
}
Некоторые кастомные поля являются ссылочными.
Например:
LookupValueXIdUserValueXIdОни работают по тем же правилам, что и обычные навигационные свойства:
$expand.Пример:
GET https://api.timetta.com/odata/Projects?$select=id,name,LookupValue1Id&$expand=LookupValue1($select=id,name)
Перейти на русскую версию?