在旧的VB6程序中,我有一个与表单上的文本控件相关的数据控件。一些表字段是JET数据库中的日期时间字段。使用VB6重置DAO日期时间字段为空
对于日期时间字段没有默认值,所以当第一次显示在窗体上时,它们显示为空白。当它们最终被设置时,文本字符串被验证为日期并且数据控件适时地更新记录。
如果用户想要清除日期(例如,对先前数据输入的校正),他们只需将空白空白。保存没有发生错误,但受影响的日期时间字段未更新。当再次查看记录时,最后输入的日期是可见的。
通过检查文本控件的DataChanged属性,我可以看到日期值已更改为空白(= cNullString)。
因此,我假设记录的最终保存会忽略cNullString,因为它认为它对于日期时间字段无效。
当我的用户输入空白时,如何强制日期时间字段变成空白,以便下次查看时它会再次变为空白?
尝试输入0.日期通常自日期起以单位存储。在Windows中,整数是天数,分数是从(1/1/1601 ??)开始的一天中的时间。 – Noodles 2014-09-25 19:13:59
如果我这样做,我实际上会输入日期,当用户再次查看记录时,他们会看到第0天的日期。我希望他们看到空白。我也试图避免转换,例如检测第0天并将该字段留空,然后在保存之前恢复0。 – 2014-09-26 14:56:58