****** winForm 与 水晶报表相关。感兴趣的话近来看看。(在线等)

huangguangdou 2006-05-24 05:02:12
我准备将数据库中的 一个表 id 大于 5 的记录检索出来,显示在在报表上。

string queryChargeInfo = "select chargeInfoId, tenementName, from beforehandChargeInfo where chargeInfoId > 2";

chargeInfoSqlConnection = new SqlConnection("Data Source=.;Integrated security=SSPI;Initial Catalog=fourMeterDb");

chargeInfoDataApter = new SqlDataAdapter(queryChargeInfo,chargeInfoSqlConnection);

chargeInfoDataSet=new DataSet();

this.chargeInfoDataApter.Fill(this.chargeInfoDataSet,"Table");

rptBeforehandChargeInfoList rpt =new rptBeforehandChargeInfoList();

rpt.SetDataSource(chargeInfoDataSet);

this.crystalReportViewer1.ReportSource = rpt;

********************

然而,程序运行的结果所有的记录都显示(id 小于 3 的不应当显示的)

对于搞过报表的朋友这应当不算啥。帮帮俺吧。
...全文
144 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
bhwhy 2006-05-25
  • 打赏
  • 举报
回复
我现在主要是测试着做,我的本意是 使用参数(让用户输入一个值),而 报表自带的帅选条件好象只能在 设计 阶段使用。
=====================
是啊,使用参数用存储过程很方便的.将参数传给存储过程,处理后返回记录集.
xwdd129 2006-05-25
  • 打赏
  • 举报
回复
报表模板设计好之后,它显示哪些数据都是由你用代码填充的,所以错误多半在于你的程序。你可以先使用数据控件看一下填充到DataSet的数据是否正确
erwinIV 2006-05-25
  • 打赏
  • 举报
回复
先用查詢分析器看一下你的檢索結果是否正確,錯誤基本都是程序的問題,報表不會錯的.
huangguangdou 2006-05-24
  • 打赏
  • 举报
回复
to:

rptBeforehandChargeInfoList本身好像有个筛选条件。你找一下,很好找的。
另:用存储过程返回数据集更好一些。速度也快.

*****************************

我现在主要是测试着做,我的本意是 使用参数(让用户输入一个值),而 报表自带的帅选条件好象只能在 设计 阶段使用。
bhwhy 2006-05-24
  • 打赏
  • 举报
回复
rpt.SetDataSource(chargeInfoDataSet.tables["表名"]);
bhwhy 2006-05-24
  • 打赏
  • 举报
回复
rptBeforehandChargeInfoList本身好像有个筛选条件。你找一下,很好找的。
另:用存储过程返回数据集更好一些。速度也快.
huangguangdou 2006-05-24
  • 打赏
  • 举报
回复
不好意思一句话写错了,应为:

**************8

我准备将数据库中的 一个表 id 大于 2 的记录检索出来,显示在在报表上。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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