ПланФикс API task.update — различия между версиями

Материал из ПланФикс
Перейти к: навигация, поиск
Строка 48: Строка 48:
 
       </delGroups>
 
       </delGroups>
 
     </workers>
 
     </workers>
     <periodicity>
+
     <periodicity unset="1">
 
       <!-- ежедневно -->
 
       <!-- ежедневно -->
 
       <daily>
 
       <daily>
Строка 136: Строка 136:
 
|workers.delGroups.id ||int || идентификатор группы||
 
|workers.delGroups.id ||int || идентификатор группы||
 
|-
 
|-
|periodicity ||node ||задает периодичность выполнения задачи || смотри описание структуры узлов ''daily'', ''weekly'' и ''monthly'' ниже
+
|'''periodicity''' ||node ||задает периодичность выполнения задачи || смотри описание структуры узлов ''daily'', ''weekly'' и ''monthly'' ниже
 +
|-
 +
|'''periodicity''' unset || int || наличие этого атрибута отменяет (удаляет) связанную с задачей периодичность || содержимое внутри узла игнорируется
 
|-
 
|-
 
|periodicity.startDate || DateTime || начиная с этой даты начинает работать повторение задачи ||
 
|periodicity.startDate || DateTime || начиная с этой даты начинает работать повторение задачи ||

Версия 09:16, 2 ноября 2010

Функция обновления информации задачи. Формат запроса:

<?xml version="1.0" encoding="UTF-8"?>
<request method="task.update">
  <account></account>
  <sid></sid>
  <task>
    <id></id>
    <title></title>
    <description></description>
    <importance></importance>
    <status></status>
    <checkResult></checkResult>
    <owner>
      <id></id>
    </owner>
    <parent>
      <id></id>
    </parent>
    <project>
      <id></id>
    </project>
    <client>
      <id></id>
    </client>
    <startTime></startTime>
    <endTime></endTime>
    <workers>
      <addUsers>
        <id></id>
        <id></id>
        <!-- ... -->
      </addUsers>
      <addGroups>
        <id></id>
        <id></id>
        <!-- ... -->
      </addGroups>
      <delUsers>
        <id></id>
        <id></id>
        <!-- ... -->
      </delUsers>
      <delGroups>
        <id></id>
        <id></id>
        <!-- ... -->
      </delGroups>
    </workers>
    <periodicity unset="1">
      <!-- ежедневно -->
      <daily>
        <type>{EVERY|EVERY_WORKING|AFTER_COMPLETE}</type>
        <shift></shift>
      </daily>
      <!-- еженедельно -->
      <weekly>
        <type>{EVERY|AFTER_COMPLETE}</type>
        <shift></shift>
        <days><!-- список дней через запятую --></days>
      </weekly>
      <!-- ежемесячно -->
      <monthly>
        <type>{AFTER_COMPLETE|DAY_OF_MONTH|BY_CONDITION}</type>
        <month></month>
        <day></day>
        <dayType></dayType>
      </monthly>

      <startDate></startDate>
      <endCondition>
        <type></type>
        <date></date>
        <repeatCount></repeatCount>
      </endCondition>
      <notify>
        <type></type>
        <day></day>
      </notify>
    </periodicity>
  </task>
  <signature></signature>
