Имя: Пароль:
1C
1С v8
Программное редактирование настроек отбора на СКД
0 Pashkaa
 
09.10.14
09:18
Задача: Необходимо при открытии отчета на СКД задать предустановленный Отбор который пользователь менять не сможет.

У пользователя на форме есть таблица с Отборами (КомпоновщикНастроек.ПользовательскиеНастройки)

Есть кнопка Настройки, которая открывает стандартные настройки СКД, где так же есть Отбор (я так понимаю это отборы КомпоновщикНастроек.Настройки.Отборы)

В ходе реализации возникли вопросы:

1. Какую ветку КомпоновщикНастроек лучше редактировать для достижения результата КомпоновщикНастроек.Настройки.Отборы или КомпоновщикНастроек.ПользовательскиеНастройки?

Я склоняюсь к КомпоновщикНастроек.Настройки.Отборы

2. Хочется накладывать ограничение не по имени элемента отбора (Контрагент, Организация....), а по типу Тип("СправочникСсылка.Организация), отсюда возникает вопрос, как определить тип ПравоеЗначение элемента отбора?

Проблема возникает если у ЭлементаОтбора стоит ВидСравнения В группе из списка и список значений пустой.

3. ПриОткрытии изменяю элементы отбора в КомпоновщикНастроек.Настройки.Отборы в отладчике вижу что настройки установлены, открывается форма, нажимаю кнопку Настройки.. и вижу старые настройки вероятно установленные пользователем. При этом пользовательские отборы тоже старые. Что делаю не так?
1 ам794123
 
09.10.14
09:25
Пользовательские настройки заполняются методом ЗагрузитьНастройки()
2 Pashkaa
 
09.10.14
09:30
(1) я так понимаю это ответ на 3 вопрос.

Т.е. я программно изменил настройки отбора в КомпоновщикНастроек.Настройки.Отборы и дальше мне нужно выполнить ЗагрузитьНастройки() что бы обновились пользовательские настройки на заданные мной?

Не догоняю откуда куда нужно загрузить
3 Pashkaa
 
09.10.14
09:47
Выполнил вот такую ерунду

КомпоновщикНастроек.ЗагрузитьНастройки(КомпоновщикНастроек.Настройки);

Похоже что пользовательские настройки действительно перезаполнились.
2 + 2 = 3.9999999999999999999999999999999...