Как посчитать итоги итогов?

1. Evgen1C 3 10.02.21 14:37 Сейчас в теме
Доброго времени суток!
Суть:
Есть отчет, не СКД, у него есть печатная форма, в этой печатной форме есть ИТОГИ строк делается через запрос, ВыборкаДетальныхЗаписей, все получаем,есть группирвока по подразделениям, итоги идут в разрезе подразделений,например
Подразделение 1
ИТОГО: 123
Подраздление 2
ИТОГО:312
Данные получаю
Итого = Итого + ВыборкаДетальныхЗаписей.Сумма;
КонецЦикла;
Как посчитать эти итого:

Делаю ИтогоВсего = ИтогоВсего + Итого;
Не работает, берет только последнюю строчку

Подскажите в какую сторону копать?
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. andy_zhav 197 10.02.21 16:30 Сейчас в теме
(1) Неплохо было бы код формирования очета посмотреть для начала.
+
3. Evgen1C 3 10.02.21 18:07 Сейчас в теме
(2)А когда ставишь общие итоги, как указать в параметр передавать общий итог?
+
4. Evgen1C 3 10.02.21 18:54 Сейчас в теме
Запрос огромной ну прицип такой

ВЫБРАТЬ
Номенклатура
Сумма
Склад
ИЗ документа
ИТОГИ ПО
Подразделение
Склад

Построение идет:
Подразделение
Склад
Номенклатура Сумма

И вот по складу я могу посчитать
А в целом по подразделению нет

Берет только последнюю строчку от склада
+
5. МихаилМ 10.02.21 21:16 Сейчас в теме
тэги Dev 1cv8.cf БП2.0 БП3.0 ЗУП2.5 ЗУП3.x v8 Платформа 1C v8.2 Беларусь Казахстан Кыргызстан Латвия Молдова Россия Узбекистан Украина 1С Программист Системный администратор Внешний отчет (ert,erf) Печатная форма (mxl) Вопрос 1c

вы очень странный
+
10. SheremetevaValentina 11.02.21 13:37 Сейчас в теме
(5)ученик, наверное
+
16. Evgen1C 3 11.02.21 20:45 Сейчас в теме
6. andy_zhav 197 10.02.21 21:16 Сейчас в теме
(4) больше интересно было бы посмотреть не запрос а обход его результатов
+
7. SheremetevaValentina 11.02.21 12:10 Сейчас в теме
В ИТОГИ добавить ПО ОБЩИЕ. Получится конструкция вроде такой:

ВЫБРАТЬ
Номенклатура
Сумма
Склад
Подразделение
ИЗ документа
ИТОГИ ПО
ОБЩИЕ
Подразделение
Склад

Выборка = Запрос.Выполнить.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Потом в цикле обходите выборку.
Пока Выборка.Следующий() Цикл 
      Выборка.Сумма ///// - Это итоги ОБЩИЕ - выводим в отчет или записываем в переменную
      //Прочие действия
      ВыборкаПоПодразделению = Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
       Пока ВыборкаПоПодразделению.Следующий() ЦИКЛ
         Выборка.Сумма ////// -  Это итоги по подразделению - выводим или запоминаем
        ///////И так далее - нужное количество уровней обхода 
       КонецЦикла;
КонецЦикла 
Показать
+
8. andy_zhav 197 11.02.21 13:05 Сейчас в теме
(7) я не увидел ошибки. Выложите полный код обхода, тогда можно будет увидеть в чем ошибка. Возможно где-то опечатка с выборкой при вычислении суммы
+
9. SheremetevaValentina 11.02.21 13:36 Сейчас в теме
(8)Эмм....Я не автор вопроса. Я предложила автору решение, как я это сделала бы (на скорую руку)
+
12. Evgen1C 3 11.02.21 15:25 Сейчас в теме
(9)Спасибо за совет, нашел косяк в том что для этой строки: Итого = Итого + ВыборкаДетальныхЗаписей.Сумма , я написал Итого = 0 в цикле,а надо было за циклом:)
+
13. SheremetevaValentina 11.02.21 17:29 Сейчас в теме
(12)Если честно, я так и не поняла, зачем вы складываете руками итоги, если они с легкостью необыкновенной получаются в запросе
+
14. Evgen1C 3 11.02.21 20:43 Сейчас в теме
(13) у меня 4 ветки иерархии Итогов, если так можно в запросе, то я не знаю как, сделал как знаю, результат есть. Не исключаю возможности сделать как то красивее, но время...время..
+
15. Evgen1C 3 11.02.21 20:44 Сейчас в теме
(13)Итоги по складу
Итоги по подразделению
Итоги по организации в целом

Можно так в запросе?
+
17. SheremetevaValentina 11.02.21 22:09 Сейчас в теме
(15)Можно. Будет конструкция примерно такая:
ИТОГИ ПО
ОБЩИЕ
Организация
Подразделение
Склад

Любое количество. И обходите потом в цикле эти группировки. Как - я написала выше.

Если скинете ваш код обхода - будет проще.
+
11. andy_zhav 197 11.02.21 13:40 Сейчас в теме
(9) Сори :-) не увидел
+
Внимание! Тема сдана в архив

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