Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
紧急求救模式窗口下导致系统出错,这样的代码在窗口为其它类型时没问题,改为模式窗口后,导致系统出错,只能强制退出
此主题相关图片如下:qq截图20110502123202.png
下载信息 [文件大小: 下载次数: ] | |
![]() |
请测试,打开表A的窗口,然后选择"审核"时就出错
可能有bug吧,想办法绕开他,例如事先将其只读属性设置为True
那得麻烦狐爸看看倒底是不是bug,如果是请尽快更新解决,我要的不是将其只读属性设置为True,而是在操作这个审核前面还在一部条件代码,在不符合条件的情况下,才e.Cancel = True
之所以以前没发现,是因为基本没有在模式窗口中进行录入,现在有了流程帮助,所以要将以前的其它类窗口改为模式窗口才发现的
呵呵,这个问题可能不好解决的,还是想办法绕开吧。
你完全可以在检查框的Enter事件中设置代码,如果不符合条件,将其ReadOnly属性或者设置为False。
enter方法参考:
http://help.foxtable.com/topics/0734.htm
呢?
Select Case e.DataCol.NameCase "审核_财务审核标识"
If e.DataRow("结帐标识") = True Then
e.Cancel = True '取消编辑
Messagebox.Show("数据已结帐,不能操作!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
Else If _UserGroup <> "财务部" AndAlso _UserGroup <> "财务部经理" Then
e.Cancel = True '取消编辑
Messagebox.Show("只有财务部人员才有权操作!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
Else If e.DataRow("审核_物流审核标识") =False Then
e.Cancel = True '取消编辑
Messagebox.Show("物流部尚未审核!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
Else If e.DataRow("审核_仓储审核标识") =False Then
e.Cancel = True '取消编辑
Messagebox.Show("仓储部尚未审核!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
End Select
如果是通过窗口录入,就考虑在此控件的Enter事件中设置代码,如果禁止编辑,则将其Readonly属性设置为FAlse.
如果是通过表输入,就考虑在PrepareEdit事件设置代码,如果禁止编辑,则e.Cancel。
这个bug我已经收藏,希望能解决,但初看问题比较复杂。
希望能解决,因为不知道哪些情况会出现这样的问题,所以不知道哪些代码需要绕开,而且也不容易绕开
我的是通过窗口录入
之前这样的代码我设在表的PrepareEdit中,此表作为关联表在窗口中操作时也偶尔会出现同样的问题,因为是偶尔出现,所以一直没有找到原因,才改在DataColChanging中设置