Visual Basic - OTRA DE DATAGRID... CHÉQUENLA.....

Life is soft - evento anual de software empresarial
 
Vista:

OTRA DE DATAGRID... CHÉQUENLA.....

Publicado por ivan ramírez (463 intervenciones) el 16/07/2005 22:34:59
En un datagrid capturo una fecha, para que me acepte una fecha válida use la instruccion:

DataGrid1.Columns(4).NumberFormat = "dd/MM/yyyy"

El valor de esta columna lo grabo en un campo previamente definido como fecha, con una máscara para que me acepte los datos con el formato " dd/mm/yyyy".

Me funciona muy bien, me valida que la fecha que capture sea válida, pero si yo capturo una fecha inválida me pone el mensaje (tipo VbInformation):

"El tipo no coincide"

Obviamente es lo que espero que haga, la cosa es que este mensaje lo pone directamente el control DATAGRID, o sea, no lo pongo yo.

ALGUIEN SABE CÓMO DETECTAR QUE SE ESTÁ CAPTURANDO UNA FECHA ERRONEA PARA EVITAR QUE SE PONGA ESE MENSAJE Y PODERLO PONER YO DESDE CÓDIGO...???

No sé si exista algún evento en el datagrid que me permita hacer esa verificación

Estuve probando con algunos eventos y esto fue lo que pasó

Al capturar la fecha errónea revisé los eventos que según se deben realizar:
BeforeColEdit = si se realiza
ColEdit = si se realiza
Al darle ENTER
BeforeColUpdate = si se realiza
AfterColEdit = Si se realiza

En todos ellos el valor de DataGrid.Text siempre fue nulo ("")
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 14
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:OTRA DE DATAGRID... CHÉQUENLA.....

Publicado por SuNcO (599 intervenciones) el 17/07/2005 02:23:32
Yo utilizo esto y si me detecta los errores numerios

Private Sub DataGrid1_Error(ByVal DataError As Integer, Response As Integer)
Response = 0
If DataError = 7007 Then

If DataGrid1.Col = 9 Then
MsgBox "El Id del Proveedor debe ser un numero", vbOKOnly + vbExclamation
El_Error = "Si"
Exit Sub
End If
If DataGrid1.Col = 11 Then
MsgBox "La Existencia debe ser un numero", vbOKOnly + vbExclamation
El_Error = "Si"
Exit Sub
End If

End If
MsgBox DataError
End Sub

Response = 0 es para que no muestre el error
El error 7007 es cuando pones unas letras en lugar de numeros

Muestro el error dependiendo la columna en que estoy

Si es otro error entonces lo muestro con el MsgBox
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:OTRA DE DATAGRID... CHÉQUENLA.....

Publicado por ivan ramírez (463 intervenciones) el 18/07/2005 18:11:21
Excelente, no sabía de ese evento en el datagrid, me falta conocer mucho sobre eso.. gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar