在报表设计的过程中,客户很多时候会想看同比、环比的数据,很多人会想到利用日期函数在数据库中处理好然后直接在报表拖出来使用,其实这样加大了数据库的压力,当然也是解决问题的一种思路.今天我们就来说一下如何用Cognos维度函数来解决同比环比的问题.

由于时间有限、Cognos维度函数众多,这里我们就举例我们用到的

1:tuple函数

tuple (  成员 { , 成员 } )
根据指定成员(它们必须来自不同的维度)确定单元格位置(交集)。此功能显式包括所有维度中的当前成员,这些维度未在自变量中另行指定。假定未在评估上下文中指定的任何维度的当前成员是该维度的默认成员。可使用“值”功能来获取此单元格的值。

示例:tuple ( [登山装备] , [传真] )

结果:返回“登山装备”销售额(按传真)。

2:currentMember函数

currentMember ( 层级 )
返回迭代过程中该层级的当前成员。如果“层级”不在所计算的表达式的上下文中,那么假定为其默认成员。此函数显示在“卷动和移动平均值”互动式示样报表中。

3:prevMember函数

prevMember ( 成员 )
返回同一级别中直接排在“成员”前面的成员。此函数出现在“GO 数据仓库(分析)”数据包中的“逐年销售额增长”示样报表中。

示例:prevMember ( [户外防护用品] )

结果:个人附件
示例:prevMember ( [2005] )
结果:2004
---------------------------------------------------------下面用具体的例子来做一下实践---------------------------------------------
日期维度
查询1:单独使用prevMember 和currentMember 函数
日期:currentMember ([产品认购分析].[日期].[日期])
前一天:prevMember ([日期])
交叉表结构如下图:
查询2:使用prevMember 和tuple  函数
前一天认购金额:
tuple([认购金额],prevMember(currentMember([产品认购分析].[日期].[日期])))
交叉表结构如下图:
----------------------------------------------------------------运行结果-------------------------------------------------
--分析结果
1:单独使用Member类函数可以单独的得到上一个或者下一个成员,然后固有维度成员+度量结合可以求出
   固有维度成员的前一个下一个成员的度量值
2:使用tuple和member函数+度量可以再固有度量的基础上直接的求出上一个或者下一个固有维度成员的度
   量值
3:1是先得到成员然后求成员对应的度量值,2是成员和度量值一起采用交叉结果集的形式展现出来
4:可以参考更多的维度函数,日期维度如果具有年-季度-月-周-日的完整结构,就可以更轻松的设计出一些对
   比类型的数据报表了 
 
 
 
 

再谈Cognos报表设计中的维度函数的更多相关文章

  1. 再谈Cognos利用FM模型来做同比环比

    很早之前已经讲过 <Cognos利用DMR模型开发同比环比>这篇文章里说的是不利用过滤器,而是采用 except (lastPeriods (-9000,[订单数据分析].[日期维度].[ ...

  2. 再谈 $* 和 $@ 在 Bash 中的表现

    除非特别说明,本文中出现的 Shell 均指 Bash 4.3.首先说一个基础知识:Shell 中的变量在展开成值(Parameter Expansion)之后,这个值在某些上下文(Context)中 ...

  3. 【校招面试 之 C/C++】第10题 C++不在构造函数和析构函数中调用虚函数

    1.不要在构造函数中调用虚函数的原因 在概念上,构造函数的工作是为对象进行初始化.在构造函数完成之前,被构造的对象被认为“未完全生成”.当创建某个派生类的对象时,如果在它的基类的构造函数中调用虚函数, ...

  4. Unity教程之再谈Unity中的优化技术

    这是从 Unity教程之再谈Unity中的优化技术 这篇文章里提取出来的一部分,这篇文章让我学到了挺多可能我应该知道却还没知道的知识,写的挺好的 优化几何体   这一步主要是为了针对性能瓶颈中的”顶点 ...

  5. 浅谈HTTP中Get与Post的区别/HTTP协议与HTML表单(再谈GET与POST的区别)

    HTTP协议与HTML表单(再谈GET与POST的区别) GET方式在request-line中传送数据:POST方式在request-line及request-body中均可以传送数据. http: ...

  6. C++ Primer 学习笔记_43_STL实践与分析(17)--再谈迭代器【中】

    STL实践与分析 --再谈迭代器[中] 二.iostream迭代[续] 3.ostream_iterator对象和ostream_iterator对象的使用 能够使用ostream_iterator对 ...

  7. 从底层谈WebGIS 原理设计与实现(五):WebGIS中通过行列号来换算出多种瓦片的URL 之在线地图

    从底层谈WebGIS 原理设计与实现(五):WebGIS中通过行列号来换算出多种瓦片的URL 之在线地图 作者:naaoveGI…    文章来源:naaoveGIS    点击数:2063    更 ...

  8. 从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图

    从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图 作者:naaoveGI…    文章来源:naaoveGIS    点击数:1759    更 ...

  9. 再谈MV*(MVVM MVP MVC)模式的设计原理—封装与解耦

    精炼并增补于:界面之下:还原真实的MV*模式 图形界面的应用程序提供给用户可视化的操作界面,这个界面提供给数据和信息.用户输入行为(键盘,鼠标等)会执行一些应用逻辑,应用逻辑(application ...

随机推荐

  1. bazel使用汇总

    最近重构代码之后,打算在本地用bazel来作项目构建.主要是因为brpc已经支持了bazel,所以在此之前料想会简单许多. 安装比较简单,centos直接用yum就行.按照这个指示: https:// ...

  2. 【Python】单例模式Singleton

    前两天一个面试被问到python中单例模式有几种实现方式,只答出了可以用元类实现...然后就想不起来了. 之后翻书,原来这些之前都见过的啊.... 1.手动实现真正创建实例的方法__new__()来实 ...

  3. Kail Linux渗透测试教程之Recon-NG框架

    Kail Linux渗透测试教程之Recon-NG框架 信息收集 信息收集是网络攻击最重要的阶段之一.要想进行渗透攻击,就需要收集目标的各类信息.收集到的信息越多,攻击成功的概率也就越大.本章将介绍信 ...

  4. Redis学习与总结

    Redis是业界普遍应用的缓存组件,研究一个组件框架,最直观的办法就是从应用方的角度出发,将每个步骤的考虑一番,从这些步骤入手去研究往往能够最快的体会到一个组件框架的设计哲学.以Redis为例,每当发 ...

  5. SpringBoot学习(五)

    package org.springboot.sample.config; import org.slf4j.Logger; import org.slf4j.LoggerFactory; impor ...

  6. 【BZOJ 2299】 2299: [HAOI2011]向量 (乱搞)

    2299: [HAOI2011]向量 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 1255  Solved: 575 Description 给你一 ...

  7. Codeforces 980 D. Perfect Groups

    \(>Codeforces\space980 D. Perfect Groups<\) 题目大意 : 设 \(F(S)\) 表示在集合\(S\)中把元素划分成若干组,使得每组内元素两两相乘 ...

  8. ( VIJOS )VOJ 1049 送给圣诞夜的礼品 矩阵快速幂

    https://vijos.org/p/1049   非常普通的矩阵快速幂... 但是我 第一次写忘了矩阵不能交换律... 第一二次提交RE直到看到题解才发现这道题不能用递归快速幂... 第三次提交成 ...

  9. 入侵91网直到拿下服务器#并泄露150w+用户信息

    在补天看到一厂商 首先挖到一处注入 http://www.91taoke.com/index.php?m=Dayi&a=answer&aid=26313 此处注入是dba权限 打算使用 ...

  10. [BZOJ5361]/[HDU6291]对称数

    [BZOJ5361]/[HDU6291]对称数 题目大意: 一个\(n(n\le2\times10^5)\)个结点的树,每个结点有一个权值\(a_i(a_i\le2\times10^5)\),\(m( ...