![]() |
|
корректное заполнение таблицы значений массивами | ☑ | ||
---|---|---|---|---|
0
EternalFeitan
29.08.21
✎
16:26
|
Всем привет!
Как правильно в цикле заполнять ТЗ массивом? то есть у меня цикл по выборке, в итерации заполняю массив по условию, потом этот массив закидываю в новую строчку ТЗ, на след итерации очищаю массив, и заново все. Проблема в том что при очищении массива, очищается и значение в строчке ТЗ, так как я в строчку записывал не само значение массива, а ссылку на массив и он изменился. В С++ можно было обрабатывать такой момент, а как в 1С правильно сделать? |
|||
1
youalex
29.08.21
✎
16:30
|
не надо очищать, пересоздавай каждый раз новый.
|
|||
2
EternalFeitan
29.08.21
✎
16:32
|
(1) Да теперь норм, спасибо
|
|||
3
серый КТУЛХУ
29.08.21
✎
17:06
|
ну или обращайся напрямую типа СтрокаТаблицыЗначений.ТутуМассив.Добавить.....
|
|||
4
minsk1s
29.08.21
✎
18:27
|
// Выгружаем колонку названий таблицы значений в массив
МассивОвощей = ТЗ.ВыгрузитьКолонку("Овощь"); |
|||
5
серый КТУЛХУ
29.08.21
✎
18:46
|
(4): идиосикразия или альтернативность когнитивной одаренности?
|
|||
6
ДенисЧ
29.08.21
✎
18:48
|
(3) Ага. "Значение не является объектным типом..."
|
|||
7
серый КТУЛХУ
29.08.21
✎
19:05
|
(6): или вы врете или у вас просто где-то в коде ошибка. потому что вотето - работает:
ТестТз = Новый ТаблицаЗначений; ТестТз.Колонки.Добавить("ТестМассив",Новый ОписаниеТипов("Массив")); ТестТзСтрока = ТестТз.Добавить(); ТестТзСтрока.ТестМассив = Новый Массив; ТестТзСтрока.ТестМассив.Добавить(1); ТестТзСтрока.ТестМассив.Добавить(2); ТестТзСтрока.ТестМассив.Добавить(3); ТестТзСтрока = ТестТз.Добавить(); ТестТзСтрока.ТестМассив = Новый Массив; ТестТзСтрока.ТестМассив.Добавить(4); ТестТзСтрока.ТестМассив.Добавить(5); ТестТзСтрока.ТестМассив.Добавить(6); ТестТзСтрока.ТестМассив.Добавить(7); Возврат; // тут брейкпойнт, и по Shift+F9: //ТестТз[0].ТестМассив.Количество() = 3 //ТестТз[1].ТестМассив.Количество() = 4 |
|||
8
ДенисЧ
29.08.21
✎
19:07
|
(7) У чёрту перья, я должен видеть в (3) "Новый Массив"
|
|||
9
серый КТУЛХУ
29.08.21
✎
20:23
|
(8): ты удивишься, но (7) работает и без "ТестТзСтрока.ТестМассив = Новый Массив;"
|
|||
10
ДенисЧ
29.08.21
✎
20:34
|
(9) Меня не интересует (7)
Меня интересует (3) |
|||
11
серый КТУЛХУ
29.08.21
✎
20:35
|
(10): так (3) это фактически фрагмент (7), которое работает и без ТестТзСтрока.ТестМассив = Новый Массив;
|
|||
12
VladZ
29.08.21
✎
23:38
|
(0) Зачем это нужно?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |