СКД. Как ограничить ввод значения в параметр СКД?
Добрый день, Уважаемые Форумчане!
Есть самописный отчет на СКД.
У данного отчета есть параметр "Процент".
Подскажите, пожалуйста, возможно ли каким-то образом ограничить ввод значений в это поле параметра отчета, чтобы пользователь не мог ввести значение больше 100?
Программно я эту ошибку обрабатываю ПриКомпановкеРезультата и, если значение превышает 100, то передаю 100.
Но как сделать ограничение по вводу значения не смог разобраться.
Думал в торону как поймать обработчик типа "ПриИзменении" параметра, но тоже не увенчалось успехом.
Заранее всех благодарю за помощь!
Есть самописный отчет на СКД.
У данного отчета есть параметр "Процент".
Подскажите, пожалуйста, возможно ли каким-то образом ограничить ввод значений в это поле параметра отчета, чтобы пользователь не мог ввести значение больше 100?
Программно я эту ошибку обрабатываю ПриКомпановкеРезультата и, если значение превышает 100, то передаю 100.
Но как сделать ограничение по вводу значения не смог разобраться.
Думал в торону как поймать обработчик типа "ПриИзменении" параметра, но тоже не увенчалось успехом.
Заранее всех благодарю за помощь!
Прикрепленные файлы:

По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) В ПриИзменении() нормально работает
&НаКлиенте
Процедура ПериодПриИзменении(Элемент)
Если Отчет.Период.ДатаНачала < Начало Тогда
Сообщить("Начальная дата периода не может быть меньше 01 июня 2022");
Отчет.Период.ДатаНачала = Начало;
КонецЕсли;
КонецПроцедуры
Показать
(4)
В типовых конфигурациях используется форма отчета в которой есть ОбновитьЭлементыФормыНастроекНаСервере, где можно отловить добавление поля на форму и установить ограничения или событие изменения: Подключаемый_ЭлементНастройки_ПриИзменении
но у меня нет произвольной формы
В типовых конфигурациях используется форма отчета в которой есть ОбновитьЭлементыФормыНастроекНаСервере, где можно отловить добавление поля на форму и установить ограничения или событие изменения: Подключаемый_ЭлементНастройки_ПриИзменении
(1)Добрый день.
Если отчет полностью типовой, то
правильно, не самый удобный, но все типовые так работают (в смысле при компоновке проверка). Можно накостылить на форму новый реквизит, и при изменении проверять.
А вообще действенный способ такой: при ошибке вызывать исключение с описание проблемы и тогда на 3й раз пользователи так делать больше не будут.
Можно конечно попробовать с ДоступныеЗначения поиграться. Или аналогичное, только для реквизита формы через события БСП, найти на форме реквизит запретить ввод своего значения оставить только выбор из списка, а список программно заполнить), звучит как, и таковым является, извращение
Если отчет полностью типовой, то
ПриКомпановкеРезультата
правильно, не самый удобный, но все типовые так работают (в смысле при компоновке проверка). Можно накостылить на форму новый реквизит, и при изменении проверять.
А вообще действенный способ такой: при ошибке вызывать исключение с описание проблемы и тогда на 3й раз пользователи так делать больше не будут.
Можно конечно попробовать с ДоступныеЗначения поиграться. Или аналогичное, только для реквизита формы через события БСП, найти на форме реквизит запретить ввод своего значения оставить только выбор из списка, а список программно заполнить), звучит как, и таковым является, извращение
(5)Специфичная задача - отчеты не нужны для такого, только отборы - только хардкор. Так же если пользователь идиот, то вам никакая проверка не поможет. В целом такая задача типовыми способами решается только через костыли сначала в модуле отчета, потом в общей форме либо только в общей форме.
(21) Отладкой добейте до приемлемого состояния. Должен заметить, я сделал поиск параметра и элемента формы очень топорно. В прод сделал бы иначе, для примера пойдет.
ОпределитьНастройкиФормы - указываете какие события формы ловите в модуле объекта.
ПередФормированиемОтчета - Проверить, что пользователь не установил параметр через расширенную настройку
ПриОпределенииПараметровВыбора - Найти в пользовательских настройках нужный параметр и сохранить в доп свойства компановщика
ПослеЗаполненияПанелиБыстрыхНастроек - последнее событие формы, после которого создаются элементы формы.
ОпределитьНастройкиФормы - указываете какие события формы ловите в модуле объекта.
ПередФормированиемОтчета - Проверить, что пользователь не установил параметр через расширенную настройку
ПриОпределенииПараметровВыбора - Найти в пользовательских настройках нужный параметр и сохранить в доп свойства компановщика
ПослеЗаполненияПанелиБыстрыхНастроек - последнее событие формы, после которого создаются элементы формы.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот