zoukankan      html  css  js  c++  java
  • Cognos8.3函数使用手册(二)

    Cognos8.3函数使用手册(二)  

     
     

    1         top and bottom functions

    1.1         bottomCount

    原型

    bottomCount ( set_exp , index_exp , numeric_exp )

    说明

    此函数根据在"set_exp"的每个成员中算得的"numeric_exp"值对集进行排序,然后返回具有最小"index_exp"值的成员

    案例

    1、bottomCount([每日一览N].[产品].[产品].[险类+],9,[2008年])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]维度,按[2008年]排列后9项

    1.2         topCount

    原型

    topCount ( set_exp , index_exp , numeric_exp )

    说明

    此函数根据在“set_exp”的每个成员中算得的“numeric_exp”值对集进行排序,然后返回具有最大“index_exp”值的成员

    案例

    1、topCount([每日一览N].[产品].[产品].[险类+],9,[2008年])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]维度,按[2008年]排列前9项

    1.3         bottomPercent

    原型

    bottomPercent ( set_exp , numeric_exp1 , numeric_exp2 )

    说明

    此函数与 bottomSum 类似,但阈值是“numeric_exp1占合计的百分数

    案例

    1、bottomPercent([每日一览N].[产品].[产品].[险类+],5,[保单数量])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]占总量的百分比5%

    1.4         bottomPercent

    原型

    bottomPercent ( set_exp , numeric_exp1 , numeric_exp2 )

    说明

    此函数与 bottomSum 类似,但阈值是“numeric_exp1占合计的百分数

    案例

    1、bottomPercent([每日一览N].[产品].[产品].[险类+],5,[保单数量])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]占总量的百分比5%

    1.5         topPercent

    原型

    topPercent ( set_exp , numeric_exp1, numeric_exp2 )

    说明

    此函数与 topSum 类似,但阈值是“numeric_exp1占合计的百分数

    案例

    1、topPercent([每日一览N].[产品].[产品].[险类+],50,[保单数量])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]占总量的百分比50%

    1.6         bottomSum

    原型

    bottomSum ( set_exp , numeric_exp1 , numeric_exp2 )

    说明

    此函数根据在“set_exp”的相应成员中算得的“numeric_exp2进行排序,然后挑选出累加合计值至少为“numeric_exp1的最小项

    案例

    1、bottomSum([每日一览N].[产品].[产品].[险类+],50000,[保单数量])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]累计和至少为50000的最小项

    1.7         topSum

    原型

    topSum ( set_exp , numeric_exp1 , numeric_exp2 )

    说明

    此函数根据在“set_exp”的相应成员中算得的“numeric_exp2值进行排序,然后挑选出累加合计值至少为“numeric_exp1的最大项

    案例

    1、topSum ([每日一览N].[产品].[产品].[险类+],50000,[保单数量])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]累计和至少为50000的最大项

    2        value functions

    2.1         completeTuple

    原型

    completeTuple ( member { , member } )

    说明

    与“tuple”相似,它根据指定成员(它们必须来自不同的维度)确定单元格位置(交集)。 不过,completeTuple 暗指包括自变量中未另外指定的所有维度的默认成员,而非当前成员。 此单元格的值可通过“value”函数求得

    案例

    1、completeTuple([机动车辆保险],[北京])

    解释

    1、返回[机动车辆保险]与[北京]交叉部分

    2.2         Tuple

    原型

    tuple ( member { , member } )

    说明

    根据指定成员(它们必须来自不同的维度)确定单元格位置(交集)。 默认情况下,包括来自所有维度(而非自变量中指定维度)的当前成员。 如果在计算上下文时未指定维度的当前成员,假定为该维度的默认成员。 此单元格的值可通过“value”函数求得

    案例

    1、Tuple([机动车辆保险],[北京])

    解释

    1、返回[机动车辆保险]与[北京]交叉部分

    2.3         value

    原型

    value ( tuple )

    说明

    返回由数组确定的单元格的值。请注意,度量维度的默认成员是默认度量

    案例

    1、value(tuple([机动车辆保险],[营销],[保单数量]))

    解释

    1、返回[机动车辆保险]与[北京]交叉部分[保单数量]值

    2.4         caption

    原型

    caption ( level | member | set_exp )

    说明

    返回指定自变量的标题值

    案例

    1、caption([每日一览N].[产品].[产品].[险类+])

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]名称列表

    2.5         substring

    原型

    substring ( string_exp , integer_exp1 [ , integer_exp2 ] )

    说明

    返回 string_exp 的子字符串。该子字符串从 integer_exp1 位置开始连续 integer_exp2 个字符或者到 string_exp 的末尾(如果未指定 integer_exp2)。 string_exp 中的第一个字符处在位置 1

    案例

    1、substring(caption([每日一览N].[产品].[产品].[险类+]),3,5)

    解释

    1、返回[每日一览N].[产品].[产品].[险类+]名称的第3位起,最大5个字

    2.6         roleValue

    原型

    roleValue ( string [ , member | set_exp ] )

    说明

    返回与指定上下文中的某一角色(其名称由“string”指定)相关联的属性值。只在一些特定情况下,第二个自变量是可选的,这时它可由其他上下文派生得出。应用程序通过按角色而非按查询项目 ID 来访问属性,可以灵活地在不同的数据源和模型之间切换。(对于按维度建模的关系数据源,应由建模者分配角色。)为所有数据源类型的成员定义的内蕴角色包括:“_businessKey”、“_memberCaption”、“_memberDescription”、“_memberUniqueName

    案例

    1、roleValue('_businessKey',[每日一览N].[日期].[日期].[年])

    解释

    1、返回日期类似("2001-01-01","2001-12-31")

    2.7         ordinal

    原型

    ordinal ( level )

    说明

    返回指定级别的序数值(表示与根级别的距离,从零算起)

    案例

    1、ordinal(level(CurrentMember([每日一览N].[产品].[产品])))

    解释

    1、返回0

    3        案例分析:

    3.1         维度成员组合(unionmembers

    案例1:

    查询表达式:union(members([ids_fspg_biz_ply_calc].[机构维].[机构维].[部门组]),members([ids_fspg_biz_ply_calc].[机构维].[机构维].[分公司]),all)

    显示结果如下:

    入账保费本期

    已决赔款本期

    估损金额本期

    机构成员

    220310530.5

    108985584.8

    528845589.7

    南京本部

    48389677.91

    33200885.17

    193426745

    盐城中心支公司

    60755345.77

    32554842.83

    142384001.5

    淮安中心支公司

    46081415.58

    38516559.7

    166707329.3

    泰州中心支公司

    161412453.6

    85677317.32

    342161360.8

    徐州中心支公司

    100655687.5

    61145560.48

    238695714.5

    南通中心支公司

    60831595.83

    51106269.86

    217132228.5

    连云港中心支公司

    54474389.38

    31071380.93

    136790267

    扬州中心支公司

    75524214.4

    48535118.38

    173261278.9

    镇江中心支公司

    9015433.8

    14423796.63

    52141826.04

    宿迁中心支公司

    837450744.2

    505217316.1

    2191546341

    江苏分公司

    3.2         维度成员排序组合(hierarchizeunionmembers

    案例1:

    查询表达式:hierarchize(union(members([ids_fspg_biz_ply_calc].[机构维].[机构维].[部门组]),members([ids_fspg_biz_ply_calc].[机构维].[机构维].[分公司]),all))

    显示结果如下:

    入账保费本期

    已决赔款本期

    估损金额本期

    机构成员

    837450744.2

    505217316.1

    2191546341

    江苏分公司

    220310530.5

    108985584.8

    528845589.7

    南京本部

    48389677.91

    33200885.17

    193426745

    盐城中心支公司

    60755345.77

    32554842.83

    142384001.5

    淮安中心支公司

    46081415.58

    38516559.7

    166707329.3

    泰州中心支公司

    161412453.6

    85677317.32

    342161360.8

    徐州中心支公司

    100655687.5

    61145560.48

    238695714.5

    南通中心支公司

    60831595.83

    51106269.86

    217132228.5

    连云港中心支公司

    54474389.38

    31071380.93

    136790267

    扬州中心支公司

    75524214.4

    48535118.38

    173261278.9

    镇江中心支公司

    9015433.8

    14423796.63

    52141826.04

    宿迁中心支公司

    3.3         维度类别组合(hierarchylevelslevel

    通过下图了解类别与层级,A是“机构维”树,包含层级与成员,B是各层级与明细成员,互相独立层次,hierarchy()函数,对A和B都可以选择。选择A和成员名称,只显示根节点与当前成员集,

    3.4         RS中基于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].[日期].[日期])),[销售金额]))

  • 相关阅读:
    学习 Apache FileMatchs 规则
    yii2 vendor/bower/jquery/dist not exist
    Ionic POST提交使用普通表单提交数据
    Yii2 在php 7.2环境下运行,提示 Cannot use ‘Object’ as class name
    Yii2 使用 npm 安装的包
    phpStorm 激活
    Chrome DNS_PROBE_FINISHED_NXDOMAIN
    Yii2 中使用ts
    Js 对 浏览器 的 URL的操作
    js 编码、解码与asp.net 编码、解码
  • 原文地址:https://www.cnblogs.com/HondaHsu/p/2172225.html
Copyright © 2011-2022 走看看