Ver Mensaje Individual
  #7 (permalink)  
Antiguo 16/04/2012, 21:54
oskar5
 
Fecha de Ingreso: abril-2008
Mensajes: 141
Antigüedad: 16 años, 10 meses
Puntos: 1
Respuesta: recargar datagrid

PROBLEMA
ahora tengo el código de otra manera y esta funcionando el refrescarse la grilla

creo un nuevo registro en la BD guarda y refresca la grilla correctamente

PERO en la segunda vez que intento hacerlo me sale este error:

infraccion de simultaneidad: updatecommand afecto a 0 de los 1 registros esperados


ahora lo que hice en el codigo fue convertir el llenado de la grilla en una funcion publica:

Código:
 Public Function GetData() As DataTable

        Using cnn As New SqlConnection("data source = Oskar-PC\desarrollo; initial catalog = ClinicTurnos; Integrated Security = True")
            Try
                Dim sql As String = "SELECT * FROM Pacientes"
                Dim da As New SqlDataAdapter(sql, cnn)
                Dim ds As New DataSet
                Dim dt As DataTable = New DataTable("Pacientes")
                da.Fill(dt)

                Return dt

                ' With DgvPacientes
                '.DataSource = dt
                ' End With

            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try

        End Using
    End Function

y luego apunte la funcion al boton de guardar de un bindingnavigato asi:


Código:
Private Sub GuardarToolStripButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GuardarToolStripButton.Click

        Me.customersBindingSource.EndEdit()
        PACIENTES.Guardar()

        txtnombres.Clear()
        txtapellido.Clear()
        txtedad.Clear()
        txtdir.Clear()
        txttel.Clear()
        txtcel.Clear()
        txtocup.Clear()
        txtid.Clear()

        DgvPacientes.DataSource = GetData()   ACA ESTA


    End Sub


pero el error me sale justo cuando intento guardar por 2 vez, he leido y parece ser por que en el dataset se esta actualizando un numero mas de un campo que tengo configurado como autonumerico en SQLserver q es el codigo de paciente, esooo parece no lo se... la cuestion es que el error me apunta al metodo guardar que tengo en una clase pss para guardar los cambios precisamente


Código:
 Public Sub Guardar()
        LlenarDtset.Update(Me.Eldataset, Tabla)

        'GRABAR UN REGISTRO EN LA TABLA HISTORIA
    End Sub