Как программно сохранить вариант отчета?
☑
0
Demetres
06.05.15
✎
07:37
Доброе утро! Кто в курсе как программно сохранить вариант отчета? Есть отчет у него на управляемой форме расположен элемент с типом "Отчет.КомпоновщикНастроек.Настройки.Отбор" т.е. это не пользовательские настройки. При закрытии формы нужно чтобы отчет сохранял установленные отборы. Сейчас когда закрываешь форому платформа спрашивает "Вариант Х был изменен. Сохранить измененный вариант?", как сделать чтобы в событии "ПриЗакрытии" этот вариант сохранялся автоматически???
1
GenV
06.05.15
✎
07:43
(0) Используй "ХранилищеВариантовОтчетов"
2
Demetres
06.05.15
✎
07:57
(1) Спасибо, сейчас посмотрю
3
Demetres
06.05.15
✎
08:23
(1) Получилось, чуть позже код выложу, может кому поможет.
4
ЧеловекДуши
06.05.15
✎
08:28
(0) Странно, у меня в отчетах на СКД все само помнится.
5
ЧеловекДуши
06.05.15
✎
08:29
(3) Будем признателен :)
6
Demetres
06.05.15
✎
09:34
(4) Само запоминается только то что входит в пользовательские настройки, остальное нет.
7
Demetres
06.05.15
✎
09:34
&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
СохранитьТекущиеНастройкиВариантаОтчета();
// Чтобы не спрашивал сохранение варианта
ВариантМодифицирован = Ложь;
КонецПроцедуры
&НаСервере
Процедура СохранитьТекущиеНастройкиВариантаОтчета()
ИмяОтчетаВнешний = "ВнешнийОтчет.ИмяОтчета";
ИмяОтчетаВстроенный = "Отчет.ИмяОтчета";
ИмяОтчетаТек = "";
КлючТекущегоВарианта = ХранилищеСистемныхНастроек.Загрузить(ИмяОтчетаВстроенный + "/КлючТекущегоВарианта");
ИмяОтчетаТек = ИмяОтчетаВстроенный;
Если КлючТекущегоВарианта = Неопределено Тогда
КлючТекущегоВарианта = ХранилищеСистемныхНастроек.Загрузить(ИмяОтчетаВнешний + "/КлючТекущегоВарианта");
ИмяОтчетаТек = ИмяОтчетаВнешний;
КонецЕсли;
Если КлючТекущегоВарианта = Неопределено Тогда
Возврат;
КонецЕсли;
ОписаниеВарианта = ХранилищеВариантовОтчетов.ПолучитьОписание(ИмяОтчетаТек, КлючТекущегоВарианта);
ВариантОтчета = Отчет.КомпоновщикНастроек.Настройки;
ХранилищеВариантовОтчетов.Сохранить(ИмяОтчетаТек, КлючТекущегоВарианта, ВариантОтчета, ОписаниеВарианта);
КонецПроцедуры
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан