
14/09/2008, 04:10
|
Colaborador | | Fecha de Ingreso: enero-2008 Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 17 años, 2 meses Puntos: 37 | |
Respuesta: Pasar datos de una grilla a base de datos Cita:
Iniciado por manumaf Hola a todos, yo en mi formulario tengo la siguiente grilla:
Código:
With fgDetalles
.Clear
.Rows = 1
.Cols = 5
.TextMatrix(0, 0) = "idArticulo"
.ColWidth(0) = 0
.TextMatrix(0, 1) = "Articulo"
.ColWidth(1) = 2000
.TextMatrix(0, 2) = "Cantidad"
.ColWidth(2) = 500
.TextMatrix(0, 3) = "$ Unit."
.ColWidth(3) = 1000
.TextMatrix(0, 4) = "$ Detalle"
.ColWidth(4) = 1000
End With
Con unos campos de texto y un boton agregar le agrego datos a la grilla.
Boton agregar:
Código:
fgdetalles.AddItem cmbArticulo.ItemData(cmbArticulo.ListIndex) & vbTab & cmbArticulo & vbTab & txtCantidad & vbTab & txtMontoUnitario & vbTab & txtMontodetalle
Siendo fgdetalles el nombre de la grilla.
Lo que yo quiero lograr es que al hacer clic en otro boton por ejemplo el boton "aceptar" los datos que estan temporalmente en la grilla se copien en una base de datos, sabiendo ya que tengo la conexión a la base de datos y todo eso, ¿Como seria la sintaxis del codigo para agregar los datos que estan temporalmente en la grilla a la base de de datos?
Muchisimas gracias Hola, una forma podría ser esta
Código:
Private Sub cmdGuardar_Click()
Dim i As Integer, sql As String
With fgDetalles
For i = 1 To .Rows - 1
sql = "INSERT INTO LaTabla VALUES(" & _
"" & .TextMatrix(i, 0) & ",'" & .TextMatrix(i, 1) & "'," & .TextMatrix(i, 2) & "," & _
"" & .TextMatrix(i, 3) & "," & .TextMatrix(i, 4) & ")"
cn.Execute sql
Next i
End With
MsgBox "Datos guardados"
End Sub
(sustituye lo marcado en rojo por el nombre de tu tabla y conexión)
Nota: Suponemos que todos los campos son numéricos, excepto el campo 'Articulo' y también que la tabla tiene los mismos campos que los valores, si no es así, deberás declarar los campos: INSERT INTO LaTabla (Campo1, Campo2...) VALUES(Variable1, Variable2...) |