Mensaje enviado por "Joan" <j.roca@redestb.es>
Hola Daniel y Pedro. No le deis mas vueltas. Un campo de fecha no puede contener una cadena de longitud cero ya que esto es del tipo string. Solo podeis asignar el valor Null si este campo tiene la propiedad Requerido a falso. Si es asi, hay que hacer lo siguiente en el momento de validar el datacontrol:
1- Comprobar que el TextBox enlazado vale ""
2- Si vale "" desligar el TextBox del DataControl
3- Asignar por codigo el valor null
4- Volver a ligar el TextBox al DataControl
Te paso el siguiente codigo, el cual asume que tienes Text1 ligado a Data1 por el campo CampoFecha, este codigo hay que ponerlo en el evento Validate del Data1:
If Text1.DataChanged Then 'Solo seguir si se ha modificado Text1
If Text1 = "" Then
Text1.DataField = ""
Data1.Recordset.Edit
Data1.Recordset!CampoFecha= Null
Data1.Recordset.Update
Text1.DataField = "CampoFecha"
End If
End If
Todo esto hay que hacerlo asi porque el Text1 no admite el valor Null, y no es posible hacer:
If Text1 ="" Then Text1 = Null
Pero si el problema lo tenemos con un DBGrid la cosa es mas facil ya que es posible, en el evento AfterColUpdate de DBGrid poner:
If DBGrid1.Text="" Then DBGrid1.Text=Null
Saludos
----- Original Message -----
From: Daniel Ramírez
To: Visual Basic
Sent: Thursday, March 30, 2000 3:39 AM
Subject: RV: vb-esp : Campos Fecha Null
Hola Pedro:
Hasta ahora no he tenido una respuesta que me solucione el inconveniente.
SIGO SIN PODER ENVIAR CAMPOS VACIOS DESDE CUADROS DE TEXTOS ENLAZADOS A UN CAMPO FECHA DE UNA BASE DE DATOS DE ACCESS 97. Si alguien puede ayudar, mataría.