12
返回列表 发新帖
楼主: Phoebe_chen

[精华] 求助高手:如何在Report Builder6里实现按条件Count记录数

[复制链接]
论坛徽章:
1
ITPUB学员
日期:2010-10-08 10:50:06
11#
 楼主| 发表于 2008-7-24 19:33 | 只看该作者
原帖由 nixiang21 于 2008-7-24 16:42 发表
刚好我在做一个分页统计问题遇到同你相似的问题,我现在是这样做的,建一个全局的变量(在用户参数中),用一个公式列(在查询框中)用条件判断加全局变量,传回全局变量,保存中间值,最后用一个汇总列(在查询外)对这个列进行求"最后一个"值.
在报表中取这个值就可以了.
这功能应该可以达到你的要求,但是要做到我的分页统计就不行,我还在想帮法,希望有高手看看我的问题贴.




非常谢谢你的详细解答,明天一上班就试下你说的方法再来报告结果

其它人有更好的方法的话欢迎提出喔

使用道具 举报

回复
论坛徽章:
0
12#
发表于 2008-7-25 10:41 | 只看该作者
今天我的问题解决了,可能不用全局变量.只用公式列和查询外的汇总列就可以了.我的问题同你不同点在于把汇总列的重置设为page或是report上.

使用道具 举报

回复
论坛徽章:
1
ITPUB学员
日期:2010-10-08 10:50:06
13#
 楼主| 发表于 2008-7-25 12:58 | 只看该作者
原帖由 nixiang21 于 2008-7-25 10:41 发表
今天我的问题解决了,可能不用全局变量.只用公式列和查询外的汇总列就可以了.我的问题同你不同点在于把汇总列的重置设为page或是report上.



能否详细用一个例子来讲解呢。从你上面的描述实在找不到入口

谢谢哈~~

使用道具 举报

回复
论坛徽章:
1
ITPUB学员
日期:2010-10-08 10:50:06
14#
 楼主| 发表于 2008-7-29 09:52 | 只看该作者
谢谢各位进这个贴关注的同学,此问题得到高人指点,已解决   现将解决方法整理如下:

我的问题:
------------------------引用的分割线----------------------------------------------------------------------------------------------------------

           如何在Report Builder6里实现按条件Count记录数


       Report Builder6里的查询SQL举例如下:
       ===========================

          select column_1,column_2,column_4
            from table_a

          ===以上代码返回结果模拟===

          column_1    column_2       column_4
          record1       record1_1          Y
          record2       record2_1          N
          record3       record3_1          Y
          record4       record4_1          N

          以上查询结果也是报表需要展示的格式

      ===========================

         我的需求:
         在Report Builder6报表中统计出column_4='Y' 的记录有几条.

         正常统计需求可用新增一个Summary Column来实现,但这个功能里不能加条件,所以不能满足我的需求

      不知是否可用Formula Column实现,如可,如何实现请高手指点。
------------------------引用的分割线-----------------------------------------------------------------------------------------------------

解决方法:
1. 在查询里增加一个Formula Column, 用以得出'Y' 值的记录
  写法例:

  function CF_column_4_YFormula return Char is
   begin
        if :column_4 ='Y' then
           return(:column_4);
        else
           return(null);
        end if;
   end;

2. 在查询外增加一个Summary Column, 用Count函数以统计以上 CF_column_4_YFormula 的记录数

3. 以上,我要求的如何统计 column_4 为'Y' 值的记录数结果出来啦~~~


再次感谢!!

[ 本帖最后由 Phoebe_chen 于 2008-7-29 09:55 编辑 ]

使用道具 举报

回复
论坛徽章:
164
技术图书徽章
日期:2018-12-26 10:01:29指数菠菜纪念章
日期:2013-06-28 17:41:29蛋疼蛋
日期:2013-04-03 16:29:52指数菠菜纪念章
日期:2013-04-01 15:26:282013年新春福章
日期:2013-02-25 14:51:24指数菠菜纪念章
日期:2013-01-04 11:30:40指数菠菜纪念章
日期:2012-09-29 10:28:42版主6段
日期:2012-05-15 15:24:11指数菠菜纪念章
日期:2012-03-31 14:04:28茶鸡蛋
日期:2012-03-12 16:56:15
15#
发表于 2008-7-29 10:54 | 只看该作者
原帖由 Phoebe_chen 于 2008-7-29 09:52 发表
谢谢各位进这个贴关注的同学,此问题得到高人指点,已解决   现将解决方法整理如下:

我的问题:
------------------------引用的分割线----------------------------------------------------------------------------------------------------------

           如何在Report Builder6里实现按条件Count记录数


       Report Builder6里的查询SQL举例如下:
       ===========================

          select column_1,column_2,column_4
            from table_a

          ===以上代码返回结果模拟===

          column_1    column_2       column_4
          record1       record1_1          Y
          record2       record2_1          N
          record3       record3_1          Y
          record4       record4_1          N

          以上查询结果也是报表需要展示的格式

      ===========================

         我的需求:
         在Report Builder6报表中统计出column_4='Y' 的记录有几条.

         正常统计需求可用新增一个Summary Column来实现,但这个功能里不能加条件,所以不能满足我的需求

      不知是否可用Formula Column实现,如可,如何实现请高手指点。
------------------------引用的分割线-----------------------------------------------------------------------------------------------------

解决方法:
1. 在查询里增加一个Formula Column, 用以得出'Y' 值的记录
  写法例:

  function CF_column_4_YFormula return Char is
   begin
        if :column_4 ='Y' then
           return(:column_4);
        else
           return(null);
        end if;
   end;

2. 在查询外增加一个Summary Column, 用Count函数以统计以上 CF_column_4_YFormula 的记录数

3. 以上,我要求的如何统计 column_4 为'Y' 值的记录数结果出来啦~~~


再次感谢!!


谢谢,学习了

使用道具 举报

回复
论坛徽章:
23
授权会员
日期:2006-04-08 16:40:05凯迪拉克
日期:2013-09-29 11:06:34复活蛋
日期:2013-04-01 16:07:442013年新春福章
日期:2013-02-25 14:51:24ITPUB 11周年纪念徽章
日期:2012-10-09 18:06:202012新春纪念徽章
日期:2012-01-04 11:50:44ITPUB十周年纪念徽章
日期:2011-11-01 16:21:152010广州亚运会纪念徽章:体操
日期:2011-01-14 11:46:56祖国60周年纪念徽章
日期:2009-10-09 08:28:00ITPUB8周年纪念徽章
日期:2009-09-27 10:21:22
16#
发表于 2008-7-30 09:24 | 只看该作者
介个帖子,竟然成精华了~~~~~

使用道具 举报

回复
论坛徽章:
2
授权会员
日期:2008-06-11 13:14:572012新春纪念徽章
日期:2012-01-04 11:54:26
17#
发表于 2008-8-31 22:34 | 只看该作者
我们的小陈MM居然真的有个精华帖唉

只是我这个技术门外汉看的是一窍不通啊,,,,,,,

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表