Cognos8.3函数使用手册
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Cognos8.3函数使用手册
分类:cognos
1top and bottom functions 1.1bottomCount
1.2topCount
1.3bottomPercent
1.4bottomPercent
1.5topPercent
1.6bottomSum
1.7topSum
2value functions 2.1completeTuple
2.2Tuple
2.3value
2.4caption
2.5substring
2.6roleValue
2.7ordinal
3案例分析:
3.1维度成员组合(union、members)
案例1:
查询表达式:union(members([ids_fspg_biz_ply_calc].[机构维].[机构维].[部门组]),members([ids_fspg_biz_ply_calc].[机构维].[机构维].[分公司]),all)
3.2维度成员排序组合(hierarchize、union、
members)
案例1:
查询表达式:hierarchize(union(members([ids_fspg_biz_ply_calc].[机构维].[机构维].[部门组]),members([ids_fspg_biz_ply_calc].[机构维].[机构维].[分公司]),all))
3.3维度类别组合(hierarchy、levels、level)
通过下图了解类别与层级,A是“机构维”树,包含层级与成员,B是各层级与明细成员,互相独立层次,hierarchy()函数,对A和B都可以选择。
选择A和成员名称,只显示根节点与当前成员集,
3.4RS中基于CUBE数据源的同期、本年累计等MDX
写法
所有的例子中:month参数指向月粒度、year参数指向年粒度。
日期层次结构为:年、季度、月、日
1. 去年同期:即查询月为200905的话,该指标为200805该指标
total([金额] within set parallelPeriod([日期].[日期层次结
构].[年],1,[日期].[日期层次结构].[月]->?mon?))
2. 本年累计:即查询月为200905的话,该指标为200901-200905期间发生total([金额] within set periodsToDate([日期].[日期层次结构].[年],[日期].[日期层次结构].[月]->?mon?))
3. 去年同期止累计:即查询月为200905的话,该指标为200801-200805期间发生
total([金额] within set periodsToDate([日期].[日期层次结
构].[年],parallelPeriod([日期].[日期层次结构].[年],1,[日期].[日期层次结构].[月]->?mon?)))
4. 有史以来累计发生:查询月为200805,则为从时间第一个节点截止200805期间发生
1)如果提示使用的是[日期].[日期层次结构].[月].[月 - Key]
total([金额] within set
filter(
members([日期].[日期层次结构].[月]),
[日期].[日期层次结构].[月].[月 - Key]<=?month?
))
2)如果提示使用的是[日期].[日期层次结构].[月]
total([金额] within set
lastperiods(1000,[日期].[日期层次结构].[月]->?month?))
5. 查询粒度为年,统计上半年、下半年
上半年余额(即时点类指标):
total([余额] within set subset(descendants([日期].[日期层次结
构].[年]->?year?,[日期].[日期层次结构].[月]),5,1))
上半年发生额(即时段类指标):
total([金额] within set subset(descendants([日期].[日期层次结
构].[年]->?year?,[日期].[日期层次结构].[月]),0,6))
这里subset()这个函数和substring()类似,只不过subset截取的是一个set (集合)中的某些成员而已,并且注意subset()第一个是0而不是1,这个和数组是类似的.
6、同比与环比
同比增长(以日期为行维)
([销售金额]- value(tuple(parallelPeriod([ARPD-Sale].[日期].[日
期].[年]),[销售金额])))
/
value(tuple(parallelPeriod([ARPD-Sale].[日期].[日期].[年]),[销售金额]))
环比增长(以日期为行维)
([销售金额]-value(tuple(prevMember(currentMember([ARPD-Sale].[日期].[日期])),[销售金额])))
/
value(tuple(prevMember(currentMember([ARPD-Sale].[日期].[日期])),[销售金额]))
我的更多文章。