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

setSelectionCondition

self public
\Bitrix\HumanResources\Builder\Structure\NodeMemberDataBuilder::setSelectionCondition(
	\Bitrix\HumanResources\Contract\Builder\Structure\SelectionCondition $selectionCondition
);

Метод задает условие отбора элементов из полученной коллекции участников узлов. Билдер применяет условие после выполнения ORM-запроса и преобразования его результата. Нестатический метод.

Параметры

Параметр Описание
$selectionCondition Объект условия отбора, который реализует интерфейс \Bitrix\HumanResources\Contract\Builder\Structure\SelectionCondition

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

Метод возвращает текущий объект \Bitrix\HumanResources\Builder\Structure\NodeMemberDataBuilder.

Особенности

Классы \Bitrix\HumanResources\Builder\Structure\SelectionCondition\First и \Bitrix\HumanResources\Builder\Structure\SelectionCondition\Last оставляют в коллекции первый или последний элемент.

Пример

<?php

use Bitrix\HumanResources\Builder\Structure\Filter\Column\EntityIdFilter;
use Bitrix\HumanResources\Builder\Structure\Filter\NodeMemberFilter;
use Bitrix\HumanResources\Builder\Structure\NodeMemberDataBuilder;
use Bitrix\HumanResources\Builder\Structure\SelectionCondition\First;
use Bitrix\Main\Loader;

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

// Идентификатор пользователя, который состоит в структуре
$userId = 1;

try
{
	$members = NodeMemberDataBuilder::createWithFilter(
		new NodeMemberFilter(
			entityIdFilter: EntityIdFilter::fromEntityId($userId),
		),
	)
		->setSelectionCondition(new First())
		->getAll()
	;
	$member = $members->getFirst();

	if ($member === null)
	{
		echo 'Привязка пользователя к узлу не найдена';
		return;
	}

	echo 'Идентификатор узла: ' . $member->nodeId;
}
catch (\Throwable $exception)
{
	echo 'Не удалось получить участника узла: ' . $exception->getMessage();
}


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

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

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

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