Измерение OLAP TIME служб SQL Analysis Services

Привет, я борюсь с добавлением измерения времени в куб OLAP. Я могу заставить работать все в кубе, кроме даты.

В моем представлении исходных данных у меня есть столбец даты и времени.

Я использую Измерения->Новое измерение->Создать измерение времени на сервере. Я получаю хорошее иерархическое измерение времени (дата-месяц-квартал-год).

Позже я добавляю это измерение в куб и определяю регулярную связь со столбцом даты и времени из представления исходных данных (та же таблица, в которой есть данные фактов).

Когда я пытаюсь развернуть куб, я получаю сообщение об ошибке:

Ошибки в механизме хранения OLAP: не удается найти ключ атрибута при обработке: таблица: «имя_таблицы», столбец: «дата_регистрации», значение: «29 марта 2007 г., 15:00:00». Атрибут "Дата"

Может я чего-то не понимаю? В каждом руководстве, которое я могу найти, говорится о календарной таблице, уже созданной в исходной базе данных. Существует множество скриптов, которые создадут для вас календарную таблицу. Но почему я должен? Разве Создать измерение времени на сервере не предназначено для этого?


person Pavel    schedule 14.03.2011    source источник
comment
«15:00:00» — главный красный флаг. Храните ли вы время в своем временном измерении? Обычно они предназначены только для дат без времени, а даты в ваших таблицах фактов должны быть лишены части времени. Время, когда это необходимо, обычно является отдельным атрибутом или, в редких случаях, возможно, отдельным измерением.   -  person mattmc3    schedule 15.03.2011


Ответы (1)


Я предполагаю, что ваше поле даты в вашей таблице фактов должно присутствовать в измерении времени. Возможно, уберите время или создайте вычисляемое поле в дизайнере SSAS. У более опытных людей могут быть лучшие ответы, я сделал только один куб.

person Sam    schedule 14.03.2011
comment
Да, я думаю, это действительно было так. - person Pavel; 15.03.2011
comment
Я добавил вычисляемый столбец - person Pavel; 15.03.2011
comment
convert(datetime,convert(char(15),[registration_date],101)), который оставляет только дату и начал работать. - person Pavel; 15.03.2011
comment
да, я уверен, что я это отметил, но почему-то это не сохранилось :) - person Pavel; 16.03.2011
comment
Спасибо! Будем надеяться, что они решат проблемы на сайтах. - person Sam; 17.03.2011