|
Сохранение и восстановление настроек в обработке | ☑ | ||
---|---|---|---|---|
0
user925
14.07.14
✎
12:51
|
Подскажите, пожалуйста.
В обычном приложении создаю внешний отчет с макетом СКД и с формой, куда программно выводится результат отчета. На форме есть табличное поле с отбором из СКД (КомпоновщикНастроек) и стандартные кнопки сохранения и восстановления настроек. Все нормально работает. Возникла необходимость создать внешнюю обработку с аналогичным функционалом; добавил в обработку макет СКД, перед открытием формы добавил код: СхемаКомпоновки = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновки)); КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновки.НастройкиПоУмолчанию); При этом не работает механизм сохранения/восстановления настроек отбора (после открытия отбор пустой). Подскажите, что можно сделать, чтобы работали именно стандартные кнопки сохранить/восстановить значение? |
|||
1
Поpyчик-4
14.07.14
✎
13:08
|
(0) Свойства формы
АвтоматическоеСохранениеДанныхВНастройках СохранениеДанныхВНастройках |
|||
2
Поpyчик-4
14.07.14
✎
13:13
|
Забей. Не сразу увидел "В обычном приложении"
|
|||
3
user925
14.07.14
✎
14:22
|
У обычной формы есть свойства "Сохранять значение", "Сохраняемые значения" и "ВосстанавливатьЗначенияПриОткрытии". Но они не работают в обработке.
|
|||
4
overRock
14.07.14
✎
14:25
|
(3) Они работают только с реквизитами, а не с параметрами запросов и СКД.
|
|||
5
user925
14.07.14
✎
14:31
|
Это не параметры. У обработки есть реквизит КомпоновщикНастроек с типом КомпоновщикНастроекКомпоновкиДанных. В отчете такое сохранение работает. А в обработке почему-то нет.
|
|||
6
vincekrafter
14.07.14
✎
15:22
|
(5) так у тебя же в коде при открытии устанавливаются настройки по-умолчанию
|
|||
7
user925
14.07.14
✎
15:31
|
(6) я пробовал комментировать эту строку
КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновки.НастройкиПоУмолчанию); чтобы при открытии формы загружалась сохраненная прежде настройка, но настройка отбора не восстановилась. Хочется, чтобы работал стандартный механизм (или с минимальным кодом) без функций СохранитЗначение(ВосстановитьЗначение). |
|||
8
user925
15.07.14
✎
11:53
|
Сделал так:
Создал вспомогательный реквизит обработки КомпоновщикНастроекНастройки (произвольный тип) Добавил обработчики формы: Процедура ПередСохранениемЗначений(Отказ) КомпоновщикНастроекНастройки = КомпоновщикНастроек.Настройки; КонецПроцедуры Процедура ПослеВосстановленияЗначений() Попытка СхемаКомпоновки = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновки)); КомпоновщикНастроек.ЗагрузитьНастройки(КомпоновщикНастроекНастройки); Исключение КонецПопытки; КонецПроцедуры В форме в свойство Сохраняемые значения добавил реквизит КомпоновщикНастроекНастройки для сохранения. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |