Конфа БП 3.0 (3.0.162.22). Попросили сделать отчет с расчетом средних значений у некоторых полей.
Все сделал, все работает, кроме расчета Средних значений. Число в итоге и реальное среднее значение выводимых строк различаются.
ВычислитьВыражениеСГруппировкойМассив пробовал, не помогло.
Пробовал Суммировать поля и делить на количество строк, не помогло.
Идей что можно исправить нет. Что важно. Если выражать поля через СУММА() и делить на изначальное количество полей, то получается то число, которое есть в итогах при выражении через СРЕДНЕЕ(). При чем если вы посмотрите на скрин, то увидите что все поля суммируются корректно.
Из-за чего оно вообще могло поломаться так? Что можно еще предпринять, чтоб решить проблему?
Чтоб долго не распинаться за сам отчет, прикрепил его.
Все сделал, все работает, кроме расчета Средних значений. Число в итоге и реальное среднее значение выводимых строк различаются.
ВычислитьВыражениеСГруппировкойМассив пробовал, не помогло.
Пробовал Суммировать поля и делить на количество строк, не помогло.
Идей что можно исправить нет. Что важно. Если выражать поля через СУММА() и делить на изначальное количество полей, то получается то число, которое есть в итогах при выражении через СРЕДНЕЕ(). При чем если вы посмотрите на скрин, то увидите что все поля суммируются корректно.
Из-за чего оно вообще могло поломаться так? Что можно еще предпринять, чтоб решить проблему?
Чтоб долго не распинаться за сам отчет, прикрепил его.
Прикрепленные файлы:
![](/upload/forum/upload/093/093ac26180f7394cb6f4a632b6fbbd72.png)
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Сталкивался с подобным.
В итоге выводил все нужные поля из запроса и в "Ресурсах" на языке выражений СКД добивался нужного варианта среднего
Даже такие навороты бывали
В итоге выводил все нужные поля из запроса и в "Ресурсах" на языке выражений СКД добивался нужного варианта среднего
Даже такие навороты бывали
Выбор
когда КодПорядкаСтрок = 4 Тогда
Выбор когда Сумма(СтавокПлан) = 0 Тогда 0
Иначе Окр( 100 * (Сумма(СредняяЧисленностьРаботников)) / (Сумма(СтавокПлан)), 2) Конец
когда КодПорядкаСтрок = 8 Тогда
Выбор когда Сумма(СредняяЧисленностьРаботников) = 0 Тогда 0
Иначе Окр( 100 * (Сумма(УволеноРаботников)) / (Сумма(СредняяЧисленностьРаботников)), 2) Конец
Иначе Сумма(Значение) конец
(3) Странный у вас запрос, чтобы средняя цена была как сумма цен по строкам / количество строк.
Обычно это сумма стоимости / сумму количества.
В любом случае, выводите нужное вспомогательное поле выборки из запроса и его применяйте в расчете.
В моем примере это
В этом примере я выводил "СтавокПлан" и "СредняяЧисленностьРаботников", и собрал из них мой расчет среднего
Обычно это сумма стоимости / сумму количества.
В любом случае, выводите нужное вспомогательное поле выборки из запроса и его применяйте в расчете.
В моем примере это
Выбор когда Сумма(СтавокПлан) = 0 Тогда 0
Иначе Окр( 100 * (Сумма(СредняяЧисленностьРаботников)) / (Сумма(СтавокПлан)), 2) Конец
В этом примере я выводил "СтавокПлан" и "СредняяЧисленностьРаботников", и собрал из них мой расчет среднего
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот