Заполнение колонки существующего документа

1. TariK 15.03.24 16:47 Сейчас в теме
Добрый день!
Есть документ, в тем существующая табличная часть. Туда прикрутил кнопку, чтоб появлялась колонка. При появлении колонки надо ее заполнить значениями (связь по номенклатуре) в строке.
В запросе получаю ТЗ, с Номенклатурой и нужными значениями. Далее
Выборка = РезультатЗапроса.Выбрать();
		
		Если Выборка.Количество()>0 Тогда
			Пока Выборка.Следующий() Цикл 
				Для каждого Строка ИЗ Объект.Запасы Цикл 
					ЗаполнитьЗначенияСвойств(Строка,Выборка);	
				КонецЦикла;	
				
			КонецЦикла;
		КонецЕсли;
Показать


Код не верный, потому что заполняет колонку последним значением из ТЗ.

Что не так делаю?
По теме из базы знаний
Найденные решения
4. TariK 17.03.24 12:49 Сейчас в теме
Вопрос закрыт. Рабочий код:

Если Выборка.Количество()>0 Тогда 
			Док=Объект.Ссылка.ПолучитьОбъект();
			Пока Выборка.Следующий() Цикл 
				Док=Объект.Ссылка.ПолучитьОбъект();
				ТЧ = Объект.Запасы;
				Отбор=Новый Структура;
   				Отбор.Вставить("Номенклатура",Выборка.Номенклатура); 
				Стр = ТЧ.НайтиСтроки(Отбор); 
				
				Если Стр.Количество()<>0 Тогда
					Стр[0].ОстатокНаСкладе=Выборка.ОстатокНаСкладе;
					Док.Записать();
				КонецЕсли;
					
			КонецЦикла;
		КонецЕсли;
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 76 15.03.24 18:15 Сейчас в теме
(1)
Что не так делаю?

Все. Зачем вам два цикла, один из которых - вложенный?
Так понимаю, надо как-то номер строки в ТЧ и "номер строки" в выборке сделать одинаковыми, либо как-то поиском по ТЧ пользоваться.
3. TariK 15.03.24 20:39 Сейчас в теме
(2) есть из запроса таблица, в которой есть Номенклатура и Количество.
Надо в существующий документ, в существующую таблицу, в колонку (которая программно добавляется ), добавить значения Количество к каждой строчке по Номенклатуре.
4. TariK 17.03.24 12:49 Сейчас в теме
Вопрос закрыт. Рабочий код:

Если Выборка.Количество()>0 Тогда 
			Док=Объект.Ссылка.ПолучитьОбъект();
			Пока Выборка.Следующий() Цикл 
				Док=Объект.Ссылка.ПолучитьОбъект();
				ТЧ = Объект.Запасы;
				Отбор=Новый Структура;
   				Отбор.Вставить("Номенклатура",Выборка.Номенклатура); 
				Стр = ТЧ.НайтиСтроки(Отбор); 
				
				Если Стр.Количество()<>0 Тогда
					Стр[0].ОстатокНаСкладе=Выборка.ОстатокНаСкладе;
					Док.Записать();
				КонецЕсли;
					
			КонецЦикла;
		КонецЕсли;
Показать
Оставьте свое сообщение

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