A mi me parece que estas intentando grabar un espacio en blanco en tu base de datos, por eso te marca error (o se cae el sistema), a lo mejor con una condición:
Código Delphi
[-]
if text1.edit = null then
tudataset.fieldbyname('campofecha').value = null
y después puedes continuar.
Espero haberle atinado a tu problema.
Saludos.
Vicente López.