其他专家规则示例
维度常量
可以在 SCP 中通过计算规则指定针对货品、库位和周期创建的维度常量。这可用于指定维度中的所有元素,以接收常量元素的值,或者为维度常量指定目标计算(筛选文本),后者可能更为恰当。
例如,若要指定所有库位必须接收库位常量 LCONST 的值,专家规则定义文本将为:['LCONST']
。
若要指定带有常量元素目标的计算,筛选文本将为 'LCONST'
。
空值
建议不要在不得存在值的 OLAP 中填充 0 值。相反,请使用空值定义:#NA
。
例如,若要为计算规则(或计算内的已筛选元素)指定空值,专家规则定义文本必须为:#NA
STET 命令
对于计算的一些筛选元素,可以配置 OLAP 规则引擎以使用已存储的现有值(且不针对该筛选/部分选定内容进行计算)。在这种情况下,可以使用 STET(拉丁文意为“保留不变”)命令。根据此命令,OLAP 不会计算目标维度并保留现有值。
GETATTR 命令
通过此功能,可以检索某个立方体维度内的属性,例如可在计算内使用的货品、库位或周期属性。
语法:
GETATTR(DimName,ElemName,ATabID,FieldName)
属性 | 说明 |
---|---|
DimName
|
维度名称:货品、库位、周期、度量和方案。 |
ElemName
|
元素名称。 |
ATabID
|
属性表号(默认为“1”)。 |
FieldName
|
属性字段名称。 |
例如,若要在周期维度内检索某个周期元素的 HPreviousPeriod(分级结构中的上一周期)属性:
GETATTR(%periods, !%periods,1,'HPreviousPeriod')
DB 命令
通过此功能可以查询立方体中的特定值或引用具有类似维度的备选立方体。
语法:
DB(Cube,Dim1Element,Dim2Element,...,DimxElement)
属性 | 说明 |
---|---|
Cube
|
外部立方体的名称。 |
Dim1Element
|
该立方体第一个度量的元素。 |
Dim2Element
|
该立方体第二个度量的元素,依此类推。 |
SCP拥有五个标准维度(货品、库位、周期、度量和方案),而为该循环周期模块(或立方体)定义的每个基准控制属性都具有附加的货品和库位维度。这些维度必须在 DB 命令中按所需顺序指定。如果当前立方体和参考立方体具有共同的维度,可以将特定维度的参数指定为变量。这样,计算就会涵盖立方体共有维度的所有元素。若要指定维度参数作为变量,请指定维度名称(以惊叹号开头)作为参数:!items
。
例如,若要从立方体检索周期元素(用属性 HPreviousPeriod 表示)及其他维度匹配元素的度量 NSO_NET_SUPPLY 值:
DB(%cube, !%items, !%locations, GETATTR(%periods, !%periods,1,'HPreviousPeriod'), !%scenarios, 'NSO_NET_SUPPLY')