</request>
Название Тип Значение Примечание
id int идентификатор обновляемой задачи обязательный параметр
title string название задачи
description string о чем задача, описание
importance enum срочность перечень допустимых значений смотри в разделе срочность задач
status enum статус задачи перечень допустимых значений смотри в разделе статусы задач
checkResult bool является ли задача задачей с обязательной проверкой результата
owner создатель задачи необязательное поле. Если не указано - берется пользователь от имени которого выполняется функция
owner.id int идентификатор пользователя
parent над задача необязательное поле
parent.id int идентификатор задачи, которая будет являться над задачей допустимо значение 0 (ноль)
project в рамках какого проекта поставлена задача
project.id int идентификатор проекта
client контрагент необязательный параметр
client.id int идентификатор контрагента допустимо значение 0
startTime DateTime время начала работы в интерфейсе ПланФикс поле приступить к работе
endTime DateTime время окончания задачи в интерфейсе ПланФикс поле закончить работу До
workers корневой элемент списка исполнителей задачи
workers.addUsers корневой элемент списка пользователей, которые подключаются к задаче
workers.addUsers.id int идентификатор пользователя, который подключается к задаче
workers.addGroups корневой элемент списка групп, которые подключаются к задаче поставлена задача
workers.addGroups.id int идентификатор группы
workers.delUsers корневой элемент списка пользователей, которые удаляются из списка исполнителей
workers.delUsers.id int идентификатор пользователя, который удаляется из списка исполнителей
workers.delGroups корневой элемент списка групп, которые удаляются из списка исполнителей
workers.delGroups.id int идентификатор группы
periodicity node задает периодичность выполнения задачи смотри описание структуры узлов daily, weekly и monthly ниже
periodicity unset int наличие этого атрибута отменяет (удаляет) связанную с задачей периодичность содержимое внутри узла игнорируется
periodicity.startDate DateTime начиная с этой даты начинает работать повторение задачи
periodicity.endCondition условия окончания повторения
periodicity.endCondition.type enum условие окончания допустимые значения: ENDLESS - нет конечной даты, BYCOUNT - После repeatCount повторений, BYENDDATE - до даты определенной в date
periodicity.endCondition.date DateTime дата, после которой повторение задачи перестает работать используется при type=BYENDDATE
periodicity.endCondition.repeatCount int количество повторений, после которого задача перестает повторяться используется при type=BYCOUNT
periodicity.notify уведомления
periodicity.notify.type int тип период, 0 - рабочий день, 1 - неделя
periodicity.notify.day int размер период если type=0 и day=2, то еведомление прийдет за 2 рабочих дня до начала задачи

Добавляемые даты могут задаваться в двух форматах. Первый формат короткий, указывается только число, год и месяц. Второй формат - полный, дополнительно указывается время начала/завершения, если того требует задача. Периодичность - не обязательный параметр. Внутри тега periodicity может быть только один из перечисленных элементов: daily, weekly, monthly.

описание параметра periodicity

Описание параметра daily, параметры weekly и monthly в этом случае не могут быть заданы. Указывает что задача должна повторяться ежедневно, согласно установленным критериям:

Название Тип Значение Примечание
type enum определяет периодичность допустимые значения EVERY или EVERY_WORKING, или AFTER_COMPLETE
shift int определяет сдвиг в днях используется только при значениях type равным EVERY или AFTER_COMPLETE

Значение EVERY интерпретируется как каждый N-й день, заданный в параметре shift. EVERY_WORKING - каждый рабочий день. Значение AFTER_COMPLETE интерпретируется как ставить новую задачу через N-й день после каждого завершения, заданный в параметре shift.

Описание параметра weekly, параметры daily и monthly в этом случае не могут быть заданы. Указывает что задача должна повторяться еженедельно, согласно установленным критериям:

Название Тип Значение Примечание
type enum определяет периодичность допустимые значения EVERY или AFTER_COMPLETE
shift int сдвиг в днях
days set/list перечень дней недели, разделитель символ запятой (,). понедельник имеет индекс 1, воскресение - 7. используется только при type=AFTER_COMPLETE

Значение AFTER_COMPLETE интерпретируется как: ставить задачу через N-й неделю после каждого завершения, заданную в параметре shift.

Описание параметра monthly, параметры daily и weekly в этом случае не могут быть заданы. Указывает что задача должна повторяться ежемесяно, согласно установленным критериям:

Название Тип Значение Примечание
type enum периодичность допустимые значения AFTER_COMPLETE или DAY_OF_MONTH, или BY_CONDITION
month int задает месяц в/через который должно действие/задача повторяться
day int задает день в/через который должна задача повторяться не используется при type=AFTER_COMPLETE
dayType enum определяет тип дня используется при type=BY_CONDITION. Допустимые значения смотри в разделе тип дня для повторяющейся задачи

Все параметры, за исключением id, являются не обязательными и если они опущены, то не происходит обновление информации данного параметра


Ответ при удачном выполнении функции:

<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
  <task>
    <id></id>
  </task>
</response>
Название Тип Значение Примечание
task.id int идентификатор обновляемой задачи


В противном случае будет возвращен ответ с ошибкой:

<?xml version="1.0" encoding="UTF-8"?>
<response status="error">
  <code></code>
</response>


Перейти