Visual Studio 2012 中使用 Crystal Report Viewer 加载 Crystal Reports 的初学者教程






4.96/5 (11投票s)
一个简单的文章,介绍如何在 Visual Studio 2012 中使用 crystalreportviewer 加载 crystal report rpt 文件
引言
使用 C# 加载报表并不复杂。但对于初学者来说,这仍然是一项需要解决的任务。我曾经在处理 Crystal Reports 和 Visual Studio 时遇到过困难。
本教程主要面向在 Visual Studio 2012 中实现 Crystal Reports 时遇到困难的初学者。
背景
我是 C# 初学者,第一天 Google 搜索时没有找到太多帮助。也许我不太擅长 Google 搜索 :)
好吧,现在我来切入正题。第二天,我找到了一些参考资料,并意识到我遇到的问题。
我的问题是:我需要 Visual Studio 的 Crystal Reports 版本,而我只安装了 Visual Studio 的 Crystal Reports 可再发行版。安装了可再发行版后,我试图在工具箱中找到 Crystal Reports Viewer,但后来通过参考资料了解到,可再发行版对于开发 PC 来说是不够的。
Using the Code
首先,您应该从以下链接下载 Visual Studio 2012 的开发者版本 Crystal Reports
接下来,在您的项目中添加以下命名空间
using System.Data.Odbc;
using System.Data.SqlClient;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
下载 Crystal Reports 后,在您的 PC 上安装它。安装完成后,打开工具箱时,您会注意到工具箱中添加了更多控件,并且可以找到 Crystal Reports Viewer。将 Crystal Reports Viewer 拖放到您的窗体中。
在您的项目中添加一个按钮,并将以下代码插入到按钮的单击事件中
string test = "select * from tablename";
DataSet testds = new DataSet();
SqlConnection cnn = new SqlConnection("user id=username;password=pwd;server" +
"=dataserver;Trusted_Connection=false;database=dbname;connection timeout=30");
SqlCommand testcmd = new SqlCommand(test, cnn);
testcmd.CommandType = CommandType.Text;
SqlDataAdapter testda = new SqlDataAdapter(testcmd);
testda.Fill(testds, "testttable");
cnn.Open();
ReportDocument myReportDocument;
myReportDocument = new ReportDocument();
myReportDocument.Load(@"D:\Reports\rptitemintrans.rpt");
myReportDocument.SetDataSource(testds);
myReportDocument.SetDatabaseLogon("username", "pwd");
crystalReportViewer1.ReportSource = myReportDocument;
crystalReportViewer1.DisplayToolbar = true;
我假设您熟悉 SQL 连接字符串以及如何填充数据集。打开您的连接并加载报表。完成了!
哎呀.. 速度太快了。
现在详细介绍代码
要将 Crystal Reports 报表加载到 Crystal Reports Viewer 中,您需要一个 ReportDocument
,在我的代码中,它就是 myReportDocument
。ReportDocument
充当报表 并在 Crystal Reports Viewer 中加载。
我在这里创建并初始化了 ReportDocument
,如下所示
ReportDocument myReportDocument;
myReportDocument = new ReportDocument();
通过 ReportDocument
指定要加载的报表路径
myReportDocument.Load(@"D:\Reports\rptitemintrans.rpt");
设置 ReportDocument
的数据源
myReportDocument.SetDataSource(testds);
通过提供数据库用户名和密码为 ReportDocument
设置数据库登录信息。这一步非常重要,因为如果没有这段代码,当您运行应用程序时,系统会提示您输入用户名和密码以从 SQL Server 获取数据。
myReportDocument.SetDatabaseLogon("username", "pwd");
最后,将报表源设置为 Crystal Reports Viewer,如果您希望工具栏出现在查看器中,请将其设置为 true
crystalReportViewer1.ReportSource = myReportDocument;
crystalReportViewer1.DisplayToolbar = true;
最后但并非最不重要的一点,将以下代码添加到您的 app.config 文件中
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
</startup>>
关注点
好了,一切都完成了。我花了一天的时间来弄清楚如何在 Visual Studio 中加载 Crystal Reports。但现在有了本教程,我相信初学者应该能够轻松克服这个障碍。
祝大家愉快!!!:)