HOWTO: Dynamically Populate a Data Report in Visual Basic
This article was previously published under Q240019
SUMMARYThis article explains how to create a report without binding
the report to any data at design time. This allows you to generate a
report without knowing the column names within the Data Source.
MORE INFORMATIONWhen using the Data Report, textboxes must be bound
to an ADO recordset. In some situations it is necessary to generate
this data report at runtime without knowing the column names at
design time. To do this you must first have a data report included in
your project with the correct number of controls needed to display
the data being retrieved. Then open an ADO recordset and loop through
this recordset populating the controls that were placed on the data
report. The following code demonstrates how to accomplish this.
Sample Code
Start a new Visual Basic Standard EXE project. Form1 is added by
default.
From the Project menu, click References, and select the Microsoft
ActiveX Data Objects.
From the Project menu select "Add Data Report". If there is no option
for a Data Report then you will need to choose Components from the
Project and a dialog box is displayed. Click on the Designers tab and
add a reference to the Data Report.
In the Data Report properties change the Data Report name to DR.
Place two report Labels and two report Textboxes in the Detail
Section of the report.
Place a command button on Form1 named command1.
Place the following code into Form1. Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim cmd As New ADODB.Command
Private Sub Command1_Click()
Dim q As Integer%