Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 мар 2024, 09:21

Можно ли добавить отбор в форму списка в самой конфигурации?

Автор manking, 03 ноя 2015, 12:05

0 Пользователей и 1 гость просматривают эту тему.

Vladimir_Sh

Используйте свойство "Отбор" динамического списка. При изменении флажка, либо добавляйте элементы отбора, либо очищайте его.
Все необходимое для создания элемента у Вас уже есть на форме.
Если я Вам помог, нажми - Спасибо!

vitasw

Проблема с "нарисовать галочку" (она вроде есть)?
или с процедурой?

SkyNetYar

Цитата: vitasw от 03 ноя 2015, 16:45
Проблема с "нарисовать галочку" (она вроде есть)?
или с процедурой?
Процедурой. Не знаю как  отбор прицепить

vitasw

ОтборСписка=Список.Отбор;
ПолеПоиска=Новый ПолеКомпоновкиДанных("Контрагент");
Найдено=Ложь;
Для каждого ЭлементОтбора Из ОтборСписка.Элементы Цикл
Если ЭлементОтбора.ЛевоеЗначение =ПолеПоиска  Тогда
Найдено=Истина;
ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.НеРавно;
ЭлементОтбора.ПравоеЗначение=КонтрагентНаФорме;
ЭлементОтбора.Использование=Истина;
КонецЕсли;
КонецЦикла;

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

SkyNetYar

Делаю так
&НаКлиенте
Процедура ОтборПриИзменении(Элемент)
ОтборСписка=Список.Отбор;
    ПолеПоиска=Новый ПолеКомпоновкиДанных("СтатусРемонта");
    Найдено=Ложь;
    Для каждого ЭлементОтбора Из ОтборСписка.Элементы Цикл         
        Если ЭлементОтбора.ЛевоеЗначение =ПолеПоиска  Тогда
            Найдено=Истина;
            ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.НеРавно;
            ЭлементОтбора.ПравоеЗначение="Выдан";
            ЭлементОтбора.Использование=Истина;
        КонецЕсли;         
    КонецЦикла;
   
    Если Не Найдено Тогда
        ЭлементОтбора=ОтборСписка.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
        ЭлементОтбора.ЛевоеЗначение =ПолеПоиска;
        ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.НеРавно;
        ЭлементОтбора.ПравоеЗначение="Выдан";
        ЭлементОтбора.Использование=Истина;         
    КонецЕсли;
КонецПроцедуры


"Выдан" это у меня Справочники.пмСтатусыСервиса.Выдан
"СтатусРемонта" это у меня Список.СтатусРемонта (Список ОсновнаяТаблица = Документ.пмДокументСервиса)

Не работает <_<  ,что делаю не так?

Kironten

Цитата: SkyNetYar от 05 ноя 2015, 10:25
Делаю так
&НаКлиенте
Процедура ОтборПриИзменении(Элемент)
ОтборСписка=Список.Отбор;
    ПолеПоиска=Новый ПолеКомпоновкиДанных("СтатусРемонта");
    Найдено=Ложь;
    Для каждого ЭлементОтбора Из ОтборСписка.Элементы Цикл         
        Если ЭлементОтбора.ЛевоеЗначение =ПолеПоиска  Тогда
            Найдено=Истина;
            ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.НеРавно;
            ЭлементОтбора.ПравоеЗначение="Выдан";
            ЭлементОтбора.Использование=Истина;
        КонецЕсли;         
    КонецЦикла;
   
    Если Не Найдено Тогда
        ЭлементОтбора=ОтборСписка.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
        ЭлементОтбора.ЛевоеЗначение =ПолеПоиска;
        ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.НеРавно;
        ЭлементОтбора.ПравоеЗначение="Выдан";
        ЭлементОтбора.Использование=Истина;         
    КонецЕсли;
КонецПроцедуры


"Выдан" это у меня Справочники.пмСтатусыСервиса.Выдан
"СтатусРемонта" это у меня Список.СтатусРемонта (Список ОсновнаяТаблица = Документ.пмДокументСервиса)

Не работает <_<  ,что делаю не так?

А почему у вас если Выдан это элемент справочника, а отбор ставите по строке "выдан"?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск