【发布时间】:2020-12-09 21:02:54
【问题描述】:
我有一个内置在 SSAS 中的旧多维数据集。我们将收入分解为时间维度,如下所示:
| fiscal week | Date | Revenue | Prior Year Revenue |
|---|---|---|---|
| 53 | 2020-12-31 | $5000 | ???? |
| 49 | 2020-12-03 | $1000 | $200 (should be $100) |
| 50 | 2020-12-10 | $2000 | $300 |
| 51 | 2020-12-17 | $3000 | $400 |
| 52 | 2020-12-24 | $4000 | $500 |
如您所见,第 53 个会计周未按正确的排序顺序显示。
由于我们使用的维度“上一年,周”,这已成为一个问题。这试图从同一财政周而不是上一年获取收入。它通过调用ParallelPeriod([FiscalWeek], 52), [Measures].[Revenue]) 来完成此操作。
我认为正在发生的事情是因为第 53 周是在月初,ParallelPeriod 将其计为它跳过的间隔之一。这会导致“上一年度”列显示第 50 个财政周,应该是 51,第 51 个应该是 52,等等。
有没有办法对这些日期进行排序?我已经尝试了明显的KeyColumnstuff 并检查了源视图,似乎没有什么应该导致这种糟糕的排序。
提前致谢——我对这些东西知之甚少,我有点被抛到这里了。
编辑:
我在这里取得了一些进展,但仍有问题。似乎每年有 53 个会计周都会出现这个问题——第 53 周的排序不正确。
时间维度分解如下:
- 年份
- 季度
- 月
- 周数
- 账单日期
账单日期按顺序排序,但出于某种原因,浏览器中的星期如下所示:
- 53
- 1
- 2
- 3
- ...
-
Week Number 属性似乎是关闭的。 OrderBy 属性设置为AttributeKey,OrderByAttribute 属性设置为Bill Date attribute。但是,仅查看发布日期就会发现它们已正确排序。
编辑:
按照以下响应的建议将OrderBy 设置为Key 后,某些月份层次结构似乎出现故障。例如,某些月份包含不属于的星期。例如:
* Sep
* 35
* 2020-08-27
* 36
* 2020-09-03
* 37
* 2020-09-10
* 38
* 2020-09-17
* 39
* 2020-09-24
这是月份属性的 XML:
<Attribute>
<ID>Month attribute</ID>
<Name>Month attribute</Name>
<Type>Months</Type>
<EstimatedCount>48</EstimatedCount>
<KeyColumns>
<KeyColumn>
<DataType>WChar</DataType>
<Source xsi:type="ColumnBinding">
<TableID>dbo_dim_time</TableID>
<ColumnID>fiscalmonth</ColumnID>
</Source>
</KeyColumn>
</KeyColumns>
<NameColumn>
<DataType>WChar</DataType>
<Source xsi:type="ColumnBinding">
<TableID>dbo_dim_time</TableID>
<ColumnID>fiscalmonth</ColumnID>
</Source>
</NameColumn>
<AttributeRelationships>
<AttributeRelationship>
<AttributeID>Pubdate attribute</AttributeID>
<Name>Pubdate attribute</Name>
</AttributeRelationship>
</AttributeRelationships>
<OrderBy>AttributeKey</OrderBy>
<OrderByAttributeID>Pubdate attribute</OrderByAttributeID>
<MembersWithData>NonLeafDataHidden</MembersWithData>
<MembersWithDataCaption>(* data)</MembersWithDataCaption>
<AttributeHierarchyVisible>false</AttributeHierarchyVisible>
</Attribute>
【问题讨论】:
标签: sql-server ssas cube