Подскажите, почему не устанавливается отбор

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

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

```1c
    Элементы.Список.ТекущиеДанные.Контрагент
```
 или как там называется поле
или как рекомендуют
http://forum.infostart.ru/forum9/topic239635/message2440152/#message2440152
---
Вангую, ОФ :)
---
отладчик сломался?
---
работает, но я не пойму в чем проблема - открывается ФормаСписка РасходТовара без отбора
---
стек вызовов и просмотр переменных в табло работает?

если да, то гипотеза "но я не пойму в чем проблема" должна перейти в категорию теорем.
---
не перешла
---
Пока, пожалуйста, процедуру ПриСозданииНаСервере в форме Документ.РасходТовара.ФормаСписка
---
нету
---
Тогда и не будет отбора.
(9)
---
Вот что должно быть в Документ.РасходТовара.ФормаСписка

```1c
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент");
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    ЭлементОтбора.Использование = Истина;
    ЭлементОтбора.ПравоеЗначение = параметры.Отбор.Контрагент;

    КонецПроцедуры
```
---
тогда

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

вообщем бида бидулька
---
может там и поля "Контрагент" нету, а какой-нить "Клинет".

Я чуял, что в этой теме надо постить рецеп каре ягненка.
---
Попробуй программно отредактировать запрос динамического списка.

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

    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

    Если Параметры.Свойство("Контрагет") Тогда

    ТекстЗапроса = "
    |ГДЕ
    | Список.Контрагет = &Контрагет
    |;";

    Список.ТекстЗапроса = Список.ТекстЗапроса + ТекстЗапроса;
    Список.Параметры.УстановитьЗначениеПараметра("Контрагет", Параметры.Контрагент);

    КонецЕсли;

    КонецПроцедуры
```