В начало

Отбор на форме списка с очисткой

 

Листинг. Процедура и функция в модуле формы списка

&НаСервере

Функция СписокБП(ЗНАЧ НомерИП)//Ark, 2023-06-23

            Запрос = Новый Запрос;

            Запрос.Текст =

                        "ВЫБРАТЬ РАЗЛИЧНЫЕ

                        |         CRM_БизнесПроцессВзысканоПоИП.НомерИП КАК НомерИП,

                        |         CRM_БизнесПроцессВзысканоПоИП.Ссылка.Партнер КАК Партнер

                        |ИЗ

                        |         БизнесПроцесс.CRM_БизнесПроцесс.ВзысканоПоИП КАК CRM_БизнесПроцессВзысканоПоИП

                        |ГДЕ

                        |         CRM_БизнесПроцессВзысканоПоИП.НомерИП = &НомерИП

                        |         И CRM_БизнесПроцессВзысканоПоИП.Ссылка.ПометкаУдаления = ЛОЖЬ

                        |         И CRM_БизнесПроцессВзысканоПоИП.Ссылка.Партнер.ПометкаУдаления = ЛОЖЬ";

           

            Запрос.УстановитьПараметр("НомерИП", НомерИП);

            Результат = Запрос.Выполнить();      

    Выгрузка = Результат.Выгрузить().ВыгрузитьКолонку("Партнер");

 

            СЗ = Новый СписокЗначений;

    СЗ.ЗагрузитьЗначения(Выгрузка);

 

            Возврат СЗ;

КонецФункции

 

&НаКлиенте

Процедура НомерИППриИзменении(Элемент)//Ark, 2023-06-23

 

Список.Отбор.Элементы.Очистить();

           

Если ЗначениеЗаполнено(ЭтаФорма.НомерИП) Тогда

            ОтборПоНомеруИП = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));

            ОтборПоНомеруИП.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");

            ОтборПоНомеруИП.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;

            ОтборПоНомеруИП.ПравоеЗначение = СписокБП(СокрЛП(ЭтаФорма.НомерИП));                  

            ОтборПоНомеруИП.Использование = Истина;

            ОтборПоНомеруИП.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; 

КонецЕсли;