|
Отбор - указать ПравоеЗначение
| ☑ |
0
Надежда25
05.10.11
✎
10:04
|
Помогите, пожалуйста, с отбором.
Есть отчет на СКД. На форме - ТабличноеПолеОтбор. Надо, чтобы пользователь при задании отбора видел не весь справочник, а только одну папку со всем содержимым (элементы, папки). Пишу так в Процедура СформироватьОтчет()Экспорт:
НовыйЭлементОтбора = ОтчетОбъект.КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных ("Номенклатура");
НовыйЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
НовыйЭлементОтбора.ПравоеЗначение = ??? пробовала по-разному;
|
|
1
SeraFim
05.10.11
✎
10:22
|
без фотки не взлетит :)
Может быть, ВидСравненияКомпоновкиДанных.ВИерархии
а в Правой части - ссылка на эту папку
Еще вариант:
Новый ПолеКомпоновкиДанных ("Номенклатура.Родитель");
а в Правой части - ссылка на эту папку
|
|
2
Voody
05.10.11
✎
10:44
|
(0) Если проверить у объекта принадлежность к группе, то способ сравнения надо не Равно использовать, а в группе, либо Равно, но в правое значение передавать Родителя элемента
|
|
3
SeraFim
05.10.11
✎
10:49
|
(2) нету такого вида сравнения "ВГруппе"
|
|
4
Надежда25
05.10.11
✎
10:56
|
Если:
НовыйЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
НовыйЭлементОтбора.ПравоеЗначение = Справочники.Номенклатура.ВыбратьИерархически("Продукция",,,);
Тогда:
Ошибка при вызове метода контекста (ВыбратьИерархически)
по причине:
Несоответствие типов (параметр номер '1')
|
|
5
Voody
05.10.11
✎
11:00
|
(3) Действительно нет, чего то я попутал.
(4) Так надо не номенклатуру с группой сравнивать, а Номенклатура.Родитель с группой
|
|
6
Voody
05.10.11
✎
11:05
|
НовыйЭлементОтбора.ПравоеЗначение = Справочники.Номенклатура.ВыбратьИерархически(СсылкаРодитель,,,);
Попробуй передать сюда этот параметр
|
|
7
Надежда25
05.10.11
✎
11:25
|
(6) Не так? Не работает:
СсылкаРодитель = Справочники.Номенклатура.НайтиПоНаименованию("Продукция");
НовыйЭлементОтбора.ПравоеЗначение = Справочники.Номенклатура.ВыбратьИерархически(СсылкаРодитель,,,);
|
|
8
SeraFim
05.10.11
✎
12:22
|
НовыйЭлементОтбора = ОтчетОбъект.КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных ("Номенклатура");
НовыйЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВИерархии;
НовыйЭлементОтбора.ПравоеЗначение = Справочники.Номенклатура.НайтиПоНаименованию("Продукция");
|
|
9
Надежда25
05.10.11
✎
12:57
|
Спасибо за ответ. Так уже делала. ПравоеЗначение - написано Продукция, а при нажатии на кнопку выбора открывается весь справочник Номенклатура, а нужна только одна папка.
|
|
10
Надежда25
05.10.11
✎
13:32
|
Ответа нет... Никому не интересно?
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший