Всем добрый вечер!!.

Делать отбор не получается (( В документе где Выбираю поставщика (Ссылка.Справочники.Поставщики) открывается Форма выбора поставщика и там выходят все поставщики в т.ч. не соответствующие данному документу по группе поставщиков.

В Справочнике Поставщики используется иерархия, и нужно установить отбор по группе Поставщиков

это мой не рабочий код:

```1c
    &НаКлиенте
    Процедура ПоставщикНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    Форма = ПолучитьФорму("Справочник.Поставщики.ФормаВыбора",, Элемент);
    ЭлементОтбора = Форма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Родитель");
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    ЭлементОтбора.Использование = Истина;
    ЭлементОтбора.ПравоеЗначение = "Подключение";
    Форма.Открыть();
    КонецПроцедуры
```

При открытии формы выбора выходит пустая таблица,
где я ошибаюсь ?
---
```1c
    ЭлементОтбора.ПравоеЗначение = ПолучитьГруппуНоменклатурыНаСервере();

    &НаСервере
    Функция ПолучитьГруппуНоменклатурыНаСервере()
    Возврат Справочники.Номенклатура.НайтиПоНаименованию("Подключение");
    КонецФункции
```
---
В правом значении должна быть ссылка на группу поставщиков. А не набор букв.
---
можете помочь с кодом ?
---
ЭлементОтбора.ПравоеЗначение = Справочники.Поставщики.НайтиПоНаименованию("Подключение");
---
а это точно не выдаст ошибку Так как эта процедура выполняется НаКлиенте ?
---
Выполните часть кода на сервере, какие проблемы? Или можно сделать группу Подключение передопределенным элементом, раз уж она будет обязательной и уникальной...
---
Выполните часть кода на сервере, какие проблемы не хватает знания ((
---
```1c
    ЭлементОтбора.ПравоеЗначение = ПолучитьГруппуНоменклатурыНаСервере();

    &НаСервере
    Функция ПолучитьГруппуНоменклатурыНаСервере()
    Возврат Справочники.Номенклатура.НайтиПоНаименованию("Подключение");
    КонецФункции
```
---
```1c
    &НаКлиенте
    Процедура ПоставщикНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    Форма = ПолучитьФорму("Справочник.Поставщики.ФормаВыбора",, Элемент);
    ЭлементОтбора = Форма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Родитель");
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    ЭлементОтбора.Использование = Истина;
    ПрЗначение = ПредопределенноеЗначение("Справочник.Поставщики.ПустаяСсылка");
    ЭлементОтбора.ПравоеЗначение = ПрЗначение.НайтиПоНаименованию("Подключение");
    Форма.Открыть();
    КонецПроцедуры
```

может использовать предопределенное значение ? как правильно обращаться серверу
---
Вот так работает отбор, но мне бы хотелось делать отбор по группе номенклатуры а не с помощью перечисления

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

```1c
    ПараметрыФормы = Новый Струкутра("УстановитьОтборПоПодключению", Истина);
    ОткрытьФорму("Справочник.Поставщики.ФормаВыбора", ПараметрыФормы);
```
---
ясненько, прочту инфы
---
спасибо за наводки )