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