title: How to display selected rows in datagridview to crystal report
body: <p>This is my first time using Crystal reports.I have a store procedure and What i am trying to do is when i highlight a row in <code>datagridview</code> and click report button, that only the highlighted row gets sent to the report viewer page.I have tried some solutions here but no luck.</p>
  
  <p>Report button code</p>
  
  <pre><code>Imports System.Data.SqlClient
  Imports System.IO
  Imports CrystalDecisions.CrystalReports.Engine
  
  Public Class frmView
      Dim cn As New SqlConnection("Data Source=.;Initial Catalog=DBSAS;Integrated Security=True")
      Dim cmd As New SqlCommand
      Dim da As New SqlDataAdapter
      Dim dt As New DataTable
      Dim i As Integer
      Dim a As New OpenFileDialog
  
      Private Sub btnRep_Click(sender As Object, e As EventArgs) Handles btnRep.Click 
              cn.Open()
          Dim report As New ReportDocument
          da.SelectCommand = New SqlCommand("EXEC usplatestDateEnrolled ", cn)
          report.RecordSelectionFormula = "{@studID}" &amp; dgv1.SelectedRows(0).Cells(0).Value
          report.Load("C:\users\agent_edx44\My Documents\Visual studio 2012\projects\SASApp\Rep.rpt")
          frmReport.CrystalReportViewer1.ReportSource = report
          frmReport.CrystalReportViewer1.Refresh()
          frmReport.Show()
              cn.Close()
      End Sub
  
  End Class
  </code></pre>
  
  <p>Store Procedure code</p>
  
  <pre><code>USE [DbSAS]
  GO
  /****** Object:  StoredProcedure [dbo].[uspLatestDateEnrolled]    Script Date: 02/07/2016 12:35:26 ******/
  SET ANSI_NULLS ON
  GO
  SET QUOTED_IDENTIFIER ON
  GO
  -- =============================================
  -- Author:      &lt;Author,,Name&gt;
  -- Create date: &lt;Create Date,,&gt;
  -- Description: &lt;Description,,&gt;
  -- =============================================
  ALTER PROCEDURE [dbo].[uspLatestDateEnrolled]
      -- Add the parameters for the stored procedure here
  
  @studID INT = NULL
  
  
  AS
  BEGIN
  
      SET NOCOUNT ON;
  SELECT sh.SchoolYear,
          sh.Levels,sh.Section, sh.DateEnrolled ,
          SI.StudentID,SI.Surname,SI.FirstName,SI.MiddleName, SI.StudAddress , 
          SI.BirthDay,SI.Gender, SI.Nationality, SI.BirthPlace,
          SI.TelNum,SI.SchoolWhereGraduated , 
          SI.DatesWhenGraduated, SI.SchoolLastAttended,
          SI.SchoolAddress, SI.Note,SI.StudImage,
          PI.Father_FirstName,PI.Father_LastName,
          PI.Father_MI,PI.Father_Occupation, 
          PI.Father_TelNUm, PI.Mother_FirstName, PI.Mother_LastName,
          PI.Mother_MI,PI.Mother_Occupation,PI.Mother_TelNum,
          PI.Contact_FirstName,PI.Contact_LastName,PI.Contact_MI,
          PI.Contact_Mobile,PI.Contact_TelNum,PI.Contact_Address  
          FROM StudentInformation SI 
          JOIN StudentHistory SH  
              ON SI.StudentID = SH.StudentID
          JOIN ParentInformation PI
          ON PI.ParentID = SI.ParentID
          WHERE si.StudentID = @studID
          ORDER BY DateEnrolled DESC
  
              SELECT * FROM StudentHistory WHERE StudentID = @studID
                  ORDER BY DateEnrolled DESC
              SELECT TOP 1 SchoolYear,
                  Levels,Section, DateEnrolled as LatestDate
                  FROM StudentHistory
                  WHERE studentID = @studID
                  ORDER BY DateEnrolled DESC
  </code></pre>
  
  <p>When i run this code it says that</p>
  
  <blockquote>
    <p>Invalid report file path in this line</p>
  </blockquote>
  
  <pre><code>report.RecordSelectionFormula = "{@studID}" &amp; dgv1.SelectedRows(0).Cells(0).Value
  </code></pre>
  
  <p>Can anyone help me to fix my code. I'm stuck here for almost an hour. Thanks in advance</p>