Имя: Пароль:
1C
 
Список значений в таблице значений, почему разное поведение ?
0 Mr_Best
 
19.08.15
10:45
Добрый день коллеги!
Наблюдаю на мой взгляд странное поведение платформы 1С:Предприятие 8.3 (8.3.5.1486) которое проявляется в следующем:

Есть таблица значений "ТекущиеПараметрыФормулы", определенная как реквизит обычной формы. На этой же форме размещено табличное поле, где в качестве источника данных указана данная таблица значений и собственно определены колонки. Среди этих колонок одна колонка по имени "Значение" имеет составной тип данных и среди доступных типов указан тип "СписокЗначений".

Так вот, пишу код:

Параметр = ТекущиеПараметрыФормулы.Найти(1, "Параметр");

получаю строку и переопределяю значение ячейки в этой строке:

Список = Новый СписокЗначений;
Список.Добавить(ПолеСчет.ТипСравнения);
Список.Добавить(ПолеСчет.Значение);
                
Параметр.Значение = Список;

в этом случае, в переменной "Параметр" ячейка "Значение" меняется, а в самой таблице все остается по старому (т.е. значение не переопределилось)

но, если написать такой код:

Параметр = ТекущиеПараметрыФормулы.Найти(1, "Параметр");

Список = Новый СписокЗначений;
Список.Добавить(ПолеСчет.ТипСравнения);
Список.Добавить(ПолеСчет.Значение);
                
ТекущиеПараметрыФормулы[ТекущиеПараметрыФормулы.Индекс(Параметр)].Значение = Список;

тогда значение переопределяется.

Кто нибудь может подсказать почему так? Т.е. почему список значений не устанавливается как любой другой реквизит через переменную хранящую ссылку на строку таблицы значений?
1 Ёпрст
 
19.08.15
10:49
(0) обнови строки в Тп
2 Ёпрст
 
19.08.15
10:49
после присвоения
3 Mr_Best
 
19.08.15
10:50
(1)(2) можно подробнее пожалуйста ?
4 Mr_Best
 
19.08.15
10:51
(1)(2) это метод табличного поля?
5 Ёпрст
 
19.08.15
10:54
(4) да
6 Ёпрст
 
19.08.15
10:55
ТабличноеПоле (TableBox)
ОбновитьСтроки (RefreshRows)
Вариант синтаксиса: Обновить все

Синтаксис:

ОбновитьСтроки()
Описание варианта метода:

Выполняет обновление всех видимых строк табличного поля.



Скорее всего, значение всё же поменялось, а на форме ты этого не вижишь
7 Mr_Best
 
19.08.15
10:59
(6) в отладчике тоже не вижу, я на форму даже не смотрю.
В результате исполнения этой строчки:
Параметр.Значение = Список;
значение должно изменится и в ТекущиеПараметрыФормулы (в самой таблице), а не меняется ...
8 Mr_Best
 
19.08.15
10:59
зато так меняется:
ТекущиеПараметрыФормулы[ТекущиеПараметрыФормулы.Индекс(Параметр)].Значение = Список;
9 НЕА123
 
19.08.15
11:09
(0)
>Параметр.Значение = Список

кто такой Параметр?
10 НЕА123
 
19.08.15
11:11
(9) не, не, не увидел, пардон.