Рассчитать сумму в каждой строке нажатием кнопки

1. Evgen1C 3 18.09.20 10:59 Сейчас в теме
Доброго времени суток! Подскажите пожалуйста, хочу чтобы в каждой строке посчитать сумма нажатием кнопки, брал наподобие пример:

Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

Но, по данной формуле высчитывается только первая строка. Пробовал еще так:

СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные;

для каждого СтрокаТабличнойЧасти ИЗ Элементы.Материалы Цикл
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецЦикла;

Выдает ошибку Итератор не определен

HELP!!!
По теме из базы знаний
Найденные решения
2. FatPanzer 18.09.20 11:04 Сейчас в теме
Выдает ошибку Итератор не определен

Естественно, вы же обращаетесь к элементу на форме, а не к данным формы или к данным объекта формы. Элементы не содержат никаких данных.

Организуйте цикл по самой таблице. Посмотрите у Элементы.Материалы путь к данным. Вот именно его и надо использовать вместо "Элементы.Материалы"
3. farengeit00 18.09.20 11:04 Сейчас в теме
для каждого СтрокаТабличнойЧасти ИЗ объект.тч Цикл
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецЦикла;
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. FatPanzer 18.09.20 11:04 Сейчас в теме
Выдает ошибку Итератор не определен

Естественно, вы же обращаетесь к элементу на форме, а не к данным формы или к данным объекта формы. Элементы не содержат никаких данных.

Организуйте цикл по самой таблице. Посмотрите у Элементы.Материалы путь к данным. Вот именно его и надо использовать вместо "Элементы.Материалы"
5. Evgen1C 3 18.09.20 11:13 Сейчас в теме
8. Sergex 58 18.09.20 11:30 Сейчас в теме
(2) :) щас вы его научите ога... если конфа типовая почему бы не использовать ТИПОВЫЕ механизмы расчета итоговых показателей, например?

Какие? - смотрите модули ПродажиКлиентСервер, ОбработкаТабличнойЧастиКлиент, ОбработкаТабличнойЧастиСервер

Хотя сам принцип на глупые вопросы давать издевательски подробные, но вредные советы мне - нравится :)
9. FatPanzer 18.09.20 11:35 Сейчас в теме
(8) Я никого не собираюсь учить пользованию типовыми решениями для конкретных прикладных задач. А вот пониманию того, почему выскакивают ошибки - буду еще как. В данном случае я показал как организовать цикл. Как и для чего он его будет использовать, правильно или неправильно с прикладной точки зрения - мне на данный момент все равно, потому что это уже частные случаи применения.
3. farengeit00 18.09.20 11:04 Сейчас в теме
для каждого СтрокаТабличнойЧасти ИЗ объект.тч Цикл
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецЦикла;
4. Evgen1C 3 18.09.20 11:13 Сейчас в теме
(3)Спасибо огромное! Все получилось.
6. TimurD 6 18.09.20 11:21 Сейчас в теме
Странно что этот код не сработал
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры
7. FatPanzer 18.09.20 11:25 Сейчас в теме
Почему же, автор пишет что этот код прекрасно срабатывает. Но ровно по тому назначению, для которого и написан - только для пересчета одной строки - той, которая является активной (текущей).
10. slasher777 23.09.20 10:23 Сейчас в теме
Спасибо огромное! Все получилось
11. user1949521 04.07.23 15:29 Сейчас в теме
А что получилось ? Ты же написал расчет суммы по нажатию кнопки ? А в выше указанном решении при вводе показаний (КОЛИЧЕСТВО) и потом (ЦЕНА) автоматом встает цена в сумму. А Где по кнопке ?))))
Оставьте свое сообщение

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