Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
Сентябрь 24, 2018, 03:25:47 am

Автор Тема: Разная агрегация для разных измерений.  (Прочитано 583 раз)

Оффлайн haltol

  • Новичок
  • *
  • Сообщений: 18
  • Страна: ru
  • Рейтинг: +0/-0
    • Просмотр профиля
Доброго дня.

Необходимо рассчитывать среднесписочную. Есть несколько измерений, для всех измерений кроме месяц, год нужно делать Sum. А для измерений  месяц, год AVG.

Оффлайн admin

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1177
  • Страна: ru
  • Рейтинг: +127/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #1 : Июль 03, 2018, 01:58:03 pm »
Привет,
можно пример данных в табличном виде с желаемым результатом?

Оффлайн haltol

  • Новичок
  • *
  • Сообщений: 18
  • Страна: ru
  • Рейтинг: +0/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #2 : Июль 03, 2018, 03:08:49 pm »
Табличка здесь.
https://share.rosinter.ru/owncloud/public.php?service=files&t=0cf69dd8619f30b9e9cced8fbd731fec

Есть Location
Административно-хозяйственное Управление
2017   Jan
srdSp2 = 2.451612903

2017   Feb
3.451612903

2017   Mar
4.129032258


2017   1Q
(
2.451612903
+
3.451612903
+
4.129032258
) / кол-во месяцев

3.344086022

Как то так



Неофициальный форум пользователей QlikView & Qlik Sense

Re: Разная агрегация для разных измерений.
« Ответ #2 : Июль 03, 2018, 03:08:49 pm »

Оффлайн admin

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1177
  • Страна: ru
  • Рейтинг: +127/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #3 : Июль 04, 2018, 07:35:10 am »
Привет.
в каком виде/объекте требуется вывод результата?

(Извините, но вы не имеете доступа к галерее)

В Qlik Sense аналогично.

Оффлайн haltol

  • Новичок
  • *
  • Сообщений: 18
  • Страна: ru
  • Рейтинг: +0/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #4 : Июль 04, 2018, 08:09:15 am »
Спасибо именно так и делал,

avg({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} Aggr(sum({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} [srdSp2]), Month,Year,Location))

но Location не складывается. А тоже дает среднее. А мне нужно, что бы по всем измерениям кроме Month,Year - было суммирование.



Когда убираю Location из Aggr, то отдельно по ним нету итогов. Но общий итог за период корректный.
avg({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} Aggr(sum({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} [srdSp2]), Month,Year))


Оффлайн haltol

  • Новичок
  • *
  • Сообщений: 18
  • Страна: ru
  • Рейтинг: +0/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #5 : Июль 04, 2018, 08:19:03 am »
Так формала выглядит в MS Analisys

IIF([Период].currentmember.level is [Период].Levels(1),

round( ([Measures].[Srd Sp2] /
COUNT(Descendants([Период].currentmember,[Период].levels(3)))),2),

(IIF([Период].currentmember.level is [Период].Levels(2),

round(([Measures].[Srd Sp2] /
COUNT(Descendants([Период].currentmember,[Период].levels(3)))),2),

(IIF([Период].currentmember.level is [Период].Levels(0),

round(([Measures].[Srd Sp2] /
COUNT(Descendants([Период].currentmember,[Период].levels(3)))),2),

round([Measures].[Srd Sp2],2))))))

Оффлайн admin

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1177
  • Страна: ru
  • Рейтинг: +127/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #6 : Июль 04, 2018, 09:13:36 am »
В настройках меры выберите опцию для итогов. У вас он считает по выражению, а если выбрать Sum то будет складывать строки.

Неофициальный форум пользователей QlikView & Qlik Sense

Re: Разная агрегация для разных измерений.
« Ответ #6 : Июль 04, 2018, 09:13:36 am »

Оффлайн haltol

  • Новичок
  • *
  • Сообщений: 18
  • Страна: ru
  • Рейтинг: +0/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #7 : Июль 04, 2018, 09:21:37 am »
Извините, а Sence - это можно? Где это ставится?

Оффлайн haltol

  • Новичок
  • *
  • Сообщений: 18
  • Страна: ru
  • Рейтинг: +0/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #8 : Июль 04, 2018, 09:25:10 am »
А вот накрапал. Вроде корректно считает.

Sum({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} [srdSp2])
/
Count(DISTINCT {<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>}  Month)

Оффлайн admin

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1177
  • Страна: ru
  • Рейтинг: +127/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #9 : Июль 04, 2018, 02:13:40 pm »
Извините, а Sence - это можно? Где это ставится?
В опциях меры - Функция итоговых значений

Оффлайн haltol

  • Новичок
  • *
  • Сообщений: 18
  • Страна: ru
  • Рейтинг: +0/-0
    • Просмотр профиля
Re: Разная агрегация для разных измерений.
« Ответ #10 : Июль 05, 2018, 01:14:00 pm »
Спасибо.

Неофициальный форум пользователей QlikView & Qlik Sense

Re: Разная агрегация для разных измерений.
« Ответ #10 : Июль 05, 2018, 01:14:00 pm »