2014-10-31 86 views
1

我是BIDS的新手,试图找出如何正确设置和绑定维度层次结构。在我的项目中,我有一张为表格创建的查找表,该表只能从00:00:00到23:59:59。查找表中的前两行记录了可能存在的空值或时间度量超过24小时的值。注意:这不是选择时间的时间表,而是用于计算时间跨度。如何在SSAS中设置层次结构维度

LookupTable

在看行,你可以看到一个正在运行分钟,运行第二列。运行时间每秒变化,但运行分钟将保持零,直到达到一分钟。

我试图创建一个heiarchy,它允许用户通过运行第二,运行分钟或时间(“TheTime列)来查看记录的计数

当我遇到问题时输出似乎组和计数秒和时间,但呈现一个栏为每分钟。

output

我希望能实现是有一个出来放在那里只有一个0列中列出,然后向下钻取我会看到多个条目运行秒,然后多个条目为TheTime。

我有尺寸设置如下:

dimension

随着尺寸关系设置为

dim2

和对尺寸使用的粒度设定为行驶分钟

granularity

对于层次结构中的每个维度,我都将键映射到SpanID(因为它是查找中唯一的唯一值)。将值设置为相应的字段。

我试过绕过绑定以及维度之间的关系,但没有运气让输出以所需的方式呈现。在sql中运行查询我可以看到数字与计数相匹配,但我似乎错过了如何将所有运行分钟组合在一起。在维度的每个属性的属性中,我确实已启用“鼓励”分组。

我会很感激的就是我丢失或不正确地做

-cheers

更新任何建议或方向:

@迈克尔 - 是对于每个字段TheTime,RunningMinute和RunningSeconds我将密钥设置为SpanId。这是我能得到的尺寸来处理,如果我设置的关键根字段名的唯一方法(RunningMinute重点= 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 2014-10-31 18:09:41

回答

0

感谢迈克尔指着我正确的方向。我不会赞扬这一点,但我会提供更多的信息,说明我做了什么改正。这个。迈克尔在声明中是正确的,即使用另一个属性作为关键字会导致列的重复,就像我看到的那样。为了纠正这个问题,我去了每个属性,并将属性中的KeyColumns值设置为:

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

然后这引起了第二个问题。由于我的查询表在runningsecond和runningminute列中有空值,我收到一个处理错误。要解决这个问题,我必须展开KeyColumns的属性部分,并将NullProcessing属性更改为Unknown。这允许我处理和部署多维数据集