С этим кодом я хочу после запроса напечатать то, что отображается на моем DataGridView1, который отображает 3 столбца. Я не хочу использовать Dataset Xsd и его DataTable.Я добавил в свой проект пустую страницу Crystalreport1.
С этим кодом, когда я нажимаю на кнопку Button1, я получаю эту ошибку "The report has no tables.
" именно в этой строке: rp.SetDataSource(DS.Tables(0))
.
Я спросил в этой теме, но я не нашел лучший результат: Создание базы данных DataColumns и Dataset без кода по коду Это все мой код:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim FACTORY As New DataTable
FACTORY.TableName = "FACTORY"
Dim col1 As New DataColumn("FirstName", GetType(String))
Dim col2 As New DataColumn("LastName", GetType(String))
Dim col3 As New DataColumn("Phone", GetType(String))
FACTORY.Columns.Add(col1)
FACTORY.Columns.Add(col2)
FACTORY.Columns.Add(col3)
Dim DS As New DataSet
DS.Tables.Add(FACTORY)
For Each dr As DataGridViewRow In DataGridView1.Rows
DS.Tables(0).Rows.Add(dr.Cells(0).Value, dr.Cells(1).Value, dr.Cells(2).Value)
Next
'Dim rp1 As New CrystalReport1
'rp1.SetDataSource(DS.Tables(0))
'rp.SetDataSource(DataGridView1.DataSource)
'Form1.CrystalReportViewer1.ReportSource = rp
'Form1.ShowDialog()
Dim Rp As New ReportDocument
Rp.Load("E:\SABRINE\CrystalReport1.rpt")
Form1.CrystalReportViewer1.ReportSource = Rp
Form1.CrystalReportViewer1.Refresh()
Form1.ShowDialog()
End Sub