Документация для разработчиков
Темная тема

findChildrenByNodeIds

\Bitrix\HumanResources\Item\Collection\NodeCollection public
\Bitrix\HumanResources\Public\Service\NodeService::findChildrenByNodeIds(
	array $nodeIds,
	?int $structureId = null,
	array $nodeTypes = [\Bitrix\HumanResources\Type\NodeEntityType::DEPARTMENT, \Bitrix\HumanResources\Type\NodeEntityType::TEAM],
	\Bitrix\HumanResources\Enum\DepthLevel|int $depthLevel = \Bitrix\HumanResources\Enum\DepthLevel::FIRST,
	?\Bitrix\HumanResources\Type\StructureAction $structureAction = null,
	\Bitrix\HumanResources\Enum\NodeActiveFilter $activeFilter = \Bitrix\HumanResources\Enum\NodeActiveFilter::ONLY_GLOBAL_ACTIVE
);

Метод возвращает дочерние узлы для одного или нескольких узлов организационной структуры. Нестатический метод.

Параметры

ПараметрОписание
$nodeIdsИдентификаторы исходных узлов
$structureIdИдентификатор организационной структуры. При значении null метод использует структуру по умолчанию
$nodeTypesТипы дочерних узлов из перечисления NodeEntityType. По умолчанию метод выбирает подразделения и команды
$depthLevelГлубина поиска из перечисления DepthLevel или целое число уровней. Значение по умолчанию — DepthLevel::FIRST
$structureActionДействие из перечисления StructureAction, для которого нужно проверить доступ. Значение null отключает фильтр по правам
$activeFilterРежим фильтрации по активности из перечисления NodeActiveFilter. Значение по умолчанию — NodeActiveFilter::ONLY_GLOBAL_ACTIVE

Возвращаемое значение

Метод возвращает коллекцию \Bitrix\HumanResources\Item\Collection\NodeCollection. Если исходные или подходящие дочерние узлы не найдены, коллекция будет пустой.

Пример

<?php

use Bitrix\HumanResources\Public\Service\Container;
use Bitrix\Main\Loader;

if (!Loader::includeModule('humanresources'))
{
	echo 'Модуль humanresources не установлен';
	return;
}

$nodeService = Container::getNodeService();
$rootNode = $nodeService->getRootNode();
if ($rootNode === null)
{
	echo 'Корневой узел не найден';
	return;
}

$children = $nodeService->findChildrenByNodeIds([$rootNode->id]);
foreach ($children as $node)
{
	echo $node->id . ': ' . $node->name . PHP_EOL;
}


Была ли эта страница полезна?

Пользовательские комментарии

Помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2026, «1С-Битрикс», 2026
Наверх