tasks.task.list
Scope: task Права на выполнение: для всех
Описание
Возвращает массив задач, каждая из которых содержит массив полей. В отличие от task.item.list параметры в запросе tasks.task.list можно указывать в любом порядке, а также можно не указывать ненужные параметры.
Для получения данных по всем задачам пользователь должен обладать админскими правами. Руководитель подразделения получит доступ только к задачам в своей ветке иерархии.
Также можно получить задачи в "Избранном", установив фильтрацию по параметру $filter[::SUBFILTER-PARAMS][FAVORITE]=Y
.
Параметры
Параметр | Описание |
---|---|
order | Массив для сортировки результата. Массив вида {"поле_сортировки": 'направление сортировки' [, ...]}.
Поле для сортировки может принимать значения:
Примечание: В коробочной версии этот список полей для сортировки можно вернуть методом CTasks::getAvailableOrderFields().
Направление сортировки может принимать значения:
|
filter | Массив вида {"фильтруемое_поле": "значение фильтра" [, ...]}. Фильтруемое поле может принимать значения:
Перед названием фильтруемого поля может указать тип фильтрации:
"значения фильтра" - одиночное значение или массив. Необязательный. По умолчанию записи не фильтруются. |
select | Массив полей записей, которые будут возвращены методом. Можно указать только те поля, которые необходимы.
Поле сортировки может принимать значения:
По умолчанию будут возвращены все невычисляемые поля основной таблицы запроса. Список полей можно уточнить, отправив запрос tasks.task.getFields. |
limit | Число записей. Параметр указывается, если нужно получить число записей более значения по умолчанию (50). Все записи одним запросом вернуть нет возможности, это ограничение всех методов REST API. Вы можете несколькими запросами по 50 записей в ответе получить все лиды. Для этого просто передавайте параметр start со значением, кратным 50. Пример:
start=0 start=50 start=100 |
start | Сколько первых записей пропускать в результате. В связи с техническими ограничениями значение этого параметра всегда должно быть кратно 50. Например, при значении 50 в результате будут отображаться 51-я запись и последующие, а первые 50 записей будут пропущены.
При значении |
Примеры
- Вывод всех задач с названием "task for test", отбор по полям
ID
,TITLE
,STATUS
, сортировка по полюID
(сортировка по возрастанию):BX24.callMethod( 'tasks.task.list', {filter:{TITLE:'task for test'}, select: ['ID','TITLE','STATUS'], order:{ID:'asc'}}, function(res){console.log(res.answer.result);} );
Результат:
- Вывод всех неповторяющихся задач, добавленных в "Избранное", у которых статус больше 2:
BX24.callMethod( 'tasks.task.list', {filter:{'>STATUS':2, REPLICATE:'N', '::SUBFILTER-PARAMS':{FAVORITE:'Y'}}}, function(res){console.log(res.answer.result);} );
Результат:
result: { tasks: [ { id: "117", parentId: null, title: "123", description: "Opisanie. Ghhhhh", mark: null, priority: "0", status: "6", multitask: "N", notViewed: "N", replicate: "N", groupId: "0", stageId: "0", createdBy: "1", createdDate: "2019-03-15T15:41:27+02:00", responsibleId: "1", changedBy: "1", changedDate: "2019-03-18T14:06:18+02:00", statusChangedBy: "1", statusChangedDate: "2019-03-18T14:05:54+02:00", closedBy: null, closedDate: null, dateStart: null, deadline: null, startDatePlan: null, endDatePlan: null, guid: "{aef54f9d-8157-464b-9069-6ded9745e26d}", xmlId: null, commentsCount: null, taskControl: "Y", addInReport: "N", forkedByTemplateId: null, timeEstimate: "0", timeSpentInLogs: null, matchWorkTime: "N", forumTopicId: null, forumId: null, siteId: "s1", subordinate: "Y", favorite: "Y", exchangeModified: null, exchangeId: null, outlookVersion: "7", viewedDate: "2019-03-18T14:07:08+02:00", sorting: "2564.0000000", durationPlan: "0", durationFact: null, durationType: "days", descriptionInBbcode: "Y", ufCrmTask: [ ], ufTaskWebdavFiles: [ 22 ], ufAuto915658270214: null, ufAuto244510721805: null, ufAuto637823431651: "0", ufMailMessage: null, ufAuto226929532613: "", ufAuto187628303463: null, auditors: [ ], accomplices: [ ], newCommentsCount: 0, subStatus: "6", creator: { id: "1", name: "Гречушников Максим", link: "/company/personal/user/1/", icon: "/upload/resize_cache/main/9b0/58_58_2/p2dVDwA46Nw.png", }, responsible: { id: "1", name: "Гречушников Максим", link: "/company/personal/user/1/", icon: "/upload/resize_cache/main/9b0/58_58_2/p2dVDwA46Nw.png", }, } ] },
Пример отключения постраничной навигации:
$result = CRest::call( 'tasks.task.list', [ 'filter' => [ '>ID' => 50 ], 'start' => -1, ] );
В rest-методе tasks.task.list фиксированное число выбранных элементов - 50. К сожалению, на данный момент это значение нельзя изменить. Чтобы пропустить первые N записей необходимо передать параметр start: N. Пример:
BX24.callMethod('tasks.task.list',{start: 1150})