java中使用水晶报表.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java中使用水晶报表

首先在界面上放置两个dataTimePicker控件,分别取名dtpStart,dtpEnd,可以任意选择起止时间,一个“测试报表”按钮(本案例该按钮起到刷新报表作用),取名btnReport,还有crytalReportView控件是少不了的(要不然怎么查看报表呢:)),采用默认名称,Form界面就这些东西。 既然是PUSH模式,就必须给它一个“骨架”,在项目中添加新项选择数据集,如图示: 名称随意(我这里是默认名DataSet1),然后打开数据集设计界面,右击-添加-DataTable,此时界面已多出DataTable1,右击DataTable1-添加-列,输入列名dtValue,在属性框中更改其数据类型为System.DateTime,如图示: 继续添加两列(根据需求而定,这里的列相当于数据库中的字段),TextType(System.String),iCount(System.Int32),记得保存,此时“骨架”构造完毕,此时还是一个空匣子。 往项目中添加一模板rpt文件,跟刚才添加数据集过程类似,我这边继续采用默认名,打开rpt文件,会有一个“字段资源管理器”框,右击数据库字段-数据库专家,会弹出一个数据库专家界面,在这个界面我们把刚才构造的“骨架”放到报表中来,如图示: 在数据库字段中把要显示的字段拖放到报表详细资料节,如图示: 然后插入交叉表,该是本文的重点之一: 右击报表尾 空白处-插入-交叉表,在交叉表专家中设置如下: 重点也就是这样,很简单吧 :) 然后我们设置下日期和数字的显示格式,右击日期字段dtValue对象-设置对象格式 相应的数字对象也设置下 这样交叉表部分就算完成了,最后我们再根据设置的起止时间进行数据过滤(本文另一重点) 这里我们用两个参数来接收这两个起止时间值,在字段资源管理器中右击参数字段-新建,如图示 同理再新建一参数(注意类型的选择),取名periodEnd,然后在报表空白处点右键-报表-选择专家,此时会弹出选择专家界面 点确定后在设置如下: 嗯,最后该进入代码部分了 // 我这里设置成全局变量 DataSet1 ds = new DataSet1(); private void btnReport_Click(object sender, EventArgs e) { CrystalReport1 myReport = new CrystalReport1(); //给报表设置数据源 myReport.SetDataSource(ds); /* 注意这里的起止时间设置 * 如果直接把dtpStart.Value和dtpEnd.Value传给水晶报表, * 并且dtpStart.Value和dtpEnd.Value设为同一天的情况下,则无记录呈现 */ DateTime start = Convert.ToDateTime(dtpStart.Value.ToShortDateString() + 0:0:0); DateTime end = Convert.ToDateTime(dtpEnd.Value.ToShortDateString() + 23:59:59); // 把参数传给水晶报表 myReport.SetParameterValue(periodStart, start); myReport.SetParameterValue(periodEnd, end); crystalReportViewer1.ReportSource = myReport; } //页面加载时给“空壳”数据集DataSet1 填充数据,此时的“骨架”就不再是一个空匣子了~ private void Form1_Load(object sender, EventArgs e) { ds.DataTable1.AddDataTable1Row(Convert.ToDateTime(2010-5-1), 空柜查询, 25); ds.DataTable1.AddDataTable1Row(Convert.ToDateTime(2010-5-1), 拖车做柜查询, 35);

您可能关注的文档

文档评论(0)

weixin98 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档