记录筛选

zmq0523 2010-04-28 04:52:51
你好,这是我之前发过已经关了的帖子,现在又出问题了,因为有很多列需要筛选,所以做了很多的子报表,可是现在报告变得运行速度很慢很慢(报告数据很多),想问,子报表会影响整体的报表运行速度吗?是不是要解决的话只能是想办法全都做在主报表里,那如果要做在主报表里,这种情况又应该怎么做呢?




楼主发表于:2010-04-25 18:59:53

我是水晶报表新手,在同一个数据源表里,分成不同的列在报告中显示选定的值。

打个比方,一下是数据源

性别 姓名 成绩

男 张三 71
女 王丽 62
男 王凯 59
男 刘明 80
女 李雪 86


成型表示这样要按“男女”的条件来返回姓名和成绩,如下

男 女
张三 71 王丽 62
王凯 59 李雪 86
刘明 80


我在做的时候,用 报表 - 选择专家 - 记录, 然后性别选择“男“,报表的第一列和第二列会返回正确的值,想要请教如何将“女” 的值也同时体现在报表上呢?这里谢过了!





luols

(雙)

等 级:

#1楼 得分:40回复于:2010-04-25 19:14:46


张三 71
王凯 59
刘明 80


王丽 62
李雪 86

这样显示不行麽


zmq0523

(zmq0523)

等 级:

#2楼 得分:0回复于:2010-04-25 19:20:50

感谢回复!

这样不行,在不同列。




luols

(雙)

等 级:

#3楼 得分:0回复于:2010-04-25 20:26:11

可以选择挂两个子报表:
一个过滤“男”的,一个过滤“女”的

以此来达到这种效果,



...全文
138 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
用Sql Server实现

declare @TotalTable table (id int identity(1,1),sex varchar(4) check(sex in ('男','女')) default('男'),Name varchar(20),Marks int)

insert @TotalTable(sex,Name,Marks)
select '男','张三','71'
union all
select '女','王丽','62'
union all
select '男','王凯','59'
union all
select '男','刘明','80'
union all
select '女','李雪','86'
union all
select '男','蒋民','88'

select identity(int,1,1) ID,sex,Name,Marks
into #Male
from @TotalTable
where sex='男'

select identity(int,1,1) ID,sex,Name,Marks
into #Female
from @TotalTable
where sex='女'

select a.Name 姓名,a.Marks 分数,b.Name 姓名,b.Marks 分数 from #Male a
full join #Female b on a.id=b.id

drop table #Male
drop table #Female

zmq0523 2010-05-04
  • 打赏
  • 举报
回复
我用了SQL code:

Select No.,Milestone,Status,date
From TB
Where Milestone="IRC"


Milestone分别选 IRC ETA RAS 做成三个新table来完成了。

zmq0523 2010-05-01
  • 打赏
  • 举报
回复
我用交叉表实现不了,我在表中要做很多不同条件的筛选,显示在不同的列,我试交叉表,只能放在表头,然后设置行和列的汇总条件,请问有没有公式可以达到上述的效果的?
zmq0523 2010-04-30
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 luols 的回复:]
引用 9 楼 zmq0523 的回复:
我发图片一直发不上来,都是一个叉叉,请问是怎么回事呢?


对于这个红叉叉问题,可参考下这篇文章
水晶报表出现红叉叉的解决方法

对于10楼的数据来看,这应该是一个交叉表的效果。
[/Quote]

我没有说清楚,我说的是我想贴图来这个帖子上,可是发布了之后是个方框里面有个叉。

我来学习一下交叉表,感谢指点,有问题我再上来问。谢谢!
阿双2009 2010-04-30
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 zmq0523 的回复:]
我发图片一直发不上来,都是一个叉叉,请问是怎么回事呢?
[/Quote]

对于这个红叉叉问题,可参考下这篇文章
水晶报表出现红叉叉的解决方法

对于10楼的数据来看,这应该是一个交叉表的效果。
zmq0523 2010-04-30
  • 打赏
  • 举报
回复
图发不上来,我就直接用写的了,原始数据是这样的:

No. Milestone Status date
1 IRC A 2010-2-3
1 ETA F 2010-4-3
1 RAS F 2010-4-2
2 IRC F 2010-6-9
2 ETA A 2010-7-30
2 RAS A 2010-8-2


最后做出来效果是这样。

No. IRC ETA RAS
1 A 2010-2-3 F 2010-4-3 F 2010-4-2
2 F 2010-6-9 A 2010-7-30 A 2010-8-2


我之前用子报表,然后在每一个子报表里设置筛选,最后组合到一起,可是因为数据太大,报表运行奇慢,请教如何在一个报表里完成这个效果?
zmq0523 2010-04-30
  • 打赏
  • 举报
回复
我发图片一直发不上来,都是一个叉叉,请问是怎么回事呢?
阿泰 2010-04-29
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 zmq0523 的回复:]
14楼?这里没有14楼哦,去哪里看呢?还有哦,你们五一假期会在论坛上吗?
[/Quote]

不好意思,是4楼~~

我五一会在。

你最好把你现在的数据结构和已经做好的这个效果,截图出来看看。
具体分析分析
zmq0523 2010-04-29
  • 打赏
  • 举报
回复
14楼?这里没有14楼哦,去哪里看呢?还有哦,你们五一假期会在论坛上吗?
阿泰 2010-04-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zmq0523 的回复:]
这个物理表怎么跟主表链接呢?还有那个view怎么做?做物理表对速度有影响吗?
[/Quote]

..一时间不知道怎么回,建议你再看下14楼。。
zmq0523 2010-04-29
  • 打赏
  • 举报
回复
这个物理表怎么跟主表链接呢?还有那个view怎么做?做物理表对速度有影响吗?
阿泰 2010-04-28
  • 打赏
  • 举报
回复
物理表就是一个普通的大表,其结构就跟你最终在报表上表现出来的那个样子差不多
数据不会同步更新的,你可以做个脚本定时更新
其本质跟操作一个普通的表是完全一样的
也可以将其处理成view,这样的话就会跟着表的更新自动更新了
zmq0523 2010-04-28
  • 打赏
  • 举报
回复
我是新手,对这个不熟悉,现在很急要重新设计一个物流的报表,所以来问了很多stupid的问题,感谢二位指点。物理表怎么做呢?怎么做传递呢?有没有相关的资料可以看?
还有就是我的数据是通过ODBC连接的系统后台,数据每天都在不断的更新,用这个物理表会不会跟着一起更新呢?
阿双2009 2010-04-28
  • 打赏
  • 举报
回复
我以牺牲性能为代价,真杯具了~
谢谢泰哥指点迷津。
阿泰 2010-04-28
  • 打赏
  • 举报
回复
使用子报表确实会导致报表整体性能下降,特别是在大数据量的情况下更是明显。
如果你现在是每个列都用了子报表的话,那无疑是性能最低的一种

这种情况,个人建议做一个物理表(或view),把数据先按指定列准备好,然后再传递给报表。
做一个最基本的列表显示

4,818

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