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

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 96 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 76 18.10.19 12:31 Сейчас в теме
(1)
ТЗ.ЗаполнитьЗначения(Выборка.Fields(ИмяСтолбца).Value, ИмяСтолбца);

Вы целиком ТЗ по каждой колонке заполняете значениями текущего поля выборки после добавления в ТЗ строки - не мудрено видеть тот результат, который вы видите в итоге.
2. karamazoff 96 18.10.19 10:35 Сейчас в теме
3. parker_j 18.10.19 10:35 Сейчас в теме
4. karamazoff 96 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 69 18.10.19 12:15 Сейчас в теме
Вообще такие вещи в любой конфигурации на каждом шагу.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот