Задача: Необходимо при открытии отчета на СКД задать предустановленный Отбор который пользователь менять не сможет.
У пользователя на форме есть таблица с Отборами (КомпоновщикНастроек.ПользовательскиеНастройки)
Есть кнопка Настройки, которая открывает стандартные настройки СКД, где так же есть Отбор (я так понимаю это отборы КомпоновщикНастроек.Настройки.Отборы)
В ходе реализации возникли вопросы:
1. Какую ветку КомпоновщикНастроек лучше редактировать для достижения результата КомпоновщикНастроек.Настройки.Отборы или КомпоновщикНастроек.ПользовательскиеНастройки?
Я склоняюсь к КомпоновщикНастроек.Настройки.Отборы
2. Хочется накладывать ограничение не по имени элемента отбора (Контрагент, Организация....), а по типу Тип("СправочникСсылка.Организация), отсюда возникает вопрос, как определить тип ПравоеЗначение элемента отбора?
Проблема возникает если у ЭлементаОтбора стоит ВидСравнения В группе из списка и список значений пустой.
3. ПриОткрытии изменяю элементы отбора в КомпоновщикНастроек.Настройки.Отборы в отладчике вижу что настройки установлены, открывается форма, нажимаю кнопку Настройки.. и вижу старые настройки вероятно установленные пользователем. При этом пользовательские отборы тоже старые. Что делаю не так?
Т.е. я программно изменил настройки отбора в КомпоновщикНастроек.Настройки.Отборы и дальше мне нужно выполнить ЗагрузитьНастройки() что бы обновились пользовательские настройки на заданные мной?
Похоже что пользовательские настройки действительно перезаполнились.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший