2013-06-07 5 views
1

Я пытаюсь моделировать продажи «Тот же магазин» в моем кубе.Как фильтровать измерение на основе текущего уровня другого измерения?

У меня стандартное измерение даты с фискальным календарем.

У меня есть размер местоположения с моими магазинами. В каждом хранилище есть атрибуты, указывающие Год, Период, Квартал и Неделя, которые указывают, когда данный магазин должен быть включен в отчет.

Я думаю, что маршрут, который я хочу взять, - это динамический набор имен, но я мог ошибаться.

В принципе, я хочу посмотреть продажи в сети в течение любых заданных временных рамок, и появятся только продажи Same Store. Если я смотрю на уровень Year, ему нужно проверить атрибут Year. Если я ищу уровень Quarter, вам нужно проверить атрибут Quarter.

Как написать свой фильтр в зависимости от уровня измерения Date? Могу ли я иметь именованный набор SameStores, который содержит всю эту логику?

EDIT: Дополнительная информация по просьбе @Prabhash Дж

Вот мнение я хочу посмотреть на - но я надеюсь, что есть способ сделать это достаточно динамичным, чтобы обрабатывать любые вычисления даты.

    2012   2013 
Store 1   1.2   1.3 
Store 2    --   1.6 
Store 3   1.3   2.1 

На этом уровне Store 2 имеет значение «2013» для SameStoreStartYear.

Если я бурить до 2013:

   Q1   Q2   Q3 
Store 1  0.2   0.3  0.5  
Store 2   --   --   .4 
Store 3  0.2   0.3  0.5 

На этом уровне, магазин 2 имеет значение "3" для SameStoreStartMonth.

Продолжается следующим образом: до уровня «Неделя».

Я написал несколько MDX, чтобы получить набор магазинов, который должен быть включен относительно Date.Fiscal.currentmember, но только для сравнения на уровне года. Работал над тем, чтобы сделать его относительно уровня сверления, а также по иерархии Date.Fiscal.

У меня было это как именованный набор, но он использует кортежи, и Named Set не появляется в кубе - я считаю, что это связано с тем, что он использует несколько иерархий, и он не знает, куда его поместить.

Вот мой MDX до сих пор:

select 
filter(
([Date].[Fiscal].[Fiscal Year], [Location].[Store].[Store]), 
[Location].[SameStoreYearBegin].currentmember.properties("Key") 
    <= [Date].[Fiscal].currentmember.properties("Key")) 
on 0 
from Sales 

ответ

1

Можете ли вы уточнить, что вы подразумеваете под «смотреть на чистых продаж для любого заданного периода времени, и имеют только Одинаковые продажи магазина показать»? можете ли вы подготовить какой-то макет для ваших текущих и ожидаемых результатов?

+0

Спасибо, что ответили - я добавил дополнительную информацию. – IronicMuffin

Смежные вопросы