Таблица значений. Все строки перезаписываются последними значениями

1. parker_j 18.10.19 10:30 Сейчас в теме
ТекстИнструкции =
        "SELECT
        |   [C_Date], [C_Char], [C_Nemeric]
        |FROM [dbo].[Table_1]";
    Попытка
        Команда.CommandText = ТекстИнструкции;
        Выборка = Команда.Execute();
        Если Выборка.BOF = Ложь Тогда
			Выборка.MoveFirst();
			ТЗ = Новый ТаблицаЗначений;
			ТЗ.Колонки.Добавить("C_Date");
			ТЗ.Колонки.Добавить("C_Char");
			ТЗ.Колонки.Добавить("C_Nemeric");
			ИндексЗаписи = 1;
			Пока Выборка.EOF = Ложь Цикл
			ТЗ.Добавить();
			Для НомерСтолбца = 0 По Выборка.Fields.Count-1 Цикл
					ИмяСтолбца = Выборка.Fields.Item(НомерСтолбца).Name;
					ТЗ.ЗаполнитьЗначения(Выборка.Fields(ИмяСтолбца).Value, ИмяСтолбца);
				КонецЦикла;
				ИндексЗаписи = ИндексЗаписи + 1;
				Выборка.MoveNext();
			КонецЦикла;
		КонецЕсли;
	Исключение
		Сообщить(ОписаниеОшибки());
	КонецПопытки;
Показать



Условно в таблице 4 записи и каждая добавленная запись перезаписывается значениями следующей...что не так?
По теме из базы знаний
Найденные решения
4. karamazoff 95 18.10.19 10:42 Сейчас в теме
как минимум в цикле не ТЗ.Добавить(), а
стр = ТЗ.Добавить();
ЗаполнитьЗначенияСвойств(стр,Выборка);
да и цикл на 8-ке с выборкой обычно выглядит иначе

Пока Выборка.Следующий() цикл
 стр = ТЗ.Добавить();
 ЗаполнитьЗначенияСвойств(стр,Выборка);

КонецЦикла;
Показать
5. antz 18.10.19 10:44 Сейчас в теме
стр = ТЗ.Добавить();
Для НомерСтолбца = 0 По Выборка.Fields.Count-1 Цикл
    ИмяСтолбца = Выборка.Fields.Item(НомерСтолбца).Name;
    стр[ИмяСтолбца] = Выборка.Fields(ИмяСтолбца).Value;
КонецЦикла; 
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
8. nomad_irk 71 18.10.19 12:31 Сейчас в теме
(1)
ТЗ.ЗаполнитьЗначения(Выборка.Fields(ИмяСтолбца).Value, ИмяСтолбца);

Вы целиком ТЗ по каждой колонке заполняете значениями текущего поля выборки после добавления в ТЗ строки - не мудрено видеть тот результат, который вы видите в итоге.
2. karamazoff 95 18.10.19 10:35 Сейчас в теме
3. parker_j 18.10.19 10:35 Сейчас в теме
4. karamazoff 95 18.10.19 10:42 Сейчас в теме
как минимум в цикле не ТЗ.Добавить(), а
стр = ТЗ.Добавить();
ЗаполнитьЗначенияСвойств(стр,Выборка);
да и цикл на 8-ке с выборкой обычно выглядит иначе

Пока Выборка.Следующий() цикл
 стр = ТЗ.Добавить();
 ЗаполнитьЗначенияСвойств(стр,Выборка);

КонецЦикла;
Показать
6. parker_j 18.10.19 11:42 Сейчас в теме
5. antz 18.10.19 10:44 Сейчас в теме
стр = ТЗ.Добавить();
Для НомерСтолбца = 0 По Выборка.Fields.Count-1 Цикл
    ИмяСтолбца = Выборка.Fields.Item(НомерСтолбца).Name;
    стр[ИмяСтолбца] = Выборка.Fields(ИмяСтолбца).Value;
КонецЦикла; 
7. AlexandrSmith 68 18.10.19 12:15 Сейчас в теме
Вообще такие вещи в любой конфигурации на каждом шагу.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)