Имя: Пароль:
1C
1С v8
Отбор в динсписке...
,
0 ДенисЧ
 
01.07.13
15:24
Делаю такую вещь:

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

Цель - показать в списке только те элементы, которые отбраны в список.  
В результате получаю ошибку
Ошибка при выполнении запроса. Ошибка при выполнении запроса.
по причине:
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанныхДинамическогоСписка"
по причине:
Ошибка при исполнении запроса набора данных
по причине:
{(10, 38)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
СправочникГруппыНоменклатуры.Ссылка <<?>>= &П

Если ставить вид сравнения равно и взять (например) первый элемент из списка, то работает.

Что не так?
1 Maxus43
 
01.07.13
15:46
Ссылка В(&П) ?
2 ДенисЧ
 
01.07.13
15:47
(1) Вообще текст запроса не пишу. Просто динсписок с основной таблицей
3 Maxus43
 
01.07.13
15:48
(2) ну я на ршибку смотрю, там почему то "="... ошибка отсюда растёт. напиши запрос
4 ДенисЧ
 
01.07.13
15:51
(3) А если не хочу? :-)
Хочу, чтобы работало без запроса
5 Maxus43
 
01.07.13
15:54
точно не напутал с левыми-правыми значениями? или поищи пример где реализовано
6 Поросенок Петр
 
01.07.13
15:56
Динсписок не жрет массивы, только СЗ. Может это?
7 ДенисЧ
 
01.07.13
16:04
(6) Я ему список подсовываю
8 ДенисЧ
 
01.07.13
16:15
(5) Посмотрел, вроде всё так и должно быть...
Список я создаю НаСервере, там же его заполняю и возвращаю на клиента...
9 Поросенок Петр
 
01.07.13
16:15
сПолучитьСписокГрупп на сервер лезет?

элемГ.Использование = Истина; в конец поставь.
10 ДенисЧ
 
01.07.13
16:16
(9) да, на сервер

и так в конце стоит
11 Поросенок Петр
 
01.07.13
16:18
Вызов безконтекстный ? Видимо нет.

(10) А по коду не видно.
Из-за серверного вызова список обновляется до присвоения правого значения.
12 ДенисЧ
 
01.07.13
16:20
(11) Вызовк контекстный... А надо без?
13 Поросенок Петр
 
01.07.13
16:21
ХЗ как тебе надо, я на ошибку указываю.

ИМХО, за редким исключением сочетание

&НаСервере
Функция ...

означает г-код.
14 ДенисЧ
 
01.07.13
16:23
(13) С чего бы это г? Нужно па параметрам запросом получить список элементов. На клиенте запроса нет. Поэтому идём на сервер.
15 Поросенок Петр
 
01.07.13
16:25
(14) Пожалуйста:

&НаСервереБезКонтекста
Функция ...
16 ДенисЧ
 
01.07.13
16:26
(15) Тоже вариант...
17 Maxus43
 
01.07.13
16:29
(16) проверил? реально из этого?
18 ДенисЧ
 
01.07.13
16:29
(17) Нет, не изза этого
19 ИсчадиеADO
 
01.07.13
16:35
может в список какое нехорошее значение закралось?
20 Поросенок Петр
 
01.07.13
16:38
Ха. Так в коде же "Элемент" присутствует. Ты в каком обработчике отборами играешься?
21 Поросенок Петр
 
01.07.13
16:41
Впрочем такую ошибку всё-равно не получишь. Видимо (19)
22 ДенисЧ
 
01.07.13
16:54
(20) в ПриАктивизацииСтроки другого ДС
23 hhhh
 
01.07.13
16:58
может сначала ВидСравнения, а потом ЛевоеЗначение уже присваивать?
24 ДенисЧ
 
01.07.13
17:03
Да ну нафиг.ю... По-другому сделал, задолбали эти пляски с бубном...
Ошибка? Это не ошибка, это системная функция.