关于水晶报表与XML的问题,100分相送!!!!

ccvcc9003 2006-05-27 06:25:31
请问:水晶报表能用XML文件作数据源吗?
如果能,请给出简单指导与例子,谢谢!小弟急用,谢谢 !
...全文
219 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mayastar 2006-05-30
  • 打赏
  • 举报
回复
rd.SetDataSource(ds);
关键看你如何运用DS了,呵呵,提示你一下了
ccvcc9003 2006-05-30
  • 打赏
  • 举报
回复
如果一个员工打印完就无条件自动换纸
xwdd129 2006-05-29
  • 打赏
  • 举报
回复
不明白你为什么这样做,但用XML文件作数据源是可以的,具体的报表设计你可以自己选择,不同的模板上放不同的字段即可显示不同的信息!!
ccvcc9003 2006-05-29
  • 打赏
  • 举报
回复
哦?那我能不能让每一行数据对应一个报表文件呀
xwdd129 2006-05-29
  • 打赏
  • 举报
回复
可以,在数据库专家里点击“数据库文件”,选择相应xml文件即可,对于其自动生成的NewDataSet可以不用管
ccvcc9003 2006-05-29
  • 打赏
  • 举报
回复
不能不通过DATASET, 而直接和一个XML关联吗?
xwdd129 2006-05-29
  • 打赏
  • 举报
回复
你可以用Dataset读取一个xml文件,把这个Dataset作为报表的数据源!

大致代码如下:
DataSet ds = new DataSet();
ds.ReadXmlSchema("d1.xsd"); //读入格式
ds.ReadXml("d2.xml"); //读入数据

ReportDocument rd = new ReportDocument();
rd.Load("rpt1.rpt");
rd.SetDataSource(ds);
crystalReportView1.Reportsource = rd;
xwdd129 2006-05-29
  • 打赏
  • 举报
回复
我觉得这不应该是一个员工一个报表文件,而应该做成一个员工一页纸,多个员工多页纸!
ccvcc9003 2006-05-29
  • 打赏
  • 举报
回复
就是这个意思:
  在DataGrid里每一行数据代表一个员工,在XML里的每一行存放的是一个员工对应的详细资料,现在在DataGrid中以多选取的形式选择了一批员工,然后在页面上点"批量打印"或"批量预览",我怎么样才能实现对应的功能呀?
xml类似下面的:
<?xml version="1.0" encoding="UTF-8"?>
<EMP>
<DETIAL>
<EMID>1</EMID>
<FIRSTNAME>ZHANG</FIRSTNAME>
<LASTNAME>YU</LASTNAME>
</DETIAL>
<DETIAL>
<EMID>2</EMID>
<FIRSTNAME>LI</FIRSTNAME>
<LASTNAME>MING</LASTNAME>
</DETIAL>
<DETIAL>
<EMID>3</EMID>
<FIRSTNAME>WEN</FIRSTNAME>
<LASTNAME>QIN</LASTNAME>
</DETIAL>
</EMP>

4,818

社区成员

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

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