Коллеги, добрый день. Задача: В кубе есть 4 даты (Дата поступления обращения, Дата регистрации обращения, Дата выполнения обращения, Дата закрытия обращения). Необходимо посчитать кол-во Поступивших, Зарегистрированных, Выполненных и Закрытых обращений за период, указанный на дэшборде. Т.е. даты, которые есть в кубе должны соответствовать период, который указывается на дэшборде,
Просьба подсказать возможные варианты реализации.
При этом также просьба подсказать как в управляющем дэше указать период? Верно ли я понимаю, что нужно делать какое-то “синтетическое” измерение в кубе для этого?
Коллеги, то есть на дашборде у нас будет один фильтр по периоду.
Но отбирать данные от должен по четырем разным измерениям (четыре типа периодов).
Добрый день!
Подобную логику возможно реализовать.
Так как даты могут быть разными в 4-х столбцах, но на фильтр потребуется выносить скорее всего через UNION.
После потребуется написать отдельный расчёт для каждого параметра.
Верно ли я поняла, что нет возможности указать в управляющем дэше одно какое-то дополнительное измерение, а нужно все 4 даты выводить и указывать в них одинаковые периоды?
Отдельный расчет для каждого параметра где необходимо писать? В кубе или в конфиг-файле?
Необходимо в фильтре выводить одно измерение как для всех уникальных значений дат из всех 4-х столбцов.
После необходимо написать запросы к разным полям в кубе, при этом потребуется получить границы выбранного диапазона.
Пример:
with dt as (select max(orderdate) as max_dt, min(orderdate) as min_dt from xxxx where ${filters(orderdate)})
select …
where date1 <= max_dt and date1 >= min_dt
Коллеги, задача решена путем написания запроса с набором JOIN где в каждой секции с JOIN выполняется расчет требуемых значений и их группировка. Далее по ключам (главное общий ключ по дате), стыковка с основным запросом.