以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 2处代码冲突!(项目已上传)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=15343)

--  作者:gaoyong30000
--  发布时间:2011/12/21 14:46:00
--  [求助] 2处代码冲突!(项目已上传)

我有个窗口的afterload代码
 Tables("现场检查").Filter = "审核状态 = false"

 

 

和 现场检查表里的 Beforeselchange
If Tables("现场检查").Current.DataRow.RowState <> DataRowState.Unchanged Then
    MessageBox.show("该记录已经被修改,保存之前不可换行")
    e.cancel = True
End If

 

有冲突  一应用窗口就出现


图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看

 

任意删除这2处代码的其中一处 问题就会消失 什么情况?

[此贴子已经被作者于2011-12-21 15:40:04编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/12/21 14:48:00
--  

if Tables("现场检查").Current isnot Nothing then

    If Tables("现场检查").Current.DataRow.RowState <> DataRowState.Unchanged Then
          MessageBox.show("该记录已经被修改,保存之前不可换行")
          e.cancel = True

    End if
End If


--  作者:gaoyong30000
--  发布时间:2011/12/21 14:57:00
--  
老大 应用窗口后 项目直接关闭了!图片点击可在新窗口打开查看
--  作者:狐狸爸爸
--  发布时间:2011/12/21 15:05:00
--  

做个简单例子上传说明问题。


--  作者:gaoyong30000
--  发布时间:2011/12/21 15:40:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar

 

窗口在表A里面  2处冲突的代码 就在上面说的2个事件里面   应用窗口  就会出现关闭情况


--  作者:gaoyong30000
--  发布时间:2011/12/21 19:07:00
--  

这究竟什么情况啊!


--  作者:yangming
--  发布时间:2011/12/21 21:16:00
--  

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目1.zip

 

加了一个全局变量,是逻辑型的,设置了一个条件,你看一下,窗口中的事件与表A中的事件代码就明白了,由于是开发版,为了大家学习,我将代码贴上来,红色的是我加上的.

一. 表A中表事件:BeforeSelChange中的代码,

If Vars("A")= True Then
    Return
Else
    If Tables("表A").Current.DataRow.RowState <> DataRowState.Unchanged Then
        MessageBox.show("该记录已经被修改,保存之前不可换行")
       
        e.cancel = True
    End If
End If

二.窗口:AfterLoad中:

Vars("A")= True
Tables("表A").Filter = "第一列 = 1"

三. 窗口:BeforeClose 中

Vars("A")= False

[此贴子已经被作者于2011-12-21 21:20:35编辑过]

--  作者:yangming
--  发布时间:2011/12/21 21:42:00
--  
楼主用的是绑定表,如果换成其他类型的表,就不会出现冲突了,楼主可以试试
--  作者:gaoyong30000
--  发布时间:2011/12/21 22:10:00
--  

终于调试成功 多谢了~~~~~~~~~~~  

 

 

需要申明一下的是 我的这个问题 

对于窗口中的table 

独立窗口录入框输入数据的时候  想限制客户绕过保存按钮 通过换行就可以保存数据的bug情况非常好 之前就一直头疼这个问题  今天终于在杨版的帮助下解决了~~

 

 

 

有心的同学 可以去将军仓库看一下 

其独立窗口录入数据的时候  修改了数据 然后不保存 再切换行 就可以绕过保存按钮 直接保存了  窗口中的防止不保存就换行的代码就无效了(防止不保存的代码在 其上一条 下一条的按钮里面)

[此贴子已经被作者于2011-12-21 22:17:05编辑过]