1
« en: Martes 18 de Enero de 2005, 19:04 »
Necesito ayuda, como puedo guardar las filas de un datagrid a la base de datos de sql.server
tengo este codigo, que lleno datos en mi textbox y le inserto a mi datagrid las filas que sea necesaria, hasta ahi me sale ok
el problema es como guardo los datos de las filas del datagrid a mi base de datos teniendo 3 tablas que esta relacionado coo servicio, carga como detalle y producto
Primero he definido las columnas de mi datatable:
Public Sub New()
Dim ColIdReserServicio As New DataColumn("IdReserServicio", Type.GetType("System.Int16"))
Dim ColIdProducto As New DataColumn("idProducto", Type.GetType("System.String"))
Dim ColCantCarga As New DataColumn("CantCarga", Type.GetType("System.Int16"))
Dim ColIdUMedida As New DataColumn("IdUMedida", Type.GetType("System.String"))
Dim ColPesoCarga As New DataColumn("PesoCarga", Type.GetType("System.Int16"))
Dim ColDescripcion As New DataColumn("Descripcion", Type.GetType("System.String"))
Dim PK(0) As DataColumn
Me.Columns.Add(ColIdReserServicio)
Me.Columns.Add(ColIdProducto)
Me.Columns.Add(ColCantCarga)
Me.Columns.Add(ColPesoCarga)
Me.Columns.Add(ColDescripcion)
Me.Columns.Add(ColIdUMedida)
PK(0) = ColIdProducto
Me.PrimaryKey = PK
End Sub
Luego he agregado codigo para que mi datagrid que esta vacio a un principio se llene cuando ingreso datos en los textbox al hacer click al buton insertar
Private Sub Cargar()
Dim oCarga As New DataTable()
Dim oDs As New DataSet()
oCarga = Session("Carga")
If Not TypeOf oCarga.DataSet Is DataSet Then
oDs.Tables.Add(oCarga)
Else
oDs = oCarga.DataSet
End If
DataGrid1.DataSource = oDs
DataGrid1.DataBind()
End Sub
Private Sub SubmitInsert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SubmitInsert.Click
Dim ocarga As New DataTable()
ocarga = Session("Carga")
Dim onewrow As DataRow = ocarga.NewRow
Dim oexistrow As DataRow = ocarga.NewRow
onewrow.Item("IdReserServicio") = CType(Txtid.Text, System.Int16)
onewrow.Item("IdProducto") = CType(Dropproducto.SelectedItem.Text, System.String)
onewrow.Item("CantCarga") = CType(Txtcantidad.Text, System.Int16)
onewrow.Item("IdUMedida") = CType(Dropmedida.SelectedItem.Text, System.String)
onewrow.Item("PesoCarga") = CType(Txtpeso.Text, System.Int16)
onewrow.Item("Descripcion") = CType(Txtdescripcion.Text, System.String)
With ocarga
oexistrow = .Rows.Find(Dropproducto.SelectedItem.Text)
If oexistrow Is Nothing Then
.Rows.Add(onewrow)
End If
End With
Session.Add("Carga", ocarga)
Me.Cargar()
End Sub
Bueno hasta ahi me sale ok, lo que quiero es hacer click en boton guardar y guardarlo los datos del las filas del datagrid
le agradeceria de antemano si me pueden ayudar