Имя: Пароль:
1C
1С v8
Ошибка при подсчете итогов в отчете на СКД
0 koresh
 
04.12.15
12:32
Добрый день!

Имеется простенький отчет на СКД. Запрос следующий:

ВЫБРАТЬ

   SellOut.Контрагент,

   SellOut.Автомобиль.Модель,

   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ SellOut.Автомобиль) КАК Колво,

   SellOut.ТипРегистрации

ИЗ

   РегистрСведений.SellOut КАК SellOut

ГДЕ

   SellOut.RetailDate МЕЖДУ &НачДата И &КонДата

СГРУППИРОВАТЬ ПО

   SellOut.Контрагент,

   SellOut.Автомобиль.Модель,

   SellOut.ТипРегистрации

Если выводить отчет в таблицу, где в строках стоит Дилер, а в колонках Модель, то в отчете неправильно считаются Итого в некоторых колонках.
http://prntscr.com/9a67ov
http://prntscr.com/9a67u1

Если же в строках стоит Модель, а в колонках Дилер, то итоги считаются правильно.
http://prntscr.com/9a683u

С чем связан данный парадокс? Как его победить?

Используем 1С 8.2.17.169
1 aleks_default
 
04.12.15
12:44
убери количество(различные) из запроса и поставь в ресурсы СКД
2 Franchiser
 
гуру
04.12.15
12:52
Используй ВТ + разыменование.
3 koresh
 
04.12.15
13:59
(1) все то же самое :(
4 koresh
 
04.12.15
14:24
(2) Попробовал временные таблицы. Тоже безрезультатно. Куда еще разыменование впихнуть?
5 hhhh
 
04.12.15
14:37
3+2+1 = 86. Похоже на правду.
6 koresh
 
04.12.15
14:40
(5) В той колонке все правильно. Просто не все строки попали в скриншот. Проблема в том, что в некоторых колонках выдает нулевой итог.
7 Steini
 
04.12.15
14:40
Я так понимаю, здесь надо использовать встроенные функции СКД такие, как ВЫЧИСЛИТЬВЫРАЖЕНИЕ() и т.п. На вкладке "Ресурсы" для каждой группировки прописать свою функцию
8 koresh
 
04.12.15
14:47
(7) Ух ты, круто! Можете дать пример?