Как использовать набор данных vb.net в RDL или RDLC?

У меня есть простое приложение vb.net.

Module Module1
    Sub Main()
        ' Two DataTables.
        Dim table1 As DataTable = New DataTable("patients")
        table1.Columns.Add("name")
        table1.Columns.Add("id")
        table1.Rows.Add("sam", 1)
        table1.Rows.Add("mark", 2)

        Dim table2 As DataTable = New DataTable("medications")
        table2.Columns.Add("id")
        table2.Columns.Add("medication")
        table2.Rows.Add(1, "atenolol")
        table2.Rows.Add(2, "amoxicillin")

        ' Create a DataSet. Put both tables in it.
        Dim set1 As DataSet = New DataSet("office")
        set1.Tables.Add(table1)
        set1.Tables.Add(table2)

    End Sub
End Module

Я хотел бы использовать RDL или RDLC для отображения одной из таблиц в моем наборе данных (set1). Я могу это сделать? если да, то как мне это сделать??

Я хочу (или я надеюсь) запустить RDL или RDLC без необходимости иметь соединение SQL или базу данных Access MDB, а также промежуточный файл XML или CSV в файловой системе.

спасибо, что прочитали мой вопрос.


person BobNoobGuy    schedule 05.12.2018    source источник


Ответы (1)


Наконец-то я заработал.

Я пропустил этот шаг, чтобы добавить xsd. см. скриншот ниже.

Итак, это мой окончательный код. ДРУГОЙ ВАЖНЫЙ МОМЕНТ: DATATABLE в XSD должен иметь то же имя, что и ваша сборка DATATABLE в form_load

Imports Microsoft.Reporting.WinForms

Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Dim DataTable1 As DataTable = New DataTable("patients")
        DataTable1.Columns.Add("name")
        DataTable1.Columns.Add("id")
        DataTable1.Rows.Add("sam", 1)
        DataTable1.Rows.Add("mark", 2)


        ReportViewer1.LocalReport.ReportPath = "C:\IT\MISC\Visual Studio Project PLAYGROUND\WinFormPlay\Report\Report1.rdlc"


        ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource("DataSet1", DataTable1))

        Me.ReportViewer1.RefreshReport()


    End Sub

End Class

введите здесь описание изображения

person BobNoobGuy    schedule 06.12.2018
comment
Если мой связанный ответ был чем-то полезен, рассмотрите возможность его голосования. Это показывает более широкому сообществу, что решение было полезным. Нет никаких обязательств делать это. - person Brian M Stafford; 06.12.2018
comment
Да сэр помогло. Спасибо - person BobNoobGuy; 06.12.2018