Явно включаем вложенные строки при поиске и суммировании. Значения категорий равны нулю, поэтому количество не задваивается.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Выполняйте на сервере. Не записывайте итог 5 в количество самой группы перед суммированием.
Два вложенных товара имеют один код A-01 и количества 2 и 3.
Числовая колонка имеет явные квалификаторы: 1 разряд, 0 дробных, неотрицательный знак, диапазон 0–9. Нулевое количество группы и количества 2 и 3 входят в него; сумма потомков равна 5.
Категории = Новый ДеревоЗначений;
Категории.Колонки.Добавить("Код", Новый ОписаниеТипов("Строка"));
Категории.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(1, 0, ДопустимыйЗнак.Неотрицательный)));
Группа = Категории.Строки.Добавить();
Группа.Код = "Группа";
Для Номер = 1 По 2 Цикл
Товар = Группа.Строки.Добавить();
Товар.Код = "A-01";
Товар.Количество = Номер + 1;
КонецЦикла;
БезВложенных = Категории.Строки.Найти("A-01", "Код", Ложь);
Сообщить(БезВложенных = Неопределено);
ПервыйТовар = Категории.Строки.Найти("A-01", "Код", Истина);
Если ПервыйТовар <> Неопределено Тогда
Сообщить(ПервыйТовар.Количество);
КонецЕсли;
ВсеТовары = Категории.Строки.НайтиСтроки(Новый Структура("Код", "A-01"), Истина);
Сообщить(ВсеТовары.Количество());
Сообщить(Категории.Строки.Итог("Количество", Ложь));
Сообщить(Категории.Строки.Итог("Количество", Истина));
Категории.Строки.Сортировать("Количество Убыв", Истина);
Сообщить(Группа.Строки.Получить(0).Количество);Разбор по шагам
Создаём одну корневую группу и двух вложенных товаров.
Найти с Ложь проверяет только текущий уровень; с Истина ищет и во вложенных коллекциях.
НайтиСтроки возвращает массив всех совпадений; Итог с Истина суммирует также потомков.
Сортировать с Истина сортирует каждую вложенную коллекцию; строки не выравниваются в общий список.
Как проверить результат
Без вложенных строк товар не найден; первый найденный товар имеет количество 2, все совпадения — 2 строки.
Итог только корня равен 0, с потомками — 5; после сортировки первым внутри группы идёт количество 3.
Ожидаемый результат
Правильно найдены и отсортированы вложенные товары, их общий объём — 5.
На что обратить внимание
Если родитель уже содержит сумму потомков, рекурсивный Итог задвоит её.
Поиск первой строки не заменяет поиск всех совпадений; массив НайтиСтроки хранит ссылки на существующие строки.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.