|
8.2 Восстановить сохраненное значение реквизита обработки | ☑ | ||
---|---|---|---|---|
0
lena8push
06.03.13
✎
21:24
|
Здравствуйте.
УТ11. Обработка. Реквизит обработки. Выведен на форму. В свойствах формы стоит АвтоматическоеСохранениеДанныхВНастройках = Использовать. Если открыть обработку, установить в форме значение этого реквизита, закрыть обработку, и заново открыть - все окей, реквизит восстанавливает заданное значение. Вопрос: как восстановить значение этого реквизита В КОДЕ, без интерактивного открытия формы? |
|||
1
Живой Ископаемый
06.03.13
✎
21:36
|
Через ЗначениеВФайл ЗначениеИзФайла.
самое ужасное в этом. что нельзя определить программно для каких Элементов выставленно стоп... это УФ? |
|||
2
lena8push
06.03.13
✎
21:37
|
Да, управляемые формы. УТ11 же)
|
|||
3
lena8push
06.03.13
✎
21:39
|
Значение в файл и из файла совсем не то. Обработка встроенная. Я вызываю ее метод регламентным заданием. При вызове из кода ее реквизиты не заполнены (хотя когда я открываю ее интерактивно, реквизиты подставляются). Значит, они хранятся где-то в хранилищах настроек.
|
|||
4
lena8push
06.03.13
✎
21:52
|
Похоже, никто не в курсе...
|
|||
5
mistеr
06.03.13
✎
22:14
|
(3) >При вызове из кода ее реквизиты не заполнены
Правильно, тебе нужно их заполнить. Сохраняй отдельно через СохранитьЗначение() и восстанавливай перед запуском. |
|||
6
lena8push
06.03.13
✎
22:30
|
Не вижу метода СохранитьЗначение()..
Можете, пожалуйста, более развернуто пояснить? |
|||
7
lena8push
06.03.13
✎
22:34
|
В общем, я вижу такой выход:
При закрытии обработки сохранять выставленные значения в справочнике "Варианты отчетов". При программном обращении, восстанавливать настройки оттуда |
|||
8
mistеr
06.03.13
✎
22:42
|
(7) Правильно поняла. Можно в справочнике, можно в хранилище настроек. СохранитьЗначение это глобальный метод, СП подскажет.
|
|||
9
lena8push
06.03.13
✎
22:46
|
(8) Я первым делом полезла в СП.
Метода СохранитьЗначение нет. О_о Есть Только СохранитьЗначения Описание: Тип: Картинка. Сохранить набор сохраняемых формой значений. То есть явно не то. Собственно, мне-то и хотелось обойтись без использования справочника для сохранения настроек. |
|||
10
mikecool
06.03.13
✎
22:48
|
заведи реквизиты обработки а не формы
|
|||
11
mikecool
06.03.13
✎
22:48
|
+ 10 иначе что будешь восстанавливать, если формы нет?
|
|||
12
lena8push
06.03.13
✎
22:52
|
(10) Это и есть реквизиты формы, читай (1):
Реквизит обработки. Выведен на форму |
|||
13
lena8push
06.03.13
✎
22:54
|
Вопрос только кажется простым, на деле оптимальное решение найти трудно.
Я не могу. Вижу только дурацкое сохранение настроек в справочник! |
|||
14
Конфигуратор1с
06.03.13
✎
23:24
|
(13) и чем оно дурацкое?
|
|||
15
lena8push
06.03.13
✎
23:34
|
Короче, через справочник все номально работает.
Если кому-то пригодится: Процедура ВосстановитьНастройкиОбработки() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВариантыОтчетов.ХранилищеЗначений, | ВариантыОтчетов.КлючВарианта, | ВариантыОтчетов.Ссылка |ИЗ | Справочник.ВариантыОтчетов КАК ВариантыОтчетов |ГДЕ | ВариантыОтчетов.КлючОбъекта = ""Обработка.обр_СнятиеРезервов.Форма.Форма"" | И ВариантыОтчетов.ТипВариантаОтчета = ЗНАЧЕНИЕ(Перечисление.ТипыВариантовОтчетов.Предопределенный)"; Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл Если Выборка.КлючВарианта = "Обработка.обр_СнятиеРезервов.Форма.Форма.СрокСнятияРезерва" Тогда СрокСнятияРезерва = Выборка.ХранилищеЗначений.Получить(); КонецЕсли; Если Выборка.КлючВарианта = "Обработка.обр_СнятиеРезервов.Форма.Форма.СтатусДокумента" Тогда СтатусДокумента = Выборка.ХранилищеЗначений.Получить(); КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
16
lena8push
06.03.13
✎
23:35
|
(14) Конфигуратор, ну как мнимум тем, что эти настройки мона удалять, открыв справочник.
|
|||
17
mistеr
07.03.13
✎
00:45
|
(16) С сохранением реквизитов в форме та же фигня. Юзер открыл форму, поигрался, регламентное задание сломалось.
|
|||
18
Конфигуратор1с
07.03.13
✎
01:00
|
(17)+100
(16)сохранение настроек в форме еще хуже, так как их гарантировать вообще не реально. Более того, настройки в отчете привязывать к регламентному заданию как то совсем грустно. Проще сделать регистр сведений и сохранять туда параметры |
|||
19
8vC1
07.03.13
✎
01:04
|
http://infostart.ru/public/165442/
Вот, может поможет. |
|||
20
lena8push
07.03.13
✎
01:06
|
(18) Плодить регистры сведений - не менее нелицеприятно же.
А от того, что настроек не будет, я защитилась просто: если после восстановления настроек реквизиты не заполнены, заполняем значениями "по умолчанию", обговоренными с заказчиком. Но должен быть способ, ДОЛЖЕН БЫТЬ, восстанавливать настройки из хранилища. При открытии формы реквизиты заполняются же! Мне уже просто безумно любопытно, КАК это сделать. |
|||
21
lena8push
07.03.13
✎
01:09
|
(19) Спасибо огромное!!!
Таки да, это именно то, что мне было нужно! |
|||
22
8vC1
07.03.13
✎
01:11
|
(21) Не забудь, плюсануть автора, я плюсанул :-)
|
|||
23
Конфигуратор1с
07.03.13
✎
01:28
|
(20) Да как раз регистр в данном контексте подходит лучше, чем сохранение формы, ибо позволяет при необходимости менять корректно их, чего не скажешь с хранилищем.
"А от того, что настроек не будет, я защитилась просто: если после восстановления настроек реквизиты не заполнены, заполняем значениями "по умолчанию", обговоренными с заказчиком." а если они заполнены , но не корректно? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |