当前位置:编程学习 > C#/ASP.NET >>

关于水晶报表跨表查询问题

新的问题又出来了
从两个数据表里调数据放到第三个表里,由于第二个表里没有相应的数据,结果在报表里就没有结果显示。但是我想如果两个表里如果没有数据返回那么汇总时就显示为零,这样至少得有个显示结果啊!求救 --------------------编程问答-------------------- 寫個視圖

然後在報表的公式那裏設置,如果字段爲空,那就顯示0 --------------------编程问答--------------------
引用 1 楼 sid2008 的回复:
寫個視圖

然後在報表的公式那裏設置,如果字段爲空,那就顯示0

怎么写视图啊?这个我没用过……不好意思,新手 --------------------编程问答-------------------- 新建一公式
If IsNull({字段}) Then
 0
Else
 {字段}

对该公式字段汇总即可。。 --------------------编程问答--------------------
引用 3 楼 luols 的回复:
新建一公式
If IsNull({字段}) Then
 0
Else
 {字段}

对该公式字段汇总即可。。

http://topic.csdn.net/u/20110106/15/09f0176d-45e2-4150-9864-9fabb53d2473.html?89229这篇帖子里最后那一句:where T1.月份=T2.月份,可是,假设t2里面某一个月没有事故数据,那这部分的产量数据不就不能汇总显示了么?即便在这里建立了这个公式也没用了啊? --------------------编程问答-------------------- 哦,原来是这个问题的续集~~
那你现在不在报表内部用交叉表? --------------------编程问答--------------------
引用 5 楼 luols 的回复:
哦,原来是这个问题的续集~~
那你现在不在报表内部用交叉表?

用啊,这个问题是在上面那个问题里面衍生出来的,当我查某个部门某月的产量事故时,如果只有产量没有事故,那用where T1.月份=T2.月份的话不就没有交集了么? --------------------编程问答-------------------- 你不是还要考虑年份吗,这样不是还要考虑到每年的每个月份?
这样在外部用SQL处理数据就比较麻烦了~~~ --------------------编程问答--------------------
引用 7 楼 luols 的回复:
你不是还要考虑年份吗,这样不是还要考虑到每年的每个月份?
这样在外部用SQL处理数据就比较麻烦了~~~

按照你的提示,我又换了种方法,数据集中又加了两个表,表的结构跟数据库里t1、t2的结构完全相同,我想先把符合查询条件的所有记录分别放到这两个表里,然后在报表对表里的相应字段添加汇总字段,结果很明显:记录重复显示,搞得最后汇总结果很天文,看阿泰的视频http://topic.csdn.net/u/20081118/10/49a1751d-1d86-44e4-969f-a847c2316dd3.html?22564里面是添加了外键约束,我就删掉了主键加了外键,一试结果又报错:“未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值”……最让人沮丧的是视频里没有声音,最关键的添加表关系的那部分看不懂…… --------------------编程问答--------------------
引用 7 楼 luols 的回复:
你不是还要考虑年份吗,这样不是还要考虑到每年的每个月份?
这样在外部用SQL处理数据就比较麻烦了~~~

要不就不按照月份分组了,只要数据能够显示全就行了,现在碰到的关键问题就是水晶报表显示的时候,如果用跨表调数据赋值给数据集的一个表的方法,则显示的数据可能不全(就像上面说的那样,两个表里没有交集的数据没法显示)。而另一种分别把两个表的数据传给数据集里结构对应的表,然后利用汇总统计字段显示的时候,但是显示的数据就重复了。我想问要是用第二种方法怎样才能让数据不重复显示啊? --------------------编程问答--------------------
引用 9 楼 lvminghua001 的回复:
然后利用汇总统计字段显示的时候,但是显示的数据就重复了。


怎么个重复法,可否贴出效果图看看,图比较直观。。
补充:.NET技术 ,  图表区
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,