none
Guardar Actualización de DGV en tabla de Access RRS feed

  • Pregunta

  • Buenas tardes a todos.

    La consulta es la siguiente. Tengo en un Formulario con un DGV que llena cada fila con datos que se vuelcan de distintos textbox, combos y labels, botón mediante. Estos datos pasan a la DB con otro botón Guardar. 

    El sistema permite devolver al DGV, todos los datos guardados en la DB para seguir registrando movimientos en el momento que se necesite. El tema es ¿Como guardar la nueva serie de registros agregados a partir de y sin afectar los ya guardados anteriormente en otros momentos? 

    Ejemplo: Se guardaron oportunamente los registros 1,2 y 3, quiero empezar a guardar del 4 en adelante la cantidad de registros que sean. O sea, editar, cargar nuevos registros y devolverlos a la DB.

    Trabajo con VB.Net

    If Opcion = 1 Then If Me.DataGridView1.Rows.Count > 0 Then Conexion = New OleDbConnection(Cs) ConsultaSelect = "INSERT INTO tbl_RegistroVentas (Id_Mes_Año,Registro,Fecha,Comprobante,Numero,Neto,IVA,Total,Cod_Cliente)" & "VALUES (@CodMA,@Reg,@Fecha,@Comp,@Num,@Neto,@Iva,@Total,@CodClie)" Conexion.Open() Cmd = New OleDbCommand(ConsultaSelect, Conexion) For Each Fila In Me.DataGridView1.Rows Cmd.Parameters.Clear() Cmd.Parameters.AddWithValue("@CodMA", Convert.ToInt32(Fila.Cells("Id_Mes_Año").value)) Cmd.Parameters.AddWithValue("@Reg", Convert.ToInt32(Fila.Cells("Registro").Value)) Cmd.Parameters.AddWithValue("@Fecha", Convert.ToDateTime(Fila.Cells("Fecha").Value)) Cmd.Parameters.AddWithValue("@Comp", Convert.ToString(Fila.Cells("Comprobante").Value)) Cmd.Parameters.AddWithValue("@Num", Convert.ToString(Fila.Cells("Numero").Value)) Cmd.Parameters.AddWithValue("@Neto", Convert.ToDouble(Fila.Cells("Neto").Value)) Cmd.Parameters.AddWithValue("@Iva", Convert.ToDouble(Fila.Cells("IVA").Value)) Cmd.Parameters.AddWithValue("@Total", Convert.ToDouble(Fila.Cells("Total").Value)) Cmd.Parameters.AddWithValue("@CodClie", Convert.ToInt32(Fila.Cells("Cod_Cliente").Value)) Cmd.ExecuteNonQuery() Next Conexion.Close() End If End If

    Este código inserta todos aquellos primeros registros, estando aún la tabla vacía.

    Agradeceré cualquier ayuda que se pueda aportar.

    Saludos.

    Claudio E. Barral.


    miércoles, 17 de abril de 2019 19:05