webi报表中的上下文
来源:互联网 发布:k11防水涂料跟js 区别 编辑:程序博客网 时间:2024/05/16 09:26
如有转载请注明出处:http://blog.csdn.net/donkey2004112103/archive/2010/12/13/6074276.aspx。
webi报表中通常使用In,ForEach,ForAll来计算上下文,不过理解这些公式最好还是通过例子,而不是看文档。我就把这些公式通过例子好好的给大家讲解一下。以下的例子我就以island resorts marketing这个universe为例。
1. IN operator
in是非常好理解的一个公式它指明了计算公式的上下文包含哪些,什么意思了?比如下图:
如果我添加一列,想要得到country中每年的汇总金额,那该怎么做了?这就要用到in了,通过如下公式即可解决:
=Sum([Revenue] In ([Country];[Quarter];[Year])) In ([Year];[Country])
这个如果用到了forall会更简单,不过为了演示in的作用,先这么写了。下面将有更好的方式。这段公式的含义是对(country,quarter,year)这三个维度下按照year,country的分类进行求和。你可以测试下,比如换成如下这样:
=Sum([Revenue] In ([Country];[Quarter];[Year])) In ([Year])
就会发现现在是按照year维度进行的分类汇总。即每年有一个汇总值,而不是按照country何quater了。
2. ForEach
还是上面这张表,如果我只是想实现一下每个季度下最大的那个revenue是多少怎么办了?如下图:
右边是quarter,左边这列式每个季度下最大的金额。公式如下:
=Max([Revenue] ForEach ([Country]))
猜到foreach的作用了吗?本来次table默认的上下文维度是quarter,但是通过forEach可以增加一个维度country,这样我们实际的效果是
=MAX([Revenue] in ([Country];[Quarter])) in ([Country])
这就是ForEach。
3. ForAll
ForAll和ForEach相对,ForEach是增加维度到上下文中,而ForAll是在默认的上下文中减去一个维度。回到1中的那个问题,如何用ForAll来解决了?先想想,对了就是这样:
=Sum([Revenue] ForAll ([Quarter]))
本来默认的上下文是country,quarter,year,只需要删除quarter这个维度即可。现在应该对webi中的上下文了解了吧。so easy。excel可没有这样的功能。
- webi报表中的上下文
- 清除Webi报表缓存
- webi中的动态求和(runningsum)
- sap BI webi报表模板:webi报表查询字段 批量查询的EXCEL模板
- ASP调用BO的WEBI开发的报表
- 如何使webi报表左面板始终展开
- sap BI webi报表技巧:文本数据查询-模糊查找
- 使用JAVA代码提取SAP BOE WEBI 4.0报表的SQL语句
- 使用BO JAVA SDK打开WEBI报表,并进行PDF、EXCEL、CSV、HTML导出
- sap BI webi报表技巧:用户指定(自定义)排序的列
- BW的层次结构(hierarchy)在Webi报表中展现
- webi笔记
- 内核中的原子上下文
- C#.NET中的上下文
- 内核中的原子上下文
- css中的格式上下文
- 内核中的原子上下文
- 内核中的原子上下文
- TD-SCDMA网络测试仪中Uu接口的信令分析
- Android 安装软件后执行“OPEN”引起的Intent血案(系统BUG)
- 3000自装车还是买挑战者300
- google 图片搜索API
- 专业承接嵌入式linux方案---广州华嵌方案工作室
- webi报表中的上下文
- 字符串操作总结
- 如何判断C#字符串是全角还是半角
- 新人报道
- OLE系统简述与方法
- Windows下使用doxygen阅读和分析C/C++代码
- linux nginx管理脚本
- iPhone OS 开发 - 了解并解决代码签名问题
- 解决Sql2005 附加数据库 为只读选项问题(引)