Sql server 更新Crystal Reports的数据提供程序
我已经在我的VB.NET项目中创建了许多Crystal报表,从Microsoft Access 2007(.accdb)数据库获取数据 现在,我正在用Microsoft SQL Server(.mdf)数据库更新我的应用程序 如何将所有Crystal报表的数据源从Access文件更新为MDF文件Sql server 更新Crystal Reports的数据提供程序,sql-server,vb.net,crystal-reports,crystal-reports-2008,Sql Server,Vb.net,Crystal Reports,Crystal Reports 2008,我已经在我的VB.NET项目中创建了许多Crystal报表,从Microsoft Access 2007(.accdb)数据库获取数据 现在,我正在用Microsoft SQL Server(.mdf)数据库更新我的应用程序 如何将所有Crystal报表的数据源从Access文件更新为MDF文件 谢谢。除非有人有更快/更简单的解决方案,否则下面是我在Visual Studio 2010中使用MS Access获取crystal reports的方法。它比选择数据源的普通方法稍微复杂一些,但它提供
谢谢。除非有人有更快/更简单的解决方案,否则下面是我在Visual Studio 2010中使用MS Access获取crystal reports的方法。它比选择数据源的普通方法稍微复杂一些,但它提供了更多的控制,与数据库无关,并且在其他方法有时失败的情况下工作(以我的经验,尤其是MS Access) 我将详细介绍报告从头到尾的工作过程(因为整个过程可能对其他人有用),但将重点介绍可能对您有用的部分 1) 从SAP站点安装Crystal Reports。确保下载的是exe文件,而不是msi文件(它不工作): 2) 将应用程序的目标框架更改为.Net Framework 4(不是客户端)。水晶材料不包括在基本配置文件中 3) 添加对Crystal库的引用(Crystal Reports for.NET) 4) 添加表单,在该表单上放置Crystal Report Viewer控件(来自工具箱的“报告”部分): 5) 添加CrystalReportDocument并将其分配给CrystalReportViewer控件: 要使用数据实际填充报告,请执行以下操作: 1) 通过执行获取报表数据表(从网关)并导出模式的代码来输出报表模式。例如:
<TestMethod()>
Public Sub SchemaTest()
Dim dataSet As DataSet = StaticDataGateway.AccountingIncomeTotals
dataSet.WriteXmlSchema("I:\Myschema.xml")
End Sub
ii)然后将其分配给报告上的数据源:
Private Sub AccountingIncomeTotals_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
AccountingIncomeTotalsReport1.SetDataSource(StaticDataGateway.AccountingIncomeTotals)
End Sub
您可能对上面的部分特别感兴趣,因为它允许您直接将数据源分配给报表,而无需使用crystal select数据
源用户界面面板。
还需要一件事,您需要添加“useLegacyV2RuntimeActivationPolicy”
到app.config文件:
我希望这能有所帮助,很抱歉这太复杂了,如果你有任何问题,请提问
Private Sub AccountingIncomeTotals_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
AccountingIncomeTotalsReport1.SetDataSource(StaticDataGateway.AccountingIncomeTotals)
End Sub