• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/scrum/service/taskservice.php
  • Класс: BitrixTasksScrumServiceTaskService
  • Вызов: TaskService::updateTaskLinks
public function updateTaskLinks(int $parentTaskId, int $childTaskId): void
{
	$taskItem = $this->getTaskItemObject($parentTaskId);

	$parentTask = $taskItem->getData(false, [
		'select' => ['DEPENDS_ON'],
	]);
	$parentTask['DEPENDS_ON'][] = $childTaskId;
	$parentTask['DEPENDS_ON'] = array_unique(
		array_map('intval', $parentTask['DEPENDS_ON'])
	);

	$taskDependence = new CTaskDependence();

	if ($parentTask['DEPENDS_ON'])
	{
		$taskDependence->deleteByTaskID($parentTaskId);

		foreach ($parentTask['DEPENDS_ON'] as $taskId)
		{
			$taskDependence->add([
				'TASK_ID' => $parentTaskId,
				'DEPENDS_ON_ID' => $taskId,
			]);
		}
	}
}