• Domingo 22 de Diciembre de 2024, 09:20

Autor Tema:  Guardar Filas De Un Datagrid  (Leído 2246 veces)

pool

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Guardar Filas De Un Datagrid
« en: Martes 18 de Enero de 2005, 19:04 »
0
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

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Guardar Filas De Un Datagrid
« Respuesta #1 en: Domingo 20 de Febrero de 2005, 17:49 »
0
El dataSet solo trabaja de manera desconectada para hacer lo que deseas tienes que usar el slqDataAdapter, con este recuperas los datos del DataSet y los actualizas a la base de datos, si puede ahorita te mando un ejemplito....


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Guardar Filas De Un Datagrid
« Respuesta #2 en: Lunes 21 de Febrero de 2005, 03:16 »
0
ya se me ocurrio otra forma de hacerlo, es llenando directamente los datos a la base de datos, y de ahi solo recargarias la grilla....


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!