Не очищаются пользовательские настройки отчета

1. Дмитрий Дедков (unlstu) 16.12.16 17:40 Сейчас в теме
В модуле объекта отчета на СКД указан вариант настроек, который должен вызываться по умолчанию.
У одного пользователя вызывается другой вариант, причем независимого с какого компьютера заходить. Очистка хранилища настроек для данного пользователя и локального кэша ошибку не исправила.
Конфа самописная на основе БСП 2.2.2.48. Модули сохранения настроек не переписывались. В чем может быть причина?
Найденные решения
9. Дмитрий Дедков (unlstu) 22.12.16 12:32 Сейчас в теме
Решение оказалось таким: при первом открытии отчета по умолчанию в форме подставляется вариант, который указан в основной СКД первым. Жестко установил значение переменной КлючТекущегоВарианта ="ИмяНужногоВарианта" в процедуре ПриСозданииНаСервере формы отчета.
Остальные ответы
2. Alx Alx (alxarz) 27 16.12.16 17:47 Сейчас в теме
(1)
Очистка хранилища настроек для данного пользователя и локального кэша ошибку не исправила.
раз продолжает вызываться не тот вариант, возникает вопрос а что же тогда очистили?
3. Сан Саныч (herfis) 117 16.12.16 17:52 Сейчас в теме
Подсистема "Варианты отчетов" (или как там ее) используется?
4. Дмитрий Дедков (unlstu) 16.12.16 17:53 Сейчас в теме
(2) Код очистки такой:
Для каждого СтрНастройка Из НастройкиПользователей Цикл
		
	УдалитьНастройкиНаСервере(СтрНастройка.КлючОбъекта,СтрНастройка.КлючНастроек,СтрНастройка.Пользователь);
		
КонецЦикла;
...Показать Скрыть


Настройки пользователя получаем так:

Процедура ПолучитьНастройкиНаСервере()
	
	НастройкиПользователей.Очистить();
	
	Если Пользователь = "" и ИмяНастройки = "" Тогда
		Выборка = ХранилищеСистемныхНастроек.Выбрать();
	ИначеЕсли НЕ Пользователь = "" Тогда
		СтруктураОтбора = Новый Структура;
		СтруктураОтбора.Вставить("Пользователь",Пользователь);
		
		Если ЗначениеЗаполнено(КлючОбъекта) Тогда
			СтруктураОтбора.Вставить("КлючОбъекта",КлючОбъекта);
		КонецЕсли;
		
		Выборка = ХранилищеСистемныхНастроек.Выбрать(СтруктураОтбора);
	Иначе 
		СтруктураОтбора = Новый Структура;
		СтруктураОтбора.Вставить("КлючОбъекта",ИмяНастройки);
		Выборка = ХранилищеСистемныхНастроек.Выбрать(СтруктураОтбора);	
	КонецЕсли;
	
	Пока Выборка.Следующий() Цикл
		
		СтрокаТЧ = НастройкиПользователей.Добавить();
		ЗаполнитьЗначенияСвойств(СтрокаТЧ,Выборка);
		
	КонецЦикла;
КонецПроцедуры
...Показать Скрыть
5. Дмитрий Дедков (unlstu) 16.12.16 17:54 Сейчас в теме
(3) Подсистема используется, но для этого отчета варианты отключены на уровне кода.
6. Сан Саныч (herfis) 117 16.12.16 17:56 Сейчас в теме
(5) Это как это "на уровне кода"?
По дефолту альтернативное хранилище вариантов прописывается кажись в свойствах конфы и автоматически применяется ко всем отчетам.
7. Дмитрий Дедков (unlstu) 16.12.16 17:58 Сейчас в теме
(6) Хранилище вариантов системное. По отключению имеется в виду, что свой вариант не создать.
8. Сан Саныч (herfis) 117 16.12.16 18:00 Сейчас в теме
(7) Странно. Подсистема "Варианты отчетов" подразумевает использование альтернативного хранилища вариантов. И если оно прописано в свойствах конфы, то системное использоваться не будет.
9. Дмитрий Дедков (unlstu) 22.12.16 12:32 Сейчас в теме
Решение оказалось таким: при первом открытии отчета по умолчанию в форме подставляется вариант, который указан в основной СКД первым. Жестко установил значение переменной КлючТекущегоВарианта ="ИмяНужногоВарианта" в процедуре ПриСозданииНаСервере формы отчета.
Оставьте свое сообщение