日期:2012-03-09  浏览次数:20457 次

Visual Studio .NET中使用Crystal Report(中)



from www.aspfree.com
translated by cash(天下第七)
cashcao@msn.com(cashcao@msn.com)



Crystal Report演示-使用Pull Model



我们可以用以下步骤来实现Crystal Reports的Pull Model的使用:



(1) 创建一个.rpt文件,设定必要的数据库联接。

(2)将CrystalReportViewer control放到.aspx页面上,设定它的属性指向我们创建的.rpt文件。

(3) 在你的code behind page文件中调用databind方法。



创建.rpt文件:



1)右键单击Solution Explorer,选择"Add" --> "Add New Item" --> "Crystal Report",添加一个新Crystal Report文件。







2) 在"Crystal Report Gallery"弹出窗口,选择"As a Blank Report"按钮并单击”ok”。









3) 这将在Crystal Report Designer上打开一个新的报表文件







4) 在报表的"Details Section"上右击,选择"Database" -> "Add/Remove Database"。



5)在"Database Expert"窗口,展开"OLE DB (ADO)"选项,将会打开一个新"OLE DB (ADO)"窗口。



6) 在"OLE DB (ADO)"窗口中,选择"Microsoft OLE DB Provider for SQL Server"并单击”Next”。









7) 指定连接信息如下:

      Server : HomePC (你服务器的名称)

      User Id : sa

      Password :

      Database : Pubs



8) 单击"Next",Finish。



9) 现在你可以看到Database Expert显示这个表被选中了。



10) 展开”pubs”库,展开”tables”,选择”stores”表并用”>”将其包括进”selected tables”。







11) 现在Field Explore将会在"Database Fields"显示出来 。

12)将所需的fields拖进表中的Details部分。这个field的名字将会自动出现在Page Header部分。如果你想改动header的文本,右击page header部分的文本,选择“Edit Text Object”并编辑。







13) 保存,我们在以后还要用到它。



创建一个Crystal Report Viewer Control



14) 返回我们的web form page,从"WebForms" tool box拖动一个"Crystal Report Viewer" control到页面。



15) 在属性窗口中选择databindings并单击[...]



16) 在"Crystal Report Viewer Databinding"窗口中,选择"Report Source",选择"Custom Binding Expression",键入您刚刚保存的那个.rpt文件的路径(注意双引号)。







17) 现在你可以看到Crystal Report Viewer显示出了一个预览。



注意:在上一个例子中,Crystal Report Viewer控件能够直接显示数据是因为这个报表是与数据保存在一起的。但是在这个例子中,就不会在设计时直接显示出来了,因为这个报表中不包含相关的数据,取而代之的是设计时的伪数据,仅当运行时数据才会显示出来。



更改Behind Page 代码



18) 打开code behind 文件,在p