getByAccessCode
?\Bitrix\HumanResources\Item\Node public \Bitrix\HumanResources\Public\Service\NodeService::getByAccessCode( string $accessCode, ?\Bitrix\HumanResources\Type\NodeEntityType $nodeType = null, ?\Bitrix\HumanResources\Type\StructureAction $structureAction = null );
Метод возвращает узел организационной структуры по коду доступа. При передаче действия метод дополнительно проверяет доступ текущего пользователя. Нестатический метод.
Параметры
| Параметр | Описание |
|---|---|
$accessCode | Код доступа узла организационной структуры |
$nodeType | Тип узла из перечисления NodeEntityType. Метод учитывает параметр при проверке действия. Значение по умолчанию — null |
$structureAction | Действие из перечисления StructureAction, для которого нужно проверить доступ. Значение null отключает проверку |
Возвращаемое значение
Метод возвращает объект \Bitrix\HumanResources\Item\Node. Если узел не найден, метод возвращает null.
Исключения
Метод может выбросить \Bitrix\Main\ArgumentException, \Bitrix\Main\ObjectPropertyException или \Bitrix\Main\SystemException при ошибке ORM-запроса. При проверке действия неподдерживаемый код доступа вызывает \InvalidArgumentException.
Особенности
В текущей реализации передача ненулевого $structureAction приводит к \TypeError: метод передает $nodeType и $structureAction в репозиторий в позиции с другими типами. До исправления реализации вызывайте метод без проверки действия.
Пример
<?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?->accessCode === null)
{
echo 'Код доступа корневого узла не найден';
return;
}
$node = $nodeService->getByAccessCode($rootNode->accessCode);
echo $node === null ? 'Узел не найден' : $node->name;
Была ли эта страница полезна?
Что можно улучшить?
Пользовательские комментарии
Помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2026, «1С-Битрикс», 2026