ТЗТовары - Таблица значений:
ТЗТовары = Новый ТаблицаЗначений;
ТЗТовары.Колонки.Добавить("Номенклатура",,"Номенклатура");
ТЗТовары.Колонки.Добавить("КоличествоУпаковокФакт",,"КоличествоУпаковокФакт");
***********************************заполнил его. а потом сделаю поист в нем:
ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить("Номенклатура", Строка(ВыборкаДетальныеЗаписи.Номенклатура));
НайденныйТовар = ТЗТовары.НайтиСтроки(ПараметрыОтбора);
нашел ету строку и хочу изменить значение "КоличествоУпаковокФакт ":
Для Каждого СтрТЧ Из НайденныйТовар Цикл
СтрТЧ.КоличествоУпаковокФакт = СтрТЧ.КоличествоУпаковокФакт+10;
КонецЦикла;
но значение не изменяется. почему?
буду очен благодарен если поможете(извините из за ошибок в тексте)
вот это вес процедура:
Процедура ВыборкаДокументов()
ТЗТовары = Новый ТаблицаЗначений;
ТЗТовары.Колонки.Добавить("Номенклатура",,"Номенклатура");
ТЗТовары.Колонки.Добавить("КоличествоУпаковокФакт",,"КоличествоУпаковокФакт");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПересчетТоваровТовары.Номенклатура,
| ПересчетТоваровТовары.КоличествоУпаковокФакт,
| ПересчетТоваровТовары.Ссылка
|ИЗ
| Документ.ПересчетТоваров.Товары КАК ПересчетТоваровТовары
|ГДЕ
| ПересчетТоваровТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания";
Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);
Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить("Номенклатура", Строка(ВыборкаДетальныеЗаписи.Номенклатура));
НайденныйТовар = ТЗТовары.НайтиСтроки(ПараметрыОтбора);
Если НайденныйТовар.Количество() = 0 Тогда
НЭлемент = Док.Товары.Добавить();
НЭлемент.Номенклатура =ВыборкаДетальныеЗаписи.Номенклатура;
НЭлемент.КоличествоУпаковокФакт = ВыборкаДетальныеЗаписи.КоличествоУпаковокФакт;
НЭлемТЗ = ТЗТовары.Добавить();
НЭлемТЗ.Номенклатура = Строка(ВыборкаДетальныеЗаписи.Номенклатура);
НЭлемТЗ.КоличествоУпаковокФакт = ВыборкаДетальныеЗаписи.КоличествоУпаковокФакт;
Иначе
Для Каждого СтрТЧ Из НайденныйТовар Цикл
СтрТЧ.КоличествоУпаковокФакт = СтрТЧ.КоличествоУпаковокФакт+ВыборкаДетальныеЗаписи.КоличествоУпаковокФакт;
КонецЦикла;
КонецЕсли;
КонецЦикла;
Док.Записать();
КонецПроцедуры
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший