在VB.Net中手动在Reportviewer中加载.rdlc报告

前端之家收集整理的这篇文章主要介绍了在VB.Net中手动在Reportviewer中加载.rdlc报告前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要在reportviewer中提供认真的帮助.
我看了很多链接,各方面尝试了很多代码,但找不到合适的解决方案.
请让我理解并清除我的怀疑.
完全混淆了在代码中选择哪个数据集以及什么是datasource.value每次都给我错误的东西……

我正在展示如何创建报告并尝试使其工作的步骤.这是因为我可能在创建报告时犯了任何错误,而人们可能会抓住它.

现在问题如下所述,
我有很多.rdlc报告我的项目.
我做的是

注意:包含表单名称的Reportviewer是Reports.vb
RDLC报告是Reports1.rdlc,Report2.rdlc,……

1)创建报告,如添加 – >新商品 – >报告 – >报告 – > Report1.rdlc
报告名称:Report1.rdlc

2)然后我像这样从这里添加数据集……

3)打开DataSet属性,它甚至打开DataSource配置向导.
我选择存储过程,因为我想从我的存储过程中获取数据并按下Finish.
这里DataSet Name是BonnyDataSet

4)之后,我从数据集属性中选择数据源…
现在这里的可用数据集是什么????
在ReportViewer中加载时我必须考虑哪个数据集?

5)现在我通过添加下面显示的dataset1的数据列来组织列…

6)现在我以Reports.vb的形式添加了Reportviewer并尝试了很多代码….
在这里展示他们中的一些.

  1. Private Sub Reports_Load(sender As Object,e As EventArgs) Handles MyBase.Load
  2. Try
  3. 'Select Case PubRepVar
  4. 'Case "AccMast"
  5. Dim data As New BonnyDataSet
  6. Dim rds = New ReportDataSource("BonnyDataSet",data)
  7. ReportViewer.LocalReport.DataSources.Clear()
  8. ReportViewer.LocalReport.DataSources.Add(rds) ‘------error here
  9. ReportViewer.LocalReport.ReportEmbeddedResource = "YourProjectNamespace.Report1.rdlc"
  10. ReportViewer.RefreshReport()
  11. 'End Select
  12.  
  13. Catch ex As Exception
  14. MessageBox.Show(ex.Message,My.Application.Info.Title,MessageBoxButtons.OK,MessageBoxIcon.Error)
  15. End Try
  16. End Sub

我收到如下错误

BC30311 : Value of type ‘ReportDataSource’ cannot be converted to
‘ReportDataSource’

我对这个错误一无所知.

我试过的另一个代码
ReportViewer.ProcessingMode = ProcessingMode.Local

  1. Dim localReport As LocalReport
  2. localReport = ReportViewer.LocalReport ‘-------error here
  3.  
  4. localReport.ReportEmbeddedResource =
  5. "ReportViewerIntro.Report1.rdlc"
  6.  
  7. Dim dataset As New DataSet("BonnyDataSet")

这里的错误显示如下:

BC30311 : Value of type ‘LocalReport’ cannot be converted to
‘LocalReport’.

我尝试了很多其他但却无法理解问题所在.
我在创建.rdlc报告时做错了什么?

迫切需要帮助.感谢名单

你应该考虑这些说明:

>你有一个组合时错误说:

BC30311 : Value of type ‘ReportDataSource’ cannot be converted to
‘ReportDataSource’

因此,您应该检查是否正在使用ReportDataSource的正确引用并使用正确名称空间中的类.一个常见问题是当您在Windows窗体项目中添加Microsoft.Reporting.WebForms.dll作为参考并添加了导入Microsoft.Reporting.WebForms命名空间时,您将收到此类异常.
>修复之后,您应该注意报表中DataSet的名称应与创建新ReportDataSource时使用的名称相同.例如,如果DataSet的名称是DataSet1,则应使用以下代码

  1. Dim rds = New ReportDataSource("DataSet1",data)

>要传递给报表的数据应与报表使用的结构相同.例如,它应该是DataTable的一个实例:

  1. TableAdapter1.Fill(Me.DataSet1,"Table1")
  2. Dim rds = New ReportDataSource("DataSet1",Me.DataSet1.Table1)

>设置正在使用的报告时,请使用正确的资源名称.例如,如果项目的根目录中有Report1,项目的默认namspace是YourProjectNamespace,那么资源名称将为:

  1. ReportViewer.LocalReport.ReportEmbeddedResource = "YourProjectNamespace.Report1.rdlc"

当您的报告位于文件夹中时,文件名称也将添加到其资源名称中.

猜你在找的VB相关文章