设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1894|回复: 7
打印 上一主题 下一主题

[窗体] [求助]请继续关注:在关闭录入窗体时,如何判断数据是否完整

[复制链接]
跳转到指定楼层
1#
发表于 2007-1-29 21:25:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
[求助]

1、关闭窗体时,如何实现提示是否保存记录?

2、保存记录时,如何判断文本框是否为空,数值是否大于0,日期是否大于某指定日期,否则提示相关信息。

请各路高手明签,提示

不胜感激。

[此贴子已经被作者于2007-1-29 17:19:53编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
8#
发表于 2008-5-4 10:27:30 | 只看该作者

回复 4# 的帖子

可以自己定义提示的
7#
发表于 2007-1-31 04:01:00 | 只看该作者
fan0217 的说法更为 精确。
6#
发表于 2007-1-30 18:03:00 | 只看该作者
应该在更新前进行数据验证,然后再根据验证的情况提示用户作下一步处理,在关闭前如果窗体数据发生了变化会触发更新前事件的。
5#
发表于 2007-1-30 04:59:00 | 只看该作者
如果窗体是绑定数据的话,可以这样做:


表里面不要设置任何规则,否则 jet引擎方面的错误很是烦人。建议使用窗体界面来解决这个问题。


1将窗体的 '允许添加' 属性设为 '是'。这个设置,关系到你关闭后是否自动保存数据。


2在窗体的卸载事件中,对必填的控件进行判断。如果有必填项目,用户却提交了空,就删除刚才的记录。


如果用户必填项全部提交,就什么都不做。


形如这样的代码:


Private Sub Form_Unload(Cancel As Integer)





'卸载事件发生在窗体被关闭之后.因为本窗体的'允许添加'属性设为'是',关闭后将会自动保存数据。


If IsNull([体检时间]) Or IsNull([何种疾病]) Then


   


    If MsgBox("关键信息为空,该人体检信息未保存!", vbInformation + vbCritical, "关闭前提示") = vbOK Then





        DoCmd.SetWarnings False


        '如果数据不完整就删除该条自动保存的数据


        DoCmd.RunSQL "DELETE tbl_体检.编号  FROM tbl_体检  WHERE (((tbl_体检.编号)=[Forms]![frm_健康检查表]![编号]));  ", -1’可以针对性写上你的录入窗体名称


        DoCmd.SetWarnings True


        


    End If


        


Else


    ‘如果用户必填项全部提交,就什么都不做.给出一个提示


    MsgBox "数据保存成功!", vbInformation, "关闭前提示"


   


End If





End Sub








[此贴子已经被作者于2007-1-29 21:08:04编辑过]

4#
发表于 2007-1-30 04:53:00 | 只看该作者
这种东西一般就在表的规则里设定,用不着再判断,只是有些提示不友好。用户多看几次就习惯了。
3#
 楼主| 发表于 2007-1-30 01:08:00 | 只看该作者
感谢。但还有两个问题:

1、保存记录时,有两字段无何判断无效呢?而“录入人”判断是有效的。

2、关闭窗体时,如何实现:

提示是否保存,若选择“是”,则按保存记录的判断进行判断,记录完整,保存退出,不完整,提示。“否”则删除记录。

再次感谢。


[此贴子已经被作者于2007-1-30 12:42:44编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
2#
发表于 2007-1-29 22:16:00 | 只看该作者
可参照这个例子的提示方法

http://www.office-cn.net/forum.php?mod=viewthread&tid=52001

[此贴子已经被作者于2007-1-29 14:15:45编辑过]

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-1 19:46 , Processed in 0.109080 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表