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

assignToSingleDepartment

void public
\Bitrix\HumanResources\Public\Service\Department\UserService::assignToSingleDepartment(
	int $userId,
	int $departmentId,
	?int $structureId = null
);

Метод привязывает пользователя к одному подразделению и удаляет остальные привязки пользователя к подразделениям. Нестатический метод.

Параметры

ПараметрОписание
$userIdИдентификатор пользователя, для которого нужно заменить привязки к подразделениям
$departmentIdИдентификатор целевого узла типа DEPARTMENT
$structureIdИдентификатор структуры, к которой относится целевое подразделение. Значение null выбирает структуру по умолчанию

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

Метод не возвращает значение.

Особенности

Метод создает или активирует привязку к целевому подразделению и удаляет все остальные привязки пользователя к подразделениям. После успешного вызова isEmployee() возвращает true для этого пользователя. Синхронизацию поля UF_DEPARTMENT выполняет обработчик событий.

Исключения

Метод выбрасывает \InvalidArgumentException, если идентификатор не относится к подразделению указанной структуры.

Пример

<?php

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

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

// Метод удалит остальные привязки указанного пользователя к подразделениям
$userId = 1;
$departmentId = 5;

try
{
	Container::getUserDepartmentService()->assignToSingleDepartment($userId, $departmentId);
	echo 'Пользователь привязан к подразделению';
}
catch (\InvalidArgumentException $exception)
{
	echo 'Не удалось изменить подразделение: ' . $exception->getMessage();
}
catch (\Throwable $exception)
{
	echo 'Не удалось сохранить привязку: ' . $exception->getMessage();
}


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

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

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

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