This article explains different methods of loading
Crystal Report in the Windows Forms from VB.NET.
1. By Report Name - This method of
loading a report simply specifies the location of the report and sets it as the
reportsource for the viewer.
Dim filePath
As String
filePath = Application.StartupPath + "\ReportName.rpt"
CrystalReportViewer1.ReportSource = filePath
2. By Report Object - This method of
loading a report creates a new instance of the ReportDocument object from the
CrystalDecisions.CrystalReports.Engine namespace and loads a report into the
object by specifying the physical path to the report.
Dim filePath
As String
filePath = Application.StartupPath + "\ReportName.rpt"
'Create a new instance of the
reportdocument object and load the report
Dim objReportDocument
As New
CrystalDecisions.CrystalReports.Engine.ReportDocument()
objReportDocument.Load(filePath)
'Bind the report to the viewer
CrystalReportViewer1.ReportSource = objReportDocument
3. By Untyped Report Component - This
method of loading a report uses the ReportDocument component from the Components
tab of the ToolBox. When this component is added to the form, a dialogue box
appears and prompts the Developer as to which type of Component to add to the
form. The options selected were 'Untyped ReportDocument' and a component called
ReportDocument1 was added to the form. This component acts as a proxy to the
ReportDocument class.
Dim filePath
As String
filePath = Application.StartupPath + "\ReportName.rpt"
Dim reportdocument1
As New
CrystalDecisions.CrystalReports.Engine.ReportDocument()
'load the report into the report document
component and set the component as the reportsource for the viewer
reportdocument1.Load(filePath)
CrystalReportViewer1.ReportSource = reportdocument1
4. By Report Object - This scenario
uses a report object that has been added to the current Project. When a report
is added to a project, a class file is generated for the report making the
report a strongly-typed object, in this case 'ReportName.rpt'
'Bind a new instance of the strongly-typed
report object to the viewer
CrystalReportViewer1.ReportSource = New
ReportName()
5. By Strongly-Typed Report Component
- This method of loading a report uses the ReportDocument component from the
Components tab of the ToolBox. When this component is added to the form, a
dialogue box appears and prompts the Developer as to which type of Component to
add to the form. The 'Name' option selected was the strongly-typed report that
was added to the project (SolutionName.ReportName). The option to generate a
Cached Strongly-Typed Report was deselected and a report component called
'ReportName1' was created and added to the form.
' Friend WithEvents
ReportName1 As SolutionName.ReportName1 -This piece of code will be there under
'Windows forms designer generated code section.
'Bind the strongly typed report component to the viewer
CrystalReportViewer1.ReportSource = ReportName1