helpf.pro
Регистрация
 +7 
Распечатать

Реквизит ~ Как сохранять и восстанавливать значения реквизитов на форме?

Как в Управляемом Приложении настроить автосохранение значений полей формы?
Заходим в свойства формы и для значения АвтоматическоеСохранениеДанныхВНастройках устанавливаем значение "Использовать":
title
Затем переходим к реквизитам формы и устанавливаем флажки напротив реквизитов, которые необходимо сохранять:
title



Код 1C v 8.х
 // Сохранение и восстановление настроек формы 
Процедура ПриОткрытии()
// Восстанавливаем сохраненные значения реквизитов
Значение = ВосстановитьЗначение("Обработка_Кодировка");
Если ЗначениеЗаполнено(Значение) Тогда
Кодировка = Значение;
Иначе
Кодировка = 2;
КонецЕсли;

Значение = ВосстановитьЗначение("Обработка_КаталогИмпорта");
Если Значение <> Неопределено Тогда
КаталогИмпорта = Значение;
КонецЕсли;
КонецПроцедуры


Код 1C v 8.х
 Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
// Сохраним значения указанные в реквизитах
СохранитьЗначение("Обработка_Кодировка", Кодировка);
СохранитьЗначение("Обработка_КаталогИмпорта", КаталогИмпорта);
КонецПроцедуры
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 70371
 +7 
Распечатать
Возможно, вас также заинтересует
Как заполнить табличную часть формы программно? 8
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 50
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ
1C и Google Maps 21
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во время решения задачи было реш
1C: Enterprise Development Tools 52
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем
1С Предприятие что это? 12
Что такое 1С? 1С — это фирма , у которой одно из направлений деятельности — разработка программного обеспечения для автоматизации бизнес-процессов предприятий. « 1С:Предприятие » - конкретный продукт, который выпускает компания 1С . Что такое
Посмотреть все результаты поиска похожих
Комментарии
DJ_Serega
31.07.2014 16:06Комментарий: 5
DJ_Serega

Указанный код для толстого клиента (УП).

jetonz
23.07.2012 23:36Комментарий: 4
jetonz
это через конфигуратор делается?
Gorus
15.12.2011 13:14Комментарий: 3
Gorus
Упс, не посмотрел - в нижеприведенном примере для системного хранилища нужно так:
Код 1C v 8.2 УП
 
Объект.Склад = ХранилищеСистемныхНастроек.Загрузить("Склад");

ХранилищеСистемныхНастроек.Сохранить("Склад",, Объект.Склад);
Gorus
15.12.2011 13:09Комментарий: 2
Gorus
Дополню вариант для УП:
При автосохранении значение реквизита будет восстанавливаться всегда. А если нам нужно, к примеру, заполнять реквизит документа "Склад"? Тогда логично будет восстанавливать значение реквизита только для нового документа. Реализовать это можно добавив обработку события формы "ПриЗагрузкеДанныхИзНастроекНаСервере":
Код 1C v 8.2 УП
 &НаСервере
Процедура ПриЗагрузкеДанныхИзНастроекНаСервере(Настройки)
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
Настройки.Очистить();
КонецЕсли;
КонецПроцедуры

Параметр "Настройки" - имеет тип "Соответствие" и манипулируя им можно реализовать произвольный алгоритм восстановления настроек.

Также можно сохранять настройки и программно в системном хранилище:
Код 1C v 8.2 УП
 
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Объект.Ссылка.Пустая() Тогда
Объект.Склад = ХранилищаНастроек.Gorus.Загрузить("Склад");
КонецЕсли;
КонецПроцедуры

&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
ХранилищаНастроек.Gorus.Сохранить("Склад",, Объект.Склад);
КонецПроцедуры
marater
25.03.2011 13:04Комментарий: 1
marater
Чтобы для реквизита у пользователя работало "Сохранить значение"-"Восстановить значение"
надо в конфигураторе у свойств Формы (на которой этот реквизит) поставить галочку "Сохранять значения", затем ниже выбрать по списку реквизиты, которые будут сохранятся этим механизмом.
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.