Всем привет!
Возникшая проблема в следующем.
Дело в том, что для указанного заголовка темы есть на пример код:
Отбор = ДинСписок.Отбор.Элементы;
ДинСписок.Отбор.Элементы.Очистить();
Который не устраивает. Так как, в данном кодовом решении речь об очистке списка от какого либо отбора.
А нужно очистить не отбор а сами данные отображения динамического списка. ЛЮБЫЕ ДАННЫЕ!
И тут в С.П. есть команда удалить с примером:
ОтборКоличество = ПостроительОтчета.Отбор.Количество();
Для Н = 1 По ОтборКоличество Цикл
ПостроительОтчета.Отбор.Удалить(ОтборКоличество - Н);
КонецЦикла;
Который тоже не устраивает. И опять мимо. Ибо там оговорка:
Цитата
Внимание! Метод не доступен для отбора динамических списков (свойство Отбор объектов
Тьфу ты ... !!! Пардон ...Опять зло берет ))))
Короче нужно просто очистить отображение данных ... т.е. нужен пустой интерфейс дин списка. Без какого либо отображения. Вот все что надо.
Пробовал так ... кустарно:
ГруппаОтбор1 = спПоказанияТочкиСубТочкиУчета.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
Отбор = ГруппаОтбор1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Реквизит");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.ПравоеЗначение = "ТУПИЗМ";
Отбор.Использование = Истина;;
И вроде результат устроил. И я наконец получил то что надо. Т.е. Пустой динамический список ... Подобный тому, когда в дин. списке нет не одного созданного элемента.
Но во первых это кустарный способ. Ибо если в списке будет иметься реквизит со значением "ИДИОТИЗМ" т.е. пардон: "ТУПИЗМ" то дин. список его отобразит
))))).
Во вторых данное решение слишком тормозит. Ибо это тот же отбор всего не малого списка только отбор со значением: "ТУПИЗМ" который навряд ли в списке окажется ))))). Именно поэтому он будет пуст ))))
Короче как решить задачу не так кустарно как в указанном коде и без тормозов?
Опять извините конечно за циничную иронию.
Буду признателен!