Usando SQLDataReader para llenar un GridView

3 posts, 1 answers
  1. Ruben
    Ruben avatar
    2 posts
    Member since:
    Dec 2011

    Posted 07 Dec 2011 Link to this post

    Hola a todos:

    Escribo en español, porque mi inglés no es muy bueno. De igual forma, espero que puedan ayudarme.
    Tengo un GridView y quiero llenarlo con datos desde un Store Procedure, mediante un SWLDataReader. Al ejecutar la aplicación, me muestra la cuadrícula del Grid, pero no se visualiza ningún dato.

    Este es el procedimiento que llena (o por lo menos trata) el grid.

    Friend Sub LlenaDatosIniciales(ByVal FechaIni As String, ByVal FechaFin As String, ByVal gvArt As RadGridView)

     

     

    cmdComProv.Connection = cnnConexion

    cmdComProv.CommandText =

     

    "EXEC superCompraVenta '" & FechaIni & "','" & FechaFin & "',1"

     

    If cnnConexion.State = ConnectionState.Open Then

     cnnConexion.Close()

     

     

     

    End If

     

    cnnConexion.Open()

    rdrComProv = cmdComProv.ExecuteReader

     

     

    gvArt.MasterTemplate.LoadFrom(rdrComProv)

     

     

     

    cnnConexion.Close()

     

     

     

    End Sub


    Saludos
    Ruben 

  2. Answer
    Javier Gonzalez de Aragon
    Javier Gonzalez de Aragon avatar
    35 posts
    Member since:
    Mar 2010

    Posted 08 Dec 2011 Link to this post

    Para usar la propiedad  .LoadFrom() tienes que tener definida previamente los nombres de las columnas en el Grid de acuerdo con los campos que te arroja el SP. Para que el grid se cargue automáticamente usa la propiedad .DataSource=rdrComProv

    Saludos,

    Javier Gonzalez de Aragon
  3. UI for WinForms is Visual Studio 2017 Ready
  4. Ruben
    Ruben avatar
    2 posts
    Member since:
    Dec 2011

    Posted 09 Dec 2011 Link to this post

    Hola Javier:

    Gracias por haber atendido mi inquietud. Con la instrucción que me comentas quedó resuelto mi problema.

    Agrego el procedimiento de como quedó:

     Friend Sub LlenaDatosIniciales(ByVal FechaIni As String, ByVal FechaFin As String, ByVal Tipo As Integer, _
                                    ByVal gvArt As RadGridView)


            cmdComProv.Connection = sqlConexion

            cmdComProv.CommandTimeout = 60000

            cmdComProv = New SqlCommand("superCompraVenta", sqlConexion)

            cmdComProv.CommandType = CommandType.StoredProcedure

            cmdComProv.Parameters.AddWithValue("@FechaIni", FechaFin)

            cmdComProv.Parameters.AddWithValue("@FechaFin", FechaIni)

            cmdComProv.Parameters.AddWithValue("@Tipo", Tipo)

            If sqlConexion.State = ConnectionState.Open Then

                sqlConexion.Close()

            End If

            sqlConexion.Open()

            rdrComProv = cmdComProv.ExecuteReader

            gvArt.DataSource = rdrComProv            ' Aquí llena el Grid View

            sqlConexion.Close()

        End Sub


    Saludos,

    Rubén
Back to Top