none
Duplica Columnas DataGridView RRS feed

  • Pregunta

  • Buen dia señores.... en esta ocasion, tengo el inconveniente que estoy cargando un DGV con un Store Procedure... no todos las columnas del DGV las traigo de la consulta... hay algunas celdas que seran llenadas por el usuario manualmente... el problema que me acarrea, es que me duplica el grupo de columnas... se los explico con imagenes...

    En la imagen de arriba, muestro las filas y columnas del DGV... las columnas en donde aparecen datos, son las que me trae la consulta (de esas, las filas que no tienen, pues obviamente es porque no existen datos)...

    Al moverme horizontalmente a traves de las celdas... me encuentro con que de nuevo, estan repetidas las columnas... (solamente se repiten una vez cada columna)...

    Este es mi codigo cuando lleno el DGV

    Using connection As MySqlConnection = New MySqlConnection(MiCadenaConeccion)
    
                connection.Open()
    
                Dim command As MySqlCommand
                Dim adapter As MySqlDataAdapter
                Dim dtTable As DataTable
    
                'Indico el SP que voy a utilizar
                command = New MySqlCommand("PADetalleInventIngSalProd", connection)
                command.CommandType = CommandType.StoredProcedure
                adapter = New MySqlDataAdapter(command)
                dtTable = New DataTable
                With command.Parameters
                    'Envió los parámetros que necesito
                    .Add(New MySqlParameter("@Tipo", SqlDbType.Int)).Value = Tipo
                    .Add(New MySqlParameter("@FechaI", SqlDbType.Int)).Value = Format("yyyyMMdd", Fecha1)
                    .Add(New MySqlParameter("@FechaF", SqlDbType.Int)).Value = Format("yyyyMMdd", Fecha2)
                End With
                Try
                    'Aquí ejecuto el SP y lo lleno en el DataTable
                    adapter.Fill(dtTable)
                    'Enlazo mis datos obtenidos en el DataTable con el grid
                    DGV.DataSource = dtTable
                    'Si no pongo esta línea, se crean automáticamente los campos del grid dependiendo de los campos del DataTable
                    DGV.AutoGenerateColumns = False
                    'Aquí le indico cuales campos del select de mi SP van con los campos de mi grid
                    With DGV
                        .Columns("Producto").DataPropertyName = "NomProducto"
                        .Columns("Entradas").DataPropertyName = "Ingresos"
                        .Columns("Salidas").DataPropertyName = "Salidas"
                        .Columns("InvAnt").DataPropertyName = "InventarioAntes"
                        .Columns("AjusteAnterior").DataPropertyName = "AjusteAntes"
                        .Columns("InvActual").DataPropertyName = "InventarioActual"
                        .Columns("AjusteActual").DataPropertyName = "AjusteActual"
                    End With
    
                Catch expSQL As MySqlException
                    'MsgBox(expSQL.ToString, MsgBoxStyle.OkOnly, "SQL Exception")
                    clsConfigMessageBox.ShowWinMessage(expSQL.Message, "Llena DataGridView", MessageBoxIcon.Error,
                                                   MessageBoxButtons.OK)
                    Exit Sub
                End Try

    Estoy utilizando VS 2015 en Windows 10... con MySql como BD... y por cierto, al probar el StoreProcedure en WorkBench, los datos me los trae correctamente...

    Gracias por su ayuda

    miércoles, 30 de agosto de 2017 23:45

Respuestas

Todas las respuestas