1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
Option Explicit On
Imports System
Imports System.Drawing
Imports Microsoft.Reporting.WinForms
Public Class Form2
Friend WithEvents ReportViewer1 As Microsoft.Reporting.WinForms.ReportViewer
Private p As String = "C:\reports\"
Private cntStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\DB\MaBase.mdb"
Private cnt As New System.Data.OleDb.OleDbConnection(cntStr)
Private ds As DataSet = New DataSet
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'instanciation reportviewer
Me.ReportViewer1 = New Microsoft.Reporting.WinForms.ReportViewer
'Ancrer dans le conteneur parent
Me.ReportViewer1.Dock = System.Windows.Forms.DockStyle.Fill
Me.Text = "Test impression"
Me.ClientSize = New System.Drawing.Size(800, 600)
Me.ReportViewer1.ProcessingMode = ProcessingMode.Local
Me.Controls.Add(ReportViewer1)
End Sub
Private Sub Rapport1ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rapport1ToolStripMenuItem.Click
Dim rString As String = "SELECT * FROM TBL1"
Dim adapter As Data.OleDb.OleDbDataAdapter = New System.Data.OleDb.OleDbDataAdapter(rString, cnt)
adapter.Fill(ds, "TBL1")
createReportViewer("RAPPORT1", "TBL1")
End Sub
Private Sub Rapport2ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rapport2ToolStripMenuItem.Click
Dim rString As String = "SELECT * FROM TBL2"
Dim adapter As Data.OleDb.OleDbDataAdapter = New System.Data.OleDb.OleDbDataAdapter(rString, cnt)
adapter.Fill(ds, "TBL2")
createReportViewer("RAPPORT2", "TBL2")
End Sub
'rpName = Nom du fichier RDLC
'tbl c'est le dataset du reportviewer
Private Sub createReportViewer(ByVal rpName As String, ByVal Tbl As String)
'Vide les datasources
Me.ReportViewer1.LocalReport.DataSources.Clear()
Me.ReportViewer1.Reset()
'utilisation du rapport
Me.ReportViewer1.LocalReport.ReportPath = p & rpName & ".rdlc"
'Associe le Datasource au rapport
Me.ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource(Tbl, ds.Tables(Tbl)))
'Affiche le contenu du rapport
Me.ReportViewer1.RefreshReport()
End Sub
End Class |