以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于BeforeCloseProject的求助。(已解决) (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=19986) |
||||
-- 作者:pc005637 -- 发布时间:2012/5/26 10:33:00 -- 关于BeforeCloseProject的求助。(已解决) 项目各用户密码都是:888
项目要求:关闭项目前校验,当有记录"姓名"为空,而且"接诊医生"为当前用户,而且"国籍"不为"城堡"时。提示,并筛选出相应记录。
[此贴子已经被作者于2012-5-28 21:46:52编辑过]
|
||||
-- 作者:mr725 -- 发布时间:2012/5/26 16:47:00 -- 加一个条件你应该没问题的吧:
If DataTables("表A").Find("[姓名] Is Null And [国籍] <> \'城堡\' And [接诊医生] = \'" & _ |
||||
-- 作者:pc005637 -- 发布时间:2012/5/26 22:47:00 -- 上面的代码是完全没反应,直接关闭项目了. 我原先也是按你说的方法来做的,就是因为不成功,才发贴求助的.
And [国籍] <> \'城堡\' 这段代码 不知道到是不是不能在 FIND 中起到作用? [此贴子已经被作者于2012-5-26 22:48:29编辑过]
|
||||
-- 作者:pc005637 -- 发布时间:2012/5/27 8:54:00 -- 回复:(pc005637)关于BeforeCloseProject的求助。(未... 继续顶上去。 |
||||
-- 作者:程兴刚 -- 发布时间:2012/5/27 9:34:00 -- If DataTables("表A").Find("[姓名] Is Null And [接诊医生] = \'" & User.Name & "\'") IsNot Nothing Then Dim Result As DialogResult Result = Messagebox.Show("你在""表A""表中存在没有输入姓名的记录,请删除后再关闭项目!","提示", MessageBoxButtons.OK, MessageBoxIcon.Information) If Result = DialogResult.OK Then e.Cancel = True \'取消关闭项目 Tables("表A").Filter = "[姓名] Is Null And [接诊医生] = \'" & User.Name & "\'" MainTable = Tables("表A") End If End If |
||||
-- 作者:pyh6918 -- 发布时间:2012/5/27 9:36:00 -- If DataTables("表A").Find("[姓名] Is Null And [接诊医生] = \'" & User.Name & "\' and [国籍]<>\'城堡\'") IsNot Nothing Then Messagebox.Show("你在""表A""表中存在没有输入姓名的记录,请删除后再关闭项目!","提示") e.Cancel = True \'取消关闭项目 Tables("表A").Filter = "[姓名] Is Null And [接诊医生] = \'" & User.Name & "\'and [国籍]<>\'城堡\'" MainTable = Tables("表A") Return End If |
||||
-- 作者:程兴刚 -- 发布时间:2012/5/27 9:36:00 -- 为何不直接删除?这样的话一行代码就可以搞定:
DataTables("表A").DeleteFor("[姓名] Is Null And [接诊医生] = \'" & User.Name & "\'") |
||||
-- 作者:pc005637 -- 发布时间:2012/5/27 10:07:00 -- 回复:(程兴刚)为何不直接删除?这样的话一行代码就... 因为项目是运行在互联网上,环境例子: 分公司如果需要添加记录,必须总公司才能生成,不过记录会以国籍区别不同的公司。生成记录后,分公司会同步后,填写各项内容。但是填写不一定及时。
比如只有"城堡"公司才有这种添加记录的权限,其它公司就没有。
所以必须做出一定的校验。要不然"城堡"公司还没输入内容的话,你就关不了软件了。 |
||||
-- 作者:程兴刚 -- 发布时间:2012/5/27 10:44:00 -- 最好用自定义登录,就不会出现这些问题! |
||||
-- 作者:pc005637 -- 发布时间:2012/5/27 16:56:00 -- 回复:(程兴刚)最好用自定义登录,就不会出现这些问... 因为要限制子单位不能生成新记录,所以只能在总部生成记录了,下面子单位只能修改完善记录。
现在的主要问题是
DataTables("XX").Find() 的问题。里面的条件不能使用<>.的问题。想求个解决方法。曲线的也行。 |