无法从 DataSet 填充 RDLC

Unable to populate RDLC from DataSet

提问人:Swim89 提问时间:10/20/2023 最后编辑:Swim89 更新时间:11/3/2023 访问量:64

问:

我手动创建了一个包含 DataTable 的 DataSet。我将使用代码值添加到此 DataTable 中的列中,并在报表中显示它们。但是我得到了不同的错误。

在我的 RDLC 文件中,我有一个名为 DataSource 和一个名为 .此数据集具有 DataSource 和 Available Dataset。companyReportBudgetReportcompanyReportBudgetreportBudget

这是我在表单中用于填写 DataTable 并在报表中显示它的代码:

Dim rptBudget As New companyReportBudget.reportBudgetDataTable

rptBudget.Clear()


For Each rowBudget As RequestGetBudget In rowsBudget

    Dim reportRow As DataRow = rptBudget.NewRow()

    reportRow("num") = rowBudget.number
    reportRow("code") = rowBudget.code

    rptBudget.Rows.Add(reportRow)
Next

Dim rds As New ReportDataSource("Report", rptBudget)
rptStampaBudget.RefreshReport()

但行内划线为错误。Dim rds As New ReportDataSource("Report", rptBudget)ReportDataSource

错误说:

重载解析失败,因为没有可访问的“新建”接受此内容 类型参数的数目。

我认为错误与变量有关。rptBudget

你有什么建议?

SYSTEM DETAILS:
OS: Windows 10 Pro (22H2)
Visual Studio: Community 2017 Version 15.9.55

NUGET PACKAGES:
Microsoft.ReportViewer.WinForms.v12 - 12.0.0.1
Microsoft.ReportingServices.ReportViewerControl.Winforms - 150.1586.0
vb.net visual-studio visual-studio-2017 rdlc reportviewer

评论

0赞 SSS 10/20/2023
请出示班级内部的声明reportBudgetDataTableamcReportBudget

答:

0赞 Swim89 11/3/2023 #1

reportBudgetData按要求添加了表定义:

<xs:element name="companyReportBudget" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="companyReportBudget" msprop:Generator_UserDSName="companyReportBudget">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="reportBudget" msprop:Generator_TableClassName="reportBudgetDataTable" msprop:Generator_RowEvArgName="reportBudgetRowChangeEvent" msprop:Generator_TableVarName="tablereportBudget" msprop:Generator_TablePropName="reportBudget" msprop:Generator_RowDeletingName="reportBudgetRowDeleting" msprop:Generator_RowChangingName="reportBudgetRowChanging" msprop:Generator_RowEvHandlerName="reportBudgetRowChangeEventHandler" msprop:Generator_RowDeletedName="reportBudgetRowDeleted" msprop:Generator_UserTableName="reportBudget" msprop:Generator_RowChangedName="reportBudgetRowChanged" msprop:Generator_RowClassName="reportBudgetRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="number" msprop:Generator_ColumnVarNameInTable="columnumber" msprop:Generator_ColumnPropNameInRow="number" msprop:Generator_ColumnPropNameInTable="numberColumn" msprop:Generator_UserColumnName="number" type="xs:string" minOccurs="0" />
              <xs:element name="code" msprop:Generator_ColumnVarNameInTable="columncode" msprop:Generator_ColumnPropNameInRow="code" msprop:Generator_ColumnPropNameInTable="codeColumn" msprop:Generator_UserColumnName="code" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
  </xs:element>