Перейти к содержанию

Срок выполнения задачи на основе срока выполнения родительской задачи/документа

Вы можете задать параметры подзадачи в зависимости от параметров пользовательских родительских объектов. Например, вам может понадобиться задать срок выполнения подзадачи на основе срока выполнения родительской задачи и приоритета родительского объекта.

Для того чтобы задать срок выполнения, измените выражение из предыдущего примера следующим образом:

1. Замените функции сложения следующими:

 SUBTRACT($parent->dueDate, DURATION(“P[n]Y[n]M[n]DT[n]H[n]M[n]S”))

2. Воспользуйтесь условием $parent->$parent->Priority для того, чтобы передать данные с уровня процессной задачи на уровень подзадачи.

3. Задайте требуемые значения длительности:

 

IF($parent->$parent->Priority == ID(“Priority.values.Low”),

SUBSTRACT($parent->dueDate, DURATION(“P3D12H”)),

If ($parent->$parent->Priority == ID(“Priority.values.Medium”),

SUBTRACT($parent->dueDate, DURATION(“P1D12H”)),

SUBTRACT($parent->dueDate, DURATION(“P12H”))

)

)

Приведенное выше выражение задает срок выполнения подзадачи в зависимости от приоритета родительского объекта и срока выполнения родительской задачи. Используйте данное выражение в качестве предустановленного значения для срока выполнения подзадачи. Вы также можете использовать функцию 'SUBTRACT($parent->dueDate, DURATION(“P[n]Y[n]M[n]DT[n]H[n]M[n]S”))' отдельно, для того чтобы задать срок выполнения любого дочернего элемента в зависимости от срока выполнения родительского элемента. Обратите внимание, что процессные задачи не содержат системного поля Дата окончания, поэтому вам придется создать его.