Сотрудники компании постоянно перемещаются между складами и возникла необходимость в централизованном управлении их месторасположением (привязкой). Так же у нас некоторые сотрудники имеют доступ к 1-2 другим складам (кроме своего основного) - в обработке предусмотрена возможность присвоения до двух дополнительных складов каждому пользователю, при условии наличия дополнительного регистра сведений "УправлениеПодразделениями" (аналогичный регистру "Настройки пользователей", но измерение "Настройка" имеет тип Строка(50)). Обработка будет работать и без дополнительного регистра. Если вам так же нужно закреплять пользователей за дополнительными складами - используйте функцию проверки доступа текущего пользователя к определенному складу:
Функция ПроверитьТекущегоПользователяНаСоответствиеЗаданомуСкладу (тСклад) Экспорт
Соседи = Ложь;
ТекущийПользователь = ПользователиИнформационнойБазы.ТекущийПользователь();
ТекущийПользовательСокр = Справочники.Пользователи.НайтиПоКоду(СокрЛП(ТекущийПользователь));
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| УправлениеПодразделениями.Работник КАК Работник,
| УправлениеПодразделениями.Склад КАК Склад
|ИЗ
| РегистрСведений.УправлениеПодразделениями КАК УправлениеПодразделениями
|ГДЕ
| УправлениеПодразделениями.Работник = &Работник";
Запрос.УстановитьПараметр("Работник",ТекущийПользовательСокр);
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
Если Результат.Склад = тСклад Тогда
Соседи = Истина;
КонецЕсли;
КонецЦикла;
Возврат (Соседи);
КонецФункции
Описание интерфейса - в справке.