...
| Поле или метод | Тип | Описание |
|---|---|---|
| item.ContentTypeId | Guid | ID типа элемента |
| item.InsertDate | Дата/время | Дата/время создания элемента |
| item.UpdateDate | Дата/время | Дата/время обновления элемента |
| item.GetValueAsDateTime("название поля") | Дата/время | Получить значение поля типа "дата" |
| item.GetValueAsString("название поля") | Строка | Получить значение поля типа "однострочный текст"/"многострочный текст" |
| item.GetValueAsBool("название поля") | Флаг | Получить значение поля типа "флаг" |
| item.GetValueAsInt("название поля") | Целое число | Получить значение поля типа "целое число" |
| item.GetLookupId("название поля") | Guid | Получить значение поля типа "ссылка на элемент списка" |
| item.GetValueAsLookupIdList("название поля") | [Guid] | Получить значения поля типа "ссылка на элемент списка" с флагом "Множественный выбор из списка" |
| item.GetValueAsGuid("название поля") | Guid | Получить значение поля типа "Guid" (например, поле "source") |
| item.InsertUser.Id | Guid | Guid пользователя создавшего элемент |
| item.UpdateUser.Id | Guid | Guid пользователя изменившего элемент |
Операторы сравнения
| Оператор | Описание | Пример |
|---|---|---|
| == | Равно | item.GetValueAsString("email") == "test@vitrocad.ru" |
| != | Не равно | item.ContentTypeId != Guid("99c92e22-4e60-48c0-ab70-add500e71a45") |
| > | Больше | item => item.InsertDate > DateTime(2024, 10, 1, 10, 0, 0) |
| >= | Больше или равно | item => item.InsertDate >= DateTime(2024, 10, 1, 10, 0, 0) |
| < | Меньше | item => item.InsertDate < DateTime(2024, 10, 1, 10, 0, 0) |
| <= | Меньше или равно | item => item.InsertDate <= DateTime(2024, 10, 1, 10, 0, 0) |
...
- Найти в подразделении пользователя с указанным именем.
URL: /api/item/GetList/c0857f66-fbfa-448f-a35d-afac00a3a9cb
Тело запроса: {"query": "item => item.ContentTypeId = Guid(\"99c92e22-4e60-48c0-ab70-add500e71a45\") && item.GetValueAsString(\"name\") == \"admin\""}c0857f66-fbfa-448f-a35d-afac00a3a9cb - ID подразделения пользователя
Обратите внимание: GetList ищет только тех пользователей, которые находятся непосредственно в самом подразделении. Если требуется искать по всей структуре подразделения, то нужно вместо GetList использовать GetRecursive
Найти во всем списке пользователей пользователя с указанным Email.
URL: /api/item/GetRecursive/e3a94bde-0ca9-456f-b338-4465d40389ee
Тело запроса: {"query": "item => item.ContentTypeId = Guid(\"99c92e22-4e60-48c0-ab70-add500e71a45\") && item.GetValueAsString(\"email\") == \"admin@email.test\""}e3a94bde-0ca9-456f-b338-4465d40389ee - ID списка "Пользователи"
99c92e22-4e60-48c0-ab70-add500e71a45 - это ID типа контента пользователейВ списке "Файлы" найти элемент по имени в заданной папке.
URL: /api/item/GetList/202b3ffa-48b9-4040-a7db-f8d688166f51
Тело запроса: {"query": "item => item.GetValueAsString(\"name\") == \"Test 002-0.1.pdf\""}202b3ffa-48b9-4040-a7db-f8d688166f51 - ID папки
Обратите внимание: GetList ищет только те элементы, которые лежат непосредственно в указанной папке. Если требуется искать во вложенных папках, то нужно вместо GetList использовать GetRecursive
- В списке "Файлы" найти элементы, у которых имя заканчивается на ".pdf".
URL: /api/item/GetList/202b3ffa-48b9-4040-a7db-f8d688166f51
{"query": "item => item.GetValueAsString(\"name\").EndsWith(\".pdf\")"} В списке "Файлы" найти все элементы, у которых атрибут "Статус документа" = "Размещено".
URL: /api/item/GetRecursive/966e62c5-a803-49a0-a1be-e680d130c481
Тело запроса: {"query": "item => item.GetLookupId(\"document_status\") == Guid(\"b9d061b1-7ce7-4756-8230-e502cfe3d8d8\")"}966e62c5-a803-49a0-a1be-e680d130c481 - ID списка "Файлы"
b9d061b1-7ce7-4756-8230-e502cfe3d8d8 - ID статуса "Размещено"Вместо ID списка "Файлы" можно передать ID папки (ID папки проекта, например). В этом случае поиск будет проводится внутри заданной папки
- В списке "Файлы" найти все элементы, у которых атрибут "Статус документа" = "Размещено" или "На входном контроле".
URL: /api/item/GetRecursive/966e62c5-a803-49a0-a1be-e680d130c481
Тело запроса: {"query": "item => new Guid[] { Guid(\"b9d061b1-7ce7-4756-8230-e502cfe3d8d8\"), Guid(\"5cd0640c-1e57-4e09-b0ec-babfb5c72680\") }.Contains(item.GetLookupId(\"document_status\"))"} - В списке "Файлы" найти элементы, у которых значение поля "Трудозатраты этап 2" больше 1.
URL: /api/item/GetRecursive/966e62c5-a803-49a0-a1be-e680d130c481
Тело запроса: {"query": "item => item.GetValueAsInt(\"duration_plan_stage_2\") > 1"} - В списке "Файлы" найти элементы по дате создания >= 01.10.2024 10:00:00.
URL: /api/item/GetRecursive/966e62c5-a803-49a0-a1be-e680d130c481
Тело запроса: {"query": "item => item.InsertDate >= DateTime(2024, 10, 1, 10, 0, 0)"}
Обратите внимание: время передается в UTC - Нужно выводить только пользователей (не подразделения и не группы):
item => item.ContentTypeId = Guid("99c92e22-4e60-48c0-ab70-add500e71a45")
Здесь99c92e22-4e60-48c0-ab70-add500e71a45- это ID типа элемента "Пользователь" - Получить список элементов, у которых поле "Заблокирован" пустое (null) или Ложь (false):
URL: /api/item/GetRecursive/966e62c5-a803-49a0-a1be-e680d130c481
Тело запроса: {"query": "item => item.GetValueAsBool(\"disabled\") == null || item.GetValueAsBool(\"disabled\") == false"}