У штатного запроса, можно было написать:
Пока Запрос.Группировка(1)=1 Цикл
// Выводим Филиал и Итог по всем товарам
Пока Запрос.Группировка(2)=1 Цикл
// Выводим Товар и Итог по товару
Группировать() лучше использовать, если нужны итоги по группировкам. А если просто перебор - быстрее отсортировать прямо в запросе по нужным полям, да простым перебором таблицы...
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший