Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 янв 2026, 10:29

не сохраняются данные в хранилище

Автор sali, 16 янв 2026, 12:07

0 Пользователей и 1 гость просматривают эту тему.

sali

пишу все как обычно ничего нового. программно создаю флажок на форме и при каждом открытии флажок переключается, встает в ложь. пишу уже сохранение в хранилище тоже не  отрабатывает
// при создании на сервере
параметрыфлажка = новый структура;
параметрыфлажка.Вставить("флажок", ЭтотОбъект.ПолучатьМаршрутыАгентов);
параметрыфлажка.Вставить("второйфлажок", ЭтотОбъект.ЗапоминатьПоложениеФлажкаМаршрута);
АдресНастройкиМаршрута = ПоместитьВоВременноеХранилище(параметрыфлажка, УникальныйИдентификатор);

// перед записью на сервере
Если ЭтоАдресВременногоХранилища(АдресНастройкиМаршрута) Тогда
ДанныеНастройки = ПолучитьИзВременногоХранилища(АдресНастройкиМаршрута);
ТекущийОбъект.ПолучатьМаршруты = Новый ХранилищеЗначения(ДанныеНастройки);
КонецЕсли;


// перед записью

Если Не ЭтоБП Тогда   
ЭтотОбъект.ЗапоминатьПоложениеФлажкаМаршрута = ЭтотОбъект.ПолучатьМаршрутыАгентов;
параметрыфлажка = новый структура;
параметрыфлажка.Вставить("флажок", ЭтотОбъект.ПолучатьМаршрутыАгентов);
параметрыфлажка.Вставить("второйфлажок", ЭтотОбъект.ЗапоминатьПоложениеФлажкаМаршрута);
АдресНастройкиМаршрута = ПоместитьВоВременноеХранилище(параметрыфлажка, УникальныйИдентификатор);   
КонецЕсли;


// серверная процедура для получения
Если ЭтоАдресВременногоХранилища(АдресНастройкиМаршрута) Тогда
ФлажокМаршруты = ПолучитьИзВременногоХранилища(АдресНастройкиМаршрута);
...
МассивЗначенийДляМаршрутов.Вставить("ФлажокМаршруты", ФлажокМаршруты);

// при открытии
ДанныеИзХранилища = ПолучитьДанныеСХранилища(); 
ЭтотОбъект.МаршрутыАгентов.ЗагрузитьЗначения(ДанныеИзХранилища.МассивМаршрутов);

antoneus

Ну а флажки-то как устанавливаешь при открытии?

sali

antoneus, ставлю истина , записываю. открываю снова форму, а там ложь

antoneus

Цитата: antoneus от 16 янв 2026, 12:22Ну а флажки-то как устанавливаешь при открытии?

sali

antoneus, не понял вопроса. но отвечу - с хранилища получаю

  Если ЭтоАдресВременногоХранилища(АдресНастройкиМаршрута) Тогда
        ФлажокМаршруты = ПолучитьИзВременногоХранилища(АдресНастройкиМаршрута);
...
    МассивЗначенийДляМаршрутов.Вставить("ФлажокМаршруты", ФлажокМаршруты);

// при открытии
ДанныеИзХранилища = ПолучитьДанныеСХранилища();     
Если ДанныеИзХранилища <> Неопределено Тогда
ЭтотОбъект.МаршрутыАгентов.ЗагрузитьЗначения(ДанныеИзХранилища.МассивМаршрутов);
ЭтотОбъект.ПолучатьМаршрутыАгентов = ДанныеИзХранилища.ФлажокМаршруты;
КонецЕсли;     

antoneus

А ДанныеИзХранилища.ФлажокМаршруты - это у нас что?

sali

antoneus, это этотобъект.получатьмаршрутыагентов, то есть значение нашего программно созданного флажка запихнул в переменную

antoneus

А я из кода вижу, что это структура, не?

sali

antoneus, структуру сделал потому что пробовал сохранить значение флажка в двух реквизитах. но это не помогло
а так делал сохранение только флажка, а оно не сохранялось. была мысль что при создании или при открытии формы перезаписывалось значение или как-то в прежнее положение вставало

antoneus

Ну и как сейчас код выглядит? Сохранения и восстановления значения при открытии?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск