Имя: Пароль:
1C
1С v8
Сохранение данных в реквизит с типом Хранилище
0 MistaEr
 
18.06.19
11:17
Здравствуйте!

Реквизит с типом хранилище значений в табличной части.
Пока редактирую форму, значение для этого реквизита храню во временном хранилище. Адрес хранилища пишу в реквизит формы табличной части.

&НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
        
                Для Каждого Стр Из Объект.ИмяТЧ Цикл
            ТекАдрес = Стр["Адрес"];
            Если ТекАдрес <> "" Тогда
                ТекущийОбъект.ИмяТЧ[Стр.НомерСтроки-1]["РеквизитХранилище"] = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(ТекАдрес));
            КонецЕсли;
        КонецЦикла;
    

КонецПроцедуры

Прооверяю в
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)

РеквизитФормыВЗначение("Объект").ИмяТЧ[0]["РеквизитХранилище"].Получить() выдает неопределено
а
ТекущийОбъект.ИмяТЧ[0]["РеквизитХранилище"].Получить() выдает сохраненное значение

Сохраняется значение при записи или  нет, если да, как его прочитать?
1 MistaEr
 
18.06.19
11:27
Нет никакой подсказки?
2 hhhh
 
18.06.19
11:31
(1) а в чем вопрос? ТекущийОбъект и Объект - это разные переменные, в них разные данные. Поэтому и называется ТекущийОбъект. Экономят всё на клиент серверных вызовах, обратно значение в Объект не передают.
3 MistaEr
 
18.06.19
11:57
(2) Я пробовал ЗначениеВРеквизитФормы(ТекущийОбъект, "Объект"), не помогло
4 lodger
 
18.06.19
12:25
(0) перед записью не пробовал?
5 MistaEr
 
18.06.19
12:54
(4) Работает!!! Спасибо!

Почему то я думал, если я добавлю строчку в ТЧ, перед записью этой строчки еще не будет в Текущем объекте, а будет только в объекте