Здравствуйте! У меня такая ситуация. Я сделал обработчик. В нём 2 поля. Пока их ещё нормально не назвал. 1-е поле - список значений, куда выбираются данные справочника Персонал. (Множественный выбор). Отбор по справочнику реализован в первой процедуре. Здесь всё хорошо.
2-е поле - выбор бригады из справочника Бригады.
Справочник Бригада - справочник владелец.
Справочник Персонал - подчинённый справочник.
Обработчик должен изменять Владельца (Бригаду) у Персонала, выбранного в 1-е поле на Владельца (Бригаду), выбранную во 2-е поле.
Не понимаю, почему не работает. Всё время флаг = 0, значит, где-то что не проходит и не срабатывает.

```1c
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Данные = Новый Массив;
    Данные.Добавить(Тип("СправочникСсылка.Персонал"));
    Объект.Реквизит1.ТипЗначения = Новый ОписаниеТипов(Данные);
    КонецПроцедуры

    &НаСервере
    Процедура ОкНаСервере(Персон, Брига)
    Флаг = 0;
    Выборка = Справочники.Персонал.Выбрать();
    Для Каждого Эл Из Персон Цикл
    Пока Выборка.Следующий() Цикл
    Если Выборка.Наименование = Эл Тогда
    Значение = Выборка.ПолучитьОбъект();
    Значение.Владелец = Брига;
    Значение.Записать();
    Сообщение = Новый СообщениеПользователю;
    Сообщение.Текст = "Изменена бригада у - " + Значение.Наименование;
    Сообщение.Сообщить();
    Флаг = 1;
    КонецЕсли;
    КонецЦикла;
    КонецЦикла;

    Если Флаг = 0 Тогда
    Сообщение = Новый СообщениеПользователю;
    Сообщение.Текст = "Значения не найдены!";
    Сообщение.Сообщить();
    КонецЕсли;
    КонецПроцедуры

    &НаКлиенте
    Процедура Ок(Команда)

    Перс = Объект.Реквизит1;
    Бриг = Объект.Реквизит2;

    ОкНаСервере(Перс, Бриг);

    КонецПроцедуры
```
---
Да, так и есть. Я не перевёл в строку после передачи. Теперь всё работает.
Эл.Значение после передачи не работает. Сработало Строка(Эл). Спасибо!
---
А ты зачем весь справочник-то перебираешь?
---
Я и поиск по наименованию делал без перебора всего справочника. Тоже не работает.
Ещё если вместо списка значений сделать 1-м реквизитом обычное поле ввода, то всё работает. Но здесь смысл, как раз, в множественном выборе, чтобы можно было менять бригаду сразу у многих людей. Вероятно, у меня какая-то проблема с извлечением Наименования из списка значений.
---
Про отладчик при тебе можно упоминать? Не стремаешься таких слов?
Чтобы ты увидел, что ты в итоге получаешь при переборе своего списка
---
По перебору всё в порядке. Выводит по отдельности каждый элемент, но работать почему-то с ними не хочет.
---
Поиск по наименованию это очень грубая ошибка. Так вообще делать нельзя. Ну за исключением пользовательского ввода поиска и загрузки данных само собой можно конечно.
В данном случае примерно так можно сделать.

```1c
    Процедура ОкНаСервере(Персон, Брига)
    Для Каждого Эл Из Персон Цикл
    Ссылка = Эл.Значение;
    об = Ссылка.ПолучитьОбъект();
    об.Владелец = Брига;
    об.Записать();
    КонецЦикла;
    КонецПроцедуры
```

У тебя ошибка, скорее всего, из-за разного типа данных в сравнении:

```1c
    Если Выборка.Наименование = Эл Тогда
```

Поизучай про ссылочные типы
---
Да, так и есть. Я не перевёл в строку после передачи. Теперь всё работает.
Эл.Значение после передачи не работает. Сработало Строка(Эл). Спасибо!
---
А если полные тёзки? Такое бывает, даже на одном предприятии.