以编程方式创建与事实维度的关系

时间:2018-08-31 10:43:27

标签: ssas

我想基于同一个事实表在度量组和“事实维度”之间创建“事实”类型的关系。

我使用下面的代码

var cubeDim = OlapCube.Dimensions.GetByName(dimensionName);
var regMgDim = new RegularMeasureGroupDimension(cubeDim.ID);
olapMeasureGroup.Dimensions.Add(regMgDim);

var cubeDimKeyAttr = cubeDim.Dimension.KeyAttribute;
var mgAttr = regMgDim.Attributes.Add(cubeDimKeyAttr.ID);
mgAttr.Type = MeasureGroupAttributeType.Granularity;

但是它是作为“常规”类型关系创建的。

我希望它以这样的方式结束(请参阅关系类型):

enter image description here

1 个答案:

答案 0 :(得分:0)

设法弄清楚了。

代码应为

var cubeDim = OlapCube.Dimensions.GetByName(dimensionName);
var regMgDim = new DegenerateMeasureGroupDimension(cubeDim.ID);
olapMeasureGroup.Dimensions.Add(regMgDim);

虽然名称DegenerateMeasureGroupDimension不明显,但它是创建事实维度关系的维度。