2011-03-14 53 views
5

嗨 我很努力将时间维度添加到OLAP多维数据集。 我可以让除了日期之外的所有东西都可以工作。SQL分析服务OLAP时间维

在我的源数据视图中我有datetime列。

我使用Dimensions-> New Dimension->在服务器上生成时间维度。 我结束了一个很好的层次时间维度(日期 - 月 - 季度 - 年)。

稍后我将此维添加到多维数据集,并从源数据视图(具有事实数据的同一个表)中定义与日期时间列的常规关系。

当我尝试部署多维数据集,我得到错误:

错误OLAP存储引擎:属性键无法找到时处理:表:“表名”,列:“REGISTRATION_DATE”,值: '3/29/2007 3:00:00 PM'。属性是'日期'

也许我没有得到什么?我可以找到关于已经在源数据库中创建的日历表的每本手册。有很多脚本可以为你创建日历表。但为什么我应该?是不是在服务器上生成时间维?

+1

'3:00:00 PM'是一个主要的红旗。你在时间维度中存储时间吗?它们通常只用于没有时间的日期,而事实表中的日期需要将时间部分剥离。如果需要,时间通常是一个单独的属性,或者在少数情况下可能是其自身的维度。 – mattmc3 2011-03-14 23:51:06

回答

1

我猜你的事实表中的日期字段需要出现在时间维度。也许删除时间或在SSAS设计器中创建一个计算的字段。更多的经验人们可能会有更好的答案,我只做了一个立方体。

+0

是的,我猜这是真的。 – Pavel 2011-03-15 11:06:06

+0

我添加了计算列 – Pavel 2011-03-15 11:09:43

+2

convert(datetime,convert(char(15),[registration_date],101)),它只保留日期并开始工作。 – Pavel 2011-03-15 11:10:23