我用dataset作为水晶报表的数据源,为什么每次都显示所有记录,而不是dataset中的记录

wqlxjsj 2006-08-18 04:34:08
我用dataset作为水晶报表的数据源,为什么每次都显示所有记录,而不是dataset中的记录,代码如下
Dim frmRpt As New frmReport
Dim rpt As New CrystalDecisions.CrystalReports.Engine.ReportDocument
Dim LogOnInfo As New CrystalDecisions.Shared.TableLogOnInfo
rpt.Load(Application.StartupPath & "\Reports\cr_" & Me.Text & "_GYS.rpt")
LogOnInfo.ConnectionInfo.ServerName = "."
LogOnInfo.ConnectionInfo.DatabaseName = "UFDATA_001_2006"
LogOnInfo.ConnectionInfo.UserID = "sa"
LogOnInfo.ConnectionInfo.Password = "sqldba"
rpt.SetParameterValue("strTitle", Hot.Base.strFirmName & Me.Text)
rpt.SetParameterValue("strZBR", Hot.Base.UserInfo.UserName)
rpt.SetParameterValue("strZBDW", Hot.Base.strFirmName)
rpt.PrintOptions.PaperSize = CrystalDecisions.[Shared].PaperSize.PaperA4
rpt.Database.Tables(0).ApplyLogOnInfo(LogOnInfo)
rpt.SetDataSource(ds.Tables(0))
frmRpt.CrystalReportViewer1.ReportSource = rpt
frmRpt.ShowDialog()
frmRpt.Dispose()
...全文
255 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuchangmao 2006-09-14
  • 打赏
  • 举报
回复
报表文件设计的时候拖放的手段应该来自于强类型的DataSet
TOTTI1025 2006-09-13
  • 打赏
  • 举报
回复
楼上的想问问。在报表文件里面怎么设置呢?
yuchangmao 2006-08-18
  • 打赏
  • 举报
回复
你采用的是Pull模式,如果想加载ds中的数据,则需要用Push模式,建一个强类型的DataSet,然后填充.

SqlConnection conn = new SqlConnection("Data Source=200.1.1.108;Initial Catalog=EduData;User ID=sa;Password=1");
DataSet1 ds = new DataSet1();//仔细看这里并非一般的DataSet,而是通过VS建议的强类型数据集
SqlDataAdapter da = new SqlDataAdapter("Select top 10 StudentNo,StudentName,ClassName from V_StudentInfo", conn);
da.Fill(ds, "V_StudentInfo");
path = "D:\CrystalReport.rpt";
ReportDocument Rep = new ReportDocument();
Rep.Load(path);
Rep.SetDataSource(ds);
CrystalReportViewer1.ReportSource = Rep;

4,820

社区成员

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

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