使用 ASP.NET 的 Crystal Reports PUSH 方法






3.61/5 (55投票s)
2003 年 3 月 22 日
2分钟阅读

572026
本文档解释了如何使用 PUSH 方法来绘制报表。
引言
本文档解释了如何使用 PUSH
方法来绘制报表。它还将解释如何在 ASP.NET 页面中使用用户 DataSet
来生成报表。 绘制报表有两种方法:
PULL
方法 - Crystal Report 连接到数据库,获取字段数据并绘制报表。PUSH
方法 - 我们创建DataSet
,选择DataSet
的字段作为报表字段,然后将其推送到 Crystal Report。 在这里,我将只解释PUSH
方法。
步骤
- 创建一个新的 ASP.NET 项目。
- 插入一个新的项目项作为
DataSet
。 - 将您希望在报表中显示的元素添加到
DataSet
中。 *保存所有*,然后右键单击解决方案资源管理器中的DataSet
文件名,并选择“生成并浏览”命令。 - 然后,将一个新的项目项添加到项目中,作为“Crystal Report”,并插入一个空白报表。
- 在服务器资源管理器中,右键单击数据库字段并选择数据库专家,展开项目数据,并在表选择器中选择
DataSet
,然后按确定。 - 然后,将服务器资源管理器中的数据库字段拖动到报表的详细部分。 按照您想要的方式排列字段。
从工具箱中,将 Crystal Report 查看器控件添加到页面。 这将添加此变量
protected CrystalDecisions.Web.CrystalReportViewer CrystalReportViewer1;
- 填充
DataSet
。 设置报表的DataSource
和CrystalReportViewer
报表源。private void Page_Load(object sender, System.EventArgs e) { CrystalReport1 report=new CrystalReport1(); CrystalReportViewer1.Visible=true; DataSet ds=new DataSet("Account");//give same name as on //dataset1 table header DataTable table=new DataTable("Account");//give same name as on //dataset1 table header table.Columns.Add("Fname",typeof(System.String)); table.Columns.Add("Lname",typeof(System.String)); table.Columns.Add("Salary",typeof(System.String)); DataRow row=table.NewRow(); row["Fname"]="Mathew"; row["Lname"]="Hayden"; row["Salary"]="5000$"; // add to table table.Rows.Add(row); ds.Tables.Add(table); // set report's dataset report.SetDataSource(ds); // set report source CrystalReportViewer1.ReportSource =report; }
输出如下...
需要注意的事项
- 在
Dataset
和插入的DataSet
的表元素名称上使用相同的名称。 - 修改
DataSet
后,再次生成它,并断开报表中的当前连接。 再次设置DataSource
位置,指向新的DataSet
,否则报表的数据库字段将无法获取更改。 - 可以避免设置报表查看器的
DataBind
属性。 可以在运行时完成。