&НаСервереБезКонтекста
Функция СписокЭтаповБПдляОтбора()
Запрос = Новый Запрос;
Запрос.Текст
=
"ВЫБРАТЬ
| CRM_ТочкиМаршрутов.Ссылка КАК Ссылка,
| CRM_ТочкиМаршрутов.Наименование КАК Наименование,
| CRM_ТочкиМаршрутов.Владелец КАК Владелец,
| CRM_ТочкиМаршрутов.Вид КАК Вид
|ИЗ
| Справочник.CRM_ТочкиМаршрутов КАК CRM_ТочкиМаршрутов
|ГДЕ
| CRM_ТочкиМаршрутов.Владелец.Наименование =
""Судебная работа 2022""
| И
CRM_ТочкиМаршрутов.ПометкаУдаления = ЛОЖЬ
| И
CRM_ТочкиМаршрутов.Вид = ЗНАЧЕНИЕ(Перечисление.CRM_ВидыТочекМаршрута.Действие)";
Результат = Запрос.Выполнить();
Выгрузка = Результат.Выгрузить().ВыгрузитьКолонку("Ссылка");
СЗ = Новый СписокЗначений;
СЗ.ЗагрузитьЗначения(Выгрузка);
Возврат СЗ;
КонецФункции
&НаКлиенте
Процедура
ТекущийЭтап1НачалоВыбора(Элемент, ДанныеВыбора,
ВыборДобавлением, СтандартнаяОбработка)
СтандартнаяОбработка
= Ложь;
ПФ = Новый Структура;
НК = Новый НастройкиКомпоновкиДанных;
Отбор =
НК.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение
= Новый ПолеКомпоновкиДанных("Ссылка");
Отбор.ВидСравнения
= ВидСравненияКомпоновкиДанных.ВСписке;
Отбор.ПравоеЗначение
= СписокЭтаповБПдляОтбора();
Отбор.Использование
= Истина;
Отбор.РежимОтображения
= РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ПФ.Вставить("ФиксированныеНастройки", НК);
ОткрытьФорму("Справочник.CRM_ТочкиМаршрутов.ФормаВыбора", ПФ, ЭтаФорма.Элементы.ТекущийЭтап1);
КонецПроцедуры
&НаСервереБезКонтекста
Функция СписокБПдляОтбора(Знач СсылкаНаТекЭтап)
Запрос = Новый Запрос;
Запрос.Текст
=
"ВЫБРАТЬ
РАЗЛИЧНЫЕ
| CRM_БизнесПроцесс.Ссылка
КАК Ссылка,
| CRM_ТекущиеЭтапыБизнесПроцессов.ТекущийЭтап
КАК ТекущийЭтап
|ИЗ
| РегистрСведений.CRM_ТекущиеЭтапыБизнесПроцессов
КАК CRM_ТекущиеЭтапыБизнесПроцессов
| ЛЕВОЕ СОЕДИНЕНИЕ БизнесПроцесс.CRM_БизнесПроцесс КАК CRM_БизнесПроцесс
| ПО CRM_ТекущиеЭтапыБизнесПроцессов.Объект
= CRM_БизнесПроцесс.Ссылка
|ГДЕ
| CRM_ТекущиеЭтапыБизнесПроцессов.ТекущийЭтап
= &ТекущийЭтап";
Запрос.УстановитьПараметр("ТекущийЭтап", СсылкаНаТекЭтап.Наименование);
Результат = Запрос.Выполнить();
Выгрузка = Результат.Выгрузить().ВыгрузитьКолонку("Ссылка");
СЗ = Новый СписокЗначений;
СЗ.ЗагрузитьЗначения(Выгрузка);
Возврат СЗ;
КонецФункции
&НаКлиенте
Процедура
ОтборПоТекущемуЭтапу()
Список.КомпоновщикНастроек.Настройки.Отбор.Элементы.Очистить();
Если ЭтаФорма.ТекущийЭтапИспользование
И
ЗначениеЗаполнено(ЭтотОбъект.ТекущийЭтап) Тогда
//ОтборПоНомеруИП
=
Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));//Ошибка
ОтборТекЭтапу
=
Список.КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборТекЭтапу.ЛевоеЗначение
= Новый ПолеКомпоновкиДанных("Ссылка");
ОтборТекЭтапу.ВидСравнения
= ВидСравненияКомпоновкиДанных.ВСписке;
ОтборТекЭтапу.ПравоеЗначение
= СписокБПдляОтбора(ЭтотОбъект.ТекущийЭтап);
ОтборТекЭтапу.Использование
= Истина;
ОтборТекЭтапу.РежимОтображения
= РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
Элементы.Список.Обновить();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура
ТекущийЭтап1ПриИзменении(Элемент)
Если ЗначениеЗаполнено(ЭтотОбъект.ТекущийЭтап) Тогда
ЭтотОбъект.ТекущийЭтапИспользование
= Истина;
КонецЕсли;
ОтборПоТекущемуЭтапу();
КонецПроцедуры
&НаКлиенте
Процедура
ТекущийЭтапИспользованиеПриИзменении(Элемент)
ОтборПоТекущемуЭтапу();
КонецПроцедуры
|