仅选择要在报告中显示的一行

时间:2016-08-17 13:56:16

标签: vb.net crystal-reports

此代码用于打印用户信息的按钮。我可以显示datagridview中的所有数据,但我不能只显示一行。我想要这样的行为,如果你点击一行,那么该信息将是唯一一个显示给水晶报告的信息。我怎么能做到这一点?

Private Sub btnPRINT_Click(sender As Object, e As EventArgs) Handles btnPRINT.Click

    For Each dr As DataGridViewRow In Me.DataGridView1.Rows
        dt.Rows.Add(dr.Cells("ID").Value, dr.Cells("Permit Date").Value, dr.Cells("Control Number").Value, dr.Cells("Establishment Name").Value, dr.Cells("First Name").Value, dr.Cells("Middle Name").Value, dr.Cells("Last Name").Value, dr.Cells("Address").Value, dr.Cells("Permit Type").Value, dr.Cells("OR Number").Value, dr.Cells("Amount Paid").Value, dr.Cells("Date Paid").Value)
    Next

    Dim rptDoc As CrystalDecisions.CrystalReports.Engine.ReportDocument
    rptDoc = New CrystalReport2
    rptDoc.SetDataSource(dt)


    frmReport.CrystalReportViewer1.ReportSource = rptDoc
    frmReport.CrystalReportViewer1.Refresh()
    frmReport.ShowDialog()
    frmReport.Dispose()

End Sub

1 个答案:

答案 0 :(得分:2)

听起来你需要一个报告参数。在Crystal中,使用任何字段是唯一标识符(可能是ID?)并使用它来过滤掉记录选择公式。类似的东西:

{yourTable.ID} = {?ID}