计算当前期间值与期初值之间的差。
返回值
返回一个字符串,表示要在 HS.EXP 函数中使用的正确表达式。
语法
Difference (PointOfView, View)
表 12-7 Difference 函数的语法
参数 | 有效值 |
---|---|
PointOfView |
帐户、Custom1….4、ICP 成员的有效组合,例如 "A#CASH.C1#[None].I#[ICP Top]" |
View |
必须是下列值之一: ""(双引号)- 基于为正在处理的方案定义的默认视图(YTD 或 Periodic)。 YTD - 指定年初至今选项,将覆盖为方案设置的默认视图。 Periodic - 用户指定周期性选项,将覆盖为方案设置的默认视图。 |
详细说明
此函数计算当前期间值与期初值之间的差。(当前 - 期初)
传递给函数的 View 参数不同,派生的期初值也不同。
如果 View 参数为 YTD,则期初值将取自前一年的最后一个期间。
如果 View 参数为 Periodic,则期初值将取自当年的前一个期间。如果当前期间是当年的第一个期间,则期初值取自前一年的最后一个期间。
如果 View 参数为空白 (" "),则期初值将基于方案的默认数据视图。
示例
对于 2014 年 1 月、2 月和 3 月,CASH 帐户将根据 Difference 函数中使用的 View 参数返回以下值。为正在处理的方案设置的默认视图是 YTD。Difference 函数从当前期间值中减去期初值。
表 12-8 Difference 函数的示例
帐户 | Dec2013 | Jan2014 | Feb2014 | Mar2014 |
---|---|---|---|---|
A#Cash |
900 |
1,200 |
1,100 |
1,500 |
Difference("A#Cash", "" |
不适用 |
300 |
200 |
600 |
Difference("A#Cash", "YTD") |
不适用 |
300 |
200 |
600 |
Difference("A#Cash", "Periodic") |
不适用 |
300 |
-100 |
400 |
示例脚本
' sample statement written in the calling routine
Sub Calculate()
Hs.Exp = "A#DiffCash" & Difference("A#Cash", "YTD")
End Sub
' programming of the DIFFERENCE function
FUNCTION DIFFERENCE(strPOV,strVIEW)
IF strVIEW = "" THEN
strVIEW = HS.SCENARIO.DEFAULTVIEW ("")
END IF
strPOV = UCASE(strPOV) strVIEW = UCASE(strVIEW)
IF strVIEW = "PERIODIC" THEN
DIFFERENCE = """&" "&strPOV"-& strPOV & ".P#PRIOR" &"")""
ELSEIF strVIEW = "YTD" THEN
DIFFERENCE = "" ("&strPOV &""-" & strPOV & ".Y#PRIOR.P#LAST" &"") ""
ELSE
EXIT FUNCTION
END IF
END FUNCTION