Recorrer DGV y guardar en tabla solo datos de la primera Col
Publicado por Claudio (8 intervenciones) el 26/05/2022 18:44:33
Buen día a todos.
Antes que nada, gracias a quien me pueda orientar y tender una mano.
Necesito guardar en una tabla de Access los datos de solo una columna de un DGV, la primera.
El tema es recorrer solo la primera columna del DGV y que se inserten en tabla los datos que contengan. Ocurre que conformé la tabla con unos 28 campos, los cuales 25 arbitrariamente no serán todos completados con datos desde la aplicación. Instauré la tabla con estos 25 últimos campos como No requeridos y Preestableciendo valor 0.
Ocurre que el problema lo tengo en el Insert dado que el DGV no va a contar con 25 filas a recorrer para que se inserten el total de datos. Muy probablemente tenga menos. Por eso quisiera que en todo caso me inserte valor 0 o nada en aquellos campos que estén sin dato. Dejo una imagen y el código (que sé que es incorrecto) solo a los efectos orientativos.
Logicamente al tener el DGV menos filas, el insert me da error por falta de parámetros.
Antes que nada, gracias a quien me pueda orientar y tender una mano.
Necesito guardar en una tabla de Access los datos de solo una columna de un DGV, la primera.
El tema es recorrer solo la primera columna del DGV y que se inserten en tabla los datos que contengan. Ocurre que conformé la tabla con unos 28 campos, los cuales 25 arbitrariamente no serán todos completados con datos desde la aplicación. Instauré la tabla con estos 25 últimos campos como No requeridos y Preestableciendo valor 0.
Ocurre que el problema lo tengo en el Insert dado que el DGV no va a contar con 25 filas a recorrer para que se inserten el total de datos. Muy probablemente tenga menos. Por eso quisiera que en todo caso me inserte valor 0 o nada en aquellos campos que estén sin dato. Dejo una imagen y el código (que sé que es incorrecto) solo a los efectos orientativos.
Logicamente al tener el DGV menos filas, el insert me da error por falta de parámetros.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
If Opcion = 1 Then
ConsultaSelect = "INSERT INTO tbl_Parametrizacion_de_Empleados " &
"(Registro,Id_Empresa,Id_Empleado,Param_1,Param_2,Param_3,Param_4,Param_5)" &
"Param_6,Param_7,Param_8,Param_9,Param_10,Param_11,Param_12,Param_13,Param_14," &
"Param_15,Param_16,Param_17,Param_18,Param_19,Param_20,Param_21,Param_22,Param_23," &
"Param_24,Param_25) " &
"VALUES(@Reg,@Id_Empresa,@Id_Empleado,@Param_1,@Param_2,@Param_3,Param_4,Param_5," &
"@Param_6,@Param_7,@Param_8,@Param_9,@Param_10,@Param_11,@Param_12,@Param_13,@Param_14," &
"@Param_15,@Param_16,@Param_17,@Param_18,@Param_19,@Param_20,@Param_21,@Param_22,@Param_23," &
"@Param_24,@Param_25)"
Conexion = New OleDbConnection(Cs)
Conexion.Open()
Cmd = New OleDbCommand(ConsultaSelect, Conexion)
Cmd.Parameters.AddWithValue("@Reg", CInt(lbl_Reg_Nro.Text))
Cmd.Parameters.AddWithValue("@Id_Empresa", CInt(lbl_Id_Emp_Nro.Text))
Cmd.Parameters.AddWithValue("@Id_Empleado", CInt(lbl_Id_Empleado_Nro.Text))
For Each row As DataGridViewRow In DataGridView3.Rows
Cmd.Parameters.Clear()
Cmd.Parameters.AddWithValue("@Param_1", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_2", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_3", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_4", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_5", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_6", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_7", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_8", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_9", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_10", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_11", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_12", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_13", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_14", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_15", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_16", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_17", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_18", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_19", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_20", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_21", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_22", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_23", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_24", CInt(row.Cells(0).Value))
Cmd.Parameters.AddWithValue("@Param_25", CInt(row.Cells(0).Value))
Cmd.ExecuteNonQuery()
Next
End If
Valora esta pregunta


0