собственно такой вот код: проще говоря мне нужна колонка со строчным видом реквизита.
Для Каждого Строка Из ТЗСпециф Цикл
ТЗПозицииСтрока.Очистить();
Для Каждого СтрПозиции Из Строка.Позиции Цикл
НовСтрока = ТЗПозицииСтрока.Добавить();
НовСтрока.Позиция = Строка(СтрПозиции.Позиция)+"_"+ Строка(СсылкаНаСпецификацию.Наименование);
КонецЦикла;
Строка.ПозицииСтрока = ТЗПозицииСтрока;
а=0;
КонецЦикла;
все произходит четко, кроме одного:запись во вторую строку непонятным образом записывает теже данные (второй строки) в первую, запись в третью записывает в первую и во вторую и тд. В итоге все строки заполнены одним и темже значением - последним введенным. В чем может быть причина?
Помогло так:
Для Каждого Строка Из ТЗСпециф Цикл
ТЗПозицииСтрока = Новый ТаблицаЗначений;
ТЗПозицииСтрока.Колонки.Добавить("Позиция", Новый ОписаниеТипов("Строка"));
Для Каждого СтрПозиции Из Строка.Позиции Цикл
НовСтрока = ТЗПозицииСтрока.Добавить();
НовСтрока.Позиция = Строка(СтрПозиции.Позиция)+"_"+ Строка(СсылкаНаСпецификацию.Наименование);
КонецЦикла;
Строка.ПозицииСтрока = ТЗПозицииСтрока;
а=0;
КонецЦикла;
то есть вместо очистить заново создать, а так получалось что таблица одна и таже, записывается видимо просто ссылка на нее
Потому что ТЗПозицииСтрока.Очистить() не создает экземлпляр новой таблицы, а использует старую. Соответственно ссылки в предыдущих строках на эту таблицу не меняются и программа думает, что это одна и та же таблица
Независимо от того, куда вы едете — это в гору и против ветра!