Principales respuestas
DataGridView y mensaje de error

Pregunta
-
Que tal a todos
La pregunta de hoy es:
Cuando se genera un error en el motor de base de datos ya sea por querer guardar un key duplicado o un valor nulo, en un campo que no se permite o cualquier otro error, en el datagridview se coloca un icono rojo igual al del errorprovider y si uno se coloca sobre este figura el error, ahora bien mi pregunta es como modificar ese mensaje por cada uno de los registros en los que figure? O sea como interceptar el error y modificarlo.
Desde ya muchas gracias
Respuestas
-
Después de probar encontré la siguiente solución espero que ha alguien le sirva
Bloque de código'primero le indicamos al dataAdapter a que siga cargando los datos a pesar de encontrar errores
DataAdapter.ContinueUpdateOnError = True
'Luego indicamos que realize el update de los datos modificados en el dataset
Me.DataAdapter.Update(Me.DataSet.Tables("Tabla"))
'Luego corroboramos si uvo algun error
If DataSet.Tables("tabla").HasErrors = True Then
'Declaramos una varialbe para reccorres todos los errores que se produjeron en la carga
Dim Bucle As Integer
'Generamos una estructura del tipo DataRows donde se almacenarán todas las filas con errores
Dim Filas() As DataRow
'Pasamos a la estructura Filas todas las filas con errores
Filas = DataSet.Tables("Tabla").GetErrors
'Recorro todas las filas donde hay errores y le prsonalizo el mensaje de error
For Bucle = 0 To Filas.Length - 1
Filas(Bucle).RowError = "Fila Con error"
Next
DG.Refresh()
Else
MsgBox("Se cargaron los datos sin errores")
End If
Todas las respuestas
-
Después de probar encontré la siguiente solución espero que ha alguien le sirva
Bloque de código'primero le indicamos al dataAdapter a que siga cargando los datos a pesar de encontrar errores
DataAdapter.ContinueUpdateOnError = True
'Luego indicamos que realize el update de los datos modificados en el dataset
Me.DataAdapter.Update(Me.DataSet.Tables("Tabla"))
'Luego corroboramos si uvo algun error
If DataSet.Tables("tabla").HasErrors = True Then
'Declaramos una varialbe para reccorres todos los errores que se produjeron en la carga
Dim Bucle As Integer
'Generamos una estructura del tipo DataRows donde se almacenarán todas las filas con errores
Dim Filas() As DataRow
'Pasamos a la estructura Filas todas las filas con errores
Filas = DataSet.Tables("Tabla").GetErrors
'Recorro todas las filas donde hay errores y le prsonalizo el mensaje de error
For Bucle = 0 To Filas.Length - 1
Filas(Bucle).RowError = "Fila Con error"
Next
DG.Refresh()
Else
MsgBox("Se cargaron los datos sin errores")
End If -
-