参考信息:属性的点记法
与编程语言中的对象引用类似,您可以在公式中使用点记法。点记法在以下公式中特别有用:
IFF
语句,因为它允许公式根据当前位置而变化。例如,以下公式在实际值版本和计划版本中计算指标的方式不同: 示例:以下公式在实际值版本中以一种方式计算指标,而在计划版本中以另一种方式计算指标:
IFF(this.Version.IsActuals, ACCT.ActualsValue, ACCT.PlanValue)
示例:对于使用逗号表示小数点的浏览器:
IFF(this.Version.IsActuals; ACCT.ActualsValue; ACCT.PlanValue)
如果公式使用点记法属性来引用维度值、属性值和层级,则必须使用代码来引用这些项目,以避免在这些项目的名称匹配时产生歧义。如果您更改了维度值、属性值或层级的代码,请更新公式以匹配代码。
运算对象
运算对象表达式语法使用标准化的 this
用于指示单元格当前位置的术语。
属性 | 描述 |
|---|---|
this.Version
| 返回一个版本对象,该对象可以与其他点 ( . ) 属性,例如this.Version.Name 。请参见下面的对象类型。 |
this.Level
| 返回一个层级对象,该对象可与其他点 ( . ) 属性。 |
this.Account
| 返回一个账户对象,可以与其他点 ( . ) 属性。 |
this.
dimension_name
| 返回指定维度中当前单元格的维度值。如果当前单元格没有指定维度的值,则会返回一个空(空白)对象。仅当维度的名称是合法的标识符(以非数字开头,且仅包含字母、数字和下划线)时,才能访问此属性。如果维度的名称为非标识符(例如名称中包含多个字词),则无法在公式中检索该维度。 |
this.
attribute_name
| 返回指定属性中当前单元格的属性值。如果当前单元格没有指定属性的值,则返回空对象。仅当属性的名称是合法的标识符(以非数字开头,且仅包含字母、数字和下划线)时,才能访问此属性。如果属性的名称为非标识符(例如名称中包含多个字词),则无法在公式中检索该属性。 |
this.<stratum_code>
| 返回 Timeperiod 属于所请求的时间层级类型,其中包含当前单元格的时间坐标。如果请求的时间层级低于当前单元格的状态(粒度更细),此函数将返回 第一个时间 层级。Timeperiod 在当前单元格的时间层级范围内找到的时间层级的层级。 |
对象类型
数据类型表示对象,允许点记法访问这些对象的属性。可用的对象属性包含:版本
引用版本中当前版本的各种属性。 IF
语句。
示例:
IF (this.Version.Name = "Budget 2018", x, y)
示例:对于使用逗号表示小数点的浏览器:
IF (this.Version.Name = "Budget 2018"; x; y)
属性 | 描述 |
|---|---|
Version.Name
| 返回表示版本名称的字符串。如果在计划版本中单元格被实际值覆盖,则系统会将实际值版本视为该单元格的版本。 |
Version.ShortName
| 返回表示版本短名称的字符串。 |
Version.Description
| 返回表示版本描述的字符串。 |
Version.Type
| 返回一个表示版本类型的字符串,如中返回的那样。 exportVersions API返回以下值之一:PLANNING, ACTUALS, VERSION_FOLDER, JOURNAL_ENTRY 。 |
Version.StartDate
| 返回表示时段第一天(即版本的开始日期)的日期值。 |
Version.EndDate
| 返回表示时段最后一天(即版本的结束日期)的日期值。 |
Version.PositionOf
| 返回所提供的时段在整个版本跨度内的相对顺序。初始序列以 0(而非 1)开头,如果时段早于版本开始时间,则顺序数字可以为负数。此函数也适用于版本结束日期后的时段。 |
Version.IsActuals
| 返回一个布尔值,指示此版本是否为实际值版本(这包括类型 ACTUALS 、 SUBACTUALS 、和JOURNAL_ENTRY )。 |
Version.IsGroup
| 返回一个布尔值,表示该版本是否为版本组(而非包含数据的版本)。 |
Version.IsParent
| 返回一个布尔值,表示该版本是否具有子级版本。 |
Version.Parent
| 返回此版本的父级版本。 |
Level
引用当前层级的各种属性。 IF
语句。
示例:
IF (this.Level.Name = "Sales", x, y)
示例:对于使用逗号表示小数点的浏览器:
IF (this.Level.Name = "Sales"; x; y)
属性 | 描述 |
|---|---|
Level.Code
| 返回表示层级代码的字符串。 |
Level.Name
| 返回表示层级名称的字符串。 |
Level.ShortName
| 返回表示层级短名称的字符串。 |
Level.InWorkflow
| 返回一个布尔值,表明该层级是否包含在工作流中。对于已禁用工作流的实例,所有层级均将返回“false”。 |
Level.IsElimination
| 返回一个布尔值,表明该层级是否为抵销层级。对于没有抵销功能的实例,所有层级均将返回“false”。 |
Level.IsTradingPartner
| 返回一个布尔值,表明该层级是否为抵销贸易合作伙伴层级。对于没有抵销功能的实例,所有层级均将返回“false”。 |
Level.Currency
| 返回表示层级 ISO 币种代码的字符串(例如 EUR 或USD )。 |
Level.Parent
| 返回层级 代码 此层级的父级层级;如果此层级没有父级层级(根层级),则返回特殊的“null”层级对象。 |
Level.IsLeaf
| 返回一个布尔值,表明该层级是否为叶层级(即,如果该层级没有子级,则此属性返回“true”)。 |
Account
引用账户中当前账户的各种属性(而非值
)。 IF
语句。
示例:
IF (this.Account.IFRS_Category.Name = "Assets", 1, 0)
示例:对于使用逗号作为小数点的浏览器:
IF (this.Account.IFRS_Category.Name = "Assets"; 1; 0)
属性 | 描述 |
|---|---|
Account.Code
| 返回表示账户代码的字符串。 |
Account.Name
| 返回表示账户名称的字符串。 |
Account.ShortName
| 返回表示账户短名称的字符串。 |
Account.Description
| 返回表示账户描述的字符串。 |
Account.Parent
| 返回此账户的父级账户,如果此账户没有父级(根账户),则返回特殊的“null”账户对象。 |
Account.<
attribute_name > | 返回与指定属性关联的维度值对象。仅当属性的名称是合法的标识符(以非数字开头,且仅包含字母、数字和下划线)时,才能访问此属性。如果属性的名称为非标识符(例如名称中包含多个字词),则无法在公式中检索该属性。 |
Account.isCredit
| 如果账户具有BalanceType of是否为 CREDIT。请注意,部分账户(例如指标账户)既不是借记账户也不是贷记账户。 |
Account.isDebit
| 如果账户具有BalanceType of是否为借记账户。请注意,部分账户(例如指标账户)既不是借记账户也不是贷记账户。 |
维度和属性
属性 | 描述 |
|---|---|
DimensionValue .Code | 返回表示指定维度中维度值代码的字符串。 示例:
IF (this.Region.Code = "East01", 1, 0)
|
DimensionValue .Name | 返回表示指定维度中维度值名称的字符串。 示例:
IF (this.Region.Name = "East", 1, 0)
|
DimensionValue .ShortName | 返回表示维度值短名称的字符串。 |
DimensionValue .Description | 返回表示维度值描述的字符串。 |
DimensionValue .Parent | 返回表示此值的父级维度值,如果此值在维度内没有父级(例如,维度本身为根层级且同时充当自己的父级),则返回特殊的空对象。 示例:
this.DimensionValue.Parent.Name 将返回此维度值的父级名称。 |
DimensionValue .IsLeaf | 返回一个布尔值,表明指定维度中的维度值是否为该维度中的叶值。 |
DimensionValue .<attribute_code > | 返回指定属性的值代码(对应于维度值)。 |
DimensionValue .<attribute_name > | 返回指定属性的值(对应于维度值)。 |
AttributeValue .Code | 返回表示属性值代码的字符串。 |
AttributeValue .Name | 返回表示属性值名称的字符串。 |
AttributeValue .ShortName | 返回表示属性值短名称的字符串。 |
AttributeValue .Description | 返回表示属性值描述的字符串。 |
AttributeValue .Parent | 返回属性值 代码 此值的父级,如果此值在维度内没有父级(例如,“父级”是维度本身的根),则返回特殊的空对象。 |
AttributeValue .IsLeaf | 返回一个布尔值,表明指定属性中的属性值是否为该属性中的叶值。 |
时段
时段表示任意已配置的日历时间层级中的特定时段。不能将时段数据类型与任何其他数据类型进行比较。
示例:
IF (this.Month.NumberOfDays > 30, 1, 0) IF (this.Year.PositionOf (this.Month) > 6, "Past sixth month", "Not") IF (this.Quarter.PositionOf (this.Week) = 1, "First week of qtr", "Not")
属性 | 描述 |
|---|---|
Timeper .Code | 返回时段的代码。该操作将与时间判别式中引用时段的方式相匹配。 |
Timeper .NumberOfDays | 返回时段(包含时段的起始时间和结束时间)内的总天数。 示例:
IF (this.Month.NumberOfDays > 30, 1, 0)
|
Timeper .Parent | 返回包含当前时段且在时间层级连续体中高出一个时间层级(时间精细度更低)的时段。如果没有更高的时间层级,则返回当前时段。 |
Timeper .StartDate | 返回表示时段第一天的日期(与 Version.StartDate).
|
Timeper .EndDate | 返回表示时段最后一天的日期(与 Version.EndDate).
|
Timeper .PositionOf(tp) | 返回一个整数,表示时段 ( tp )在源时段内(相对于其时间层级的其他成员)。退货 0 如果指定的时段 (tp ) 的时间层级不小于Timeper
tp 不在Timeper
|