// Процедура, которая считает итоговую сумму
Процедура ОбновитьИтог()
СуммаИтого = 0;
Для Каждого ТекСтрока Из Объект.Животные Цикл
СуммаИтого = СуммаИтого + ТекСтрока.Стоимость;
КонецЦикла;
ИтогоСтоимость = СуммаИтого;
КонецПроцедуры
// А) При открытии документа — сразу показываем итог
Процедура ПриОткрытии()
ОбновитьИтог();
КонецПроцедуры
// Б) При изменении табличной части (добавили/удалили строку)
Процедура ЖивотныеПриИзменении(Элемент)
ОбновитьИтог();
КонецПроцедуры
// В) При изменении цены
Процедура ЖивотныеЦенаПриИзменении(Элемент)
ТекущаяСтрока = Элементы.Животные.ТекущиеДанные;
Если ТекущаяСтрока <> Неопределено Тогда
ТекущаяСтрока.Стоимость = ТекущаяСтрока.Цена * ТекущаяСтрока.Количество;
КонецЕсли;
ОбновитьИтог();
КонецПроцедуры
// В) При изменении количества
Процедура ЖивотныеКоличествоПриИзменении(Элемент)
ТекущаяСтрока = Элементы.Животные.ТекущиеДанные;
Если ТекущаяСтрока <> Неопределено Тогда
ТекущаяСтрока.Стоимость = ТекущаяСтрока.Цена * ТекущаяСтрока.Количество;
КонецЕсли;
ОбновитьИтог();
КонецПроцедуры