2014-10-31 7 views
1

Я новичок в BIDS и пытаюсь выяснить, как правильно настроить и связать иерархию измерений. В моем проекте у меня есть справочная таблица, созданная для времени, эта таблица идет только с 00:00:00 до 23:59:59. Первые две строки в таблице поисковой таблицы содержат либо значения Null, которые могут существовать, либо если время превышает 24 часа. Примечание: это не временная таблица для выбора времени, а используется для подсчета промежутка времени.Как настроить измерение иерархии в SSAS

LookupTable

Глядя на ряды вы можете видеть бегущую минуту и ​​работает второй столбец. Runningsecond изменяется на каждую секунду, но минутная работа останется на нуле до достижения минуты.

Я пытаюсь создать heiarchy, который позволяет пользователю просматривать количество записей, запустив второй, работает минуту или по времени ("Thetime столбец)

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

output

то, что я надеялся достичь было иметь из положить, где есть только один 0 столбец в списке, а затем свертывание I будет видеть несколько записей для запуска секунд, а затем несколько записей для TheTime.

У меня есть настройка размера следующим образом:

dimension

С установкой размерного отношения, как

dim2

и зернистость на размерном использовании устанавливается в запущенных минутах

granularity

Для каждого из измерений в иерархии у меня есть ключ, сопоставленный с SpanID (поскольку это единственное уникальное значение в поиске). со значениями, установленными в соответствующее поле.

Я попытался заменить привязки, а также отношения в пределах измерения, но не повезло в том, что вывод будет сделан желаемым образом. Запуск запросов в sql. Я могу видеть, что числа совпадают до количества, но мне кажется, что мне не хватает того, как сгруппировать все работающие минуты вместе. В свойствах каждого атрибута измерения у меня включена поддержка группировки Encourage.

Я бы признателен за любые предложения или направления на то, что я пропускаю или делать неправильно

-cheers

обновлений:

@Michael - Да Для каждого поля Thetime, RunningMinute и RunningSeconds I установите ключ на SpanId. Это был единственный способ, которым я мог бы получить размер обрабатывать, если я установить ключ к имени корневого поля (RunningMinute Key = RunningMinute, я получаю следующую ошибку OLAP:

Errors in the OLAP storage engine: A duplicate attribute key has been found when processing: 
Table: 'dbo_dimTimeSpan', 
Column: 'RunningSecond', 
Value: '0'. The attribute is 'Running Second'. 
+0

Что такое KeyColumn для запуска минут? Если для столбца ключа задано значение SpanId или RunningSecond, это приведет к текущему поведению. – Michael

ответ

0

Благодаря Майклу для указывая мне в правильном направлении.Я не буду признавать это, но я предоставлю дополнительную информацию о том, что я сделал, чтобы исправить. Эта. Майкл был прав в утверждении, что использование другого атрибута в качестве ключа приведет к дублированию столбцов, как я видел. Чтобы исправить это, я пошел к каждому атрибуту и ​​установите значение KeyColumns в свойствах для:

RunningMinute = RunningMinute 
RunningSecond = RunningSecond 
TheTime = SpanId (this was the main key) 

Это тогда вызвало второй вопрос. Поскольку моя таблица поиска имела нулевые значения в runningsecond и runminute columns, я получал ошибку обработки. Чтобы исправить это, мне пришлось развернуть раздел свойств для KeyColumns и изменить свойство NullProcessing на Unknown. Это позволило мне обработать и развернуть куб

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