Имя: Пароль:
1C
1С v8
программная установка отбора для "Настроить список" УФ 8.3
0 s-n-a-y
 
11.12.14
13:39
На форме есть динамический список. По некоторому событию устанавливаю для него отбор следующим образом
Список.Отбор.Элементы.Очистить();
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ИсполнителиСтрокой");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = Элемент.ТекущиеДанные.Исполнитель;
В меню "Все действия" на коммандной панели для этого списка есть пункт меню Настроить список. Захожу туда. Там поле отбор пусто. Т.е. моего отбора там нет. Как правильно программно устанавливать отбор для моего списка?
1 vicof
 
11.12.14
13:40
"По некоторому событию"
Очень интересно...
2 s-n-a-y
 
11.12.14
13:42
(1) на форме есть доугой список. Выделяю там строку. срабатывает событие. В приведенном куске кода Элемент.ТекущиеДанные - это и есть выделенная строка
3 vicof
 
11.12.14
13:43
Если НЕ Элемент.ТекущиеДанные = Неопределено Тогда
        
        Элементы.Детализация.ОтборСтрок = Новый ФиксированнаяСтруктура("Автомобиль, ДоговорКонтрагента", Элемент.ТекущиеДанные.Автомобиль, Элемент.ТекущиеДанные.ДоговорКонтрагента);
        
    КонецЕсли;
4 vicof
 
11.12.14
13:44
Не, сорри, это для ТЧ
5 Адский плющ
 
11.12.14
13:48
(0) Кури что такое фиксированные настройки СКД. Отбор который ставишь в (0) это именно они. Чтобы поставить отбор в настройках, которые доступны пользователю, юзай КомпоновщикНастроек.Настройки.Отбор.
6 s-n-a-y
 
11.12.14
13:54
(5) Моя не понимает причем здесь скд. Я работаю в модуле упр. формы справочника. КомпоновщикНастроек там нету.
7 Адский плющ
 
11.12.14
13:56
(6) Хреново, что не понимает. "Список.КомпоновщикНастроек"
8 olegves
 
11.12.14
14:01
(0) РежимОтображения (ViewMode)
Использование:

Чтение и запись.
Описание:

Тип: РежимОтображенияЭлементаНастройкиКомпоновкиДанных.
Определяет режим отображения.
Используется при отображении списка, в зависимости от режима отображения табличного поля (см. соответствующие свойства у расширений табличного поля отбора и пользовательских настроек).
Кроме того, если элемент принадлежит пользовательскому отбору, свойство используется при формировании начального состава пользовательского отбора и при применении пользовательского отбора к базовому.

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

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
9 olegves
 
11.12.14
14:02
+(8) тебе нужен БыстрыйДоступ
10 s-n-a-y
 
11.12.14
14:57
(5) может я туплю, но заменив в (0) Список.Отбор.Элементы на Список.КомпоновщикНастроек.Настройки.Отбор.Элементы отбор не срабатывает. Мне ведь нужно что-то обновлять?
11 olegves
 
11.12.14
15:56
(10) кури из (0)
ЭлементОтбора.РежимОтображения
12 s-n-a-y
 
11.12.14
16:06
(11) он по умолчанию установлен в БыстрыйДоступ
13 s-n-a-y
 
11.12.14
16:09
Люди, если я зайду в Настройка списка и вручную поставлю там отбор где его можно посмотреть? В  Список.Отбор.Элементы и в Список.КомпоновщикНастроек.Настройки.Отбор.Элементы ничего нету.
14 olegves
 
11.12.14
16:15
(13) В  Список.Отбор.Элементы
15 olegves
 
11.12.14
16:16
(14) только не надейся там увидеть название своего Поля (колонки)
16 s-n-a-y
 
11.12.14
16:18
(15) Дык там пусто.
17 Адский плющ
 
11.12.14
16:18
(13) Выглядит жостко, но так:

Список.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти(Список.КомпоновщикНастроек.Настройки.Отбор.ИдентификаторПользовательскойНастройки).Элементы
18 Адский плющ
 
11.12.14
16:20
+(17) Я чутка перепутал, надо в пользовательских настройках ставить. Причем пользовательские настройки здесь переопределяют не элементы отбора, а весь отбор.
19 s-n-a-y
 
11.12.14
16:26
(17) значит буду добавлять по тому же принципу
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан