Имя: Пароль:
1C
1С v8
Свойства параметров в запросе управляемой формы справочника
0 pochemu
 
27.02.13
09:48
Сделал для списка управ. формы справочника номенклатуры получение данных из запроса. В параметрах у него есть список значений: http://savepic.ru/4162718.png
Добавляю в этот параметр список значений с двумя значениями в нём, а запрос отбирает только одно значение из этого списка... и в результате на форме отображается содержимое только одной папки вместо двух заданных. Покапался и пришел к тому, что скорее всего это из-за того, что не установлено свойство "ДоступенСписокЗначений":
http://savepic.ru/4168862.png
Теперь проблема: как установить это свойство? В Отчете каком-нибудь это как дважды плюнуть - сашел в СКД и установил напротив параметра это свойство. А здесь (в справочнике) я даже не знаю как программно получить объект СКД.. Подскажите как программно получить объект СКД в форме справочника или как установить свойство "ДоступенСписокЗначений, может метода для его установки есть какой (только вот не нашел)?
1 olegves
 
27.02.13
09:50
(0) ты лучше б запрос показал
2 pochemu
 
27.02.13
09:52
(1) В первом скрине он есть. Простейший запрос:

Выбрать
*
Из
Справочник.Номенклатура Как СправочникНоменклатура
Где
СправочникНоменклатура.Ссылка В Иерархии(&Список)
3 Rovan
 
гуру
27.02.13
09:57
(0) попробуй так перед передачей списка в него
Список.Параметры...Найти(...).ДоступенСписокЗначений = истина;
4 pochemu
 
27.02.13
10:00
(3) Из справки (и на практике проверено) параметр этот только для четния:
ДоступныйПараметрКомпоновкиДанных (DataCompositionAvailableParameter)
ДоступенСписокЗначений (ValueListAllowed)
Использование:

Только чтение.
Описание:

Тип: Булево.
Указыват на возможность задать значение параметра в виде списка значений.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
5 Maxus43
 
27.02.13
10:01
Ссылка В ИЕРАРХИИ(&Группа1, &Группа2) ?
6 pochemu
 
27.02.13
10:01
(3) Да и не находит.
7 pochemu
 
27.02.13
10:02
(5) Может быть хренова туча групп
8 olegves
 
27.02.13
10:03
с иерархией в запросах ДС возможно засада.
9 pochemu
 
27.02.13
10:04
(8) Засада в том, что значение "ДоступенСписокЗначений" = Ложь;
10 olegves
 
27.02.13
10:11
(9) а ты попробуй в свой список передать только элементы и убрать слово ИЕРАРХИИ - будешь приятно удивлен
11 pochemu
 
27.02.13
10:17
(10) Аналогично, только один элемент вылазит.
12 Rovan
 
модератор
27.02.13
10:18
(4) а не пробовал через Список.Отбор.Элементы  ?
13 pochemu
 
27.02.13
10:19
(10) Другой вопрос: СКД можно получить в УФ справочника? СКД используется на программном уровне, но не уж то 1С ники в справочнике сам объект СКД спрятали от кодеров...!?
14 Maxus43
 
27.02.13
10:20
таки да, Отбор в динамическом чем не устраивает?
15 pochemu
 
27.02.13
10:21
(12) Мне это не подходит.
16 pochemu
 
27.02.13
10:22
(14) Отбор не действует на папки, а мне надо чтобы папки, не соответствующие условию не отображались.
17 Maxus43
 
27.02.13
10:23
(16) ГДЕ ЭтоГруппа = ЛОЖЬ в запросе
18 pochemu
 
27.02.13
10:24
(17) Хм, а это идея. Сейчас проверю.
19 Rovan
 
гуру
27.02.13
10:29
(16) почему ?... разве нельзя сделать в отборе
ВидСравнения в ИЕРАРХИИ
ПравоеЗначение = СписокЗначений
20 pochemu
 
27.02.13
10:32
(19) Попробуй и увидишь, что  все папки будут отображаться.
21 pochemu
 
27.02.13
10:35
(17) Мда, что-то у меня не получается с помощью этого, только определенные папки оставить, все улетучиваются и вываливаются только элементы (чего-то другого следовало ожидать?).
22 Maxus43
 
27.02.13
10:38
(21) ну ограничения динамического известны, выбирай меньшее из зол
23 НЕА123
 
27.02.13
10:44
неужели (3) не отрабатывает?
24 Rovan
 
гуру
27.02.13
10:45
25 pochemu
 
27.02.13
10:52
(22)(24) Радость в моём доме, таки допетрил. Вот решение для тех, кто хочет чтобы отображались только нужные элементы внутри папок (лишних папок не будет):
В УФ это можно сделать чисто отбором и без запроса:
Отбор: Это Группа = Ложь И Ссылка В Группе Из Списка (указываете папки для отбора)
Группировка: Родитель.

И Усё, отображаются только элементы и папки соответствующие отбору. Отбор таким образом действует и на папки.
26 olegves
 
27.02.13
10:52
(21) хочешь, реши в лоб:
спр
левое соед род1 по спр.Родитель = род1.ссылка
левое соед род2 по род1.Родитель = род2.ссылка
...
левое соед род7 по род6.Родитель = род7.ссылка

где isnull(род7.ссылка,isnull(род6.ссылка,isnull(род5.ссылка...)
в (&список)
27 pochemu
 
27.02.13
10:54
Всем спасибо за помощь.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.