Reportviewer Отображает пустые страницы без данных - PullRequest
0 голосов
/ 04 октября 2019

У меня есть эта программа, которая очень хорошо выполняет средство просмотра отчетов с данными из таблицы в базе данных mysql. Проблема в том, что когда я добавляю два средства выбора даты и кнопку генерации для отображения данных между датами, программа отображает пустую страницу только с заголовками столбцов. Это мой код:

Импортирует MySql.Data.MySqlClient Импортирует Microsoft.Reporting.WinForms

Открытый класс frmSalesReport Частный Sub Closepb_Click (отправитель как объект, e как EventArgs) обрабатывает Closepb.Click Me. Dispose () End Sub

Private Sub frmSalesReport_Load(sender As Object, e As EventArgs) Handles MyBase.Load

End Sub

Sub LoadReport()
    Dim rptDS As ReportDataSource
    Me.ReportViewer1.RefreshReport()
    Try
        With ReportViewer1.LocalReport
            .ReportPath = Application.StartupPath & "\Reports\Report1.rdlc"
            .DataSources.Clear()
        End With

        Dim ds As New DataSet1
        Dim da As New MySqlDataAdapter

        cn.Open()
        da.SelectCommand = New MySqlCommand("select invoice, subtotal, vat, discount, amountdue, sdate, user from tblpayment where sdate between '" & DateTimePicker1.Value.ToString("dd-MM-yyyy") & "' and '" & DateTimePicker2.Value.ToString("dd-MM-yyyy") & "'", cn)
        da.Fill(ds.Tables("dtSales"))
        cn.Close()

        rptDS = New ReportDataSource("DataSet1", ds.Tables("dtSales"))
        ReportViewer1.LocalReport.DataSources.Add(rptDS)
        ReportViewer1.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout)
        ReportViewer1.ZoomMode = ZoomMode.Percent
        ReportViewer1.ZoomPercent = 100
    Catch ex As Exception
        cn.Close()
        MsgBox(ex.Message, vbCritical)
    End Try
End Sub

Private Sub btnGenerate_Click(sender As Object, e As EventArgs) Handles     btnGenerate.Click
    LoadReport()
End Sub

End Class

...