Foxtable(狐表)用户栏目专家坐堂 → 刚装商业版就出问题,求救


  共有5401人关注过本帖树形打印复制链接

主题:刚装商业版就出问题,求救

帅哥哟,离线,有人找我吗?
有点酸
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1093 积分:6682 威望:0 精华:0 注册:2013/7/1 9:05:00
  发帖心情 Post By:2013/8/27 20:02:00 [只看该作者]

18楼都告诉你原因, 是你的代码不严谨,为什么听不进去?

好好看看:

http://www.foxtable.com/help/topics/2044.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
sky-18
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:655 积分:5004 威望:0 精华:0 注册:2011/11/26 17:46:00
更乱了  发帖心情 Post By:2013/8/27 20:03:00 [只看该作者]

我用messagebox测试了 日发货表.日发货资料 里面的datacolchanging 的后几行代码,发现新增加行后,确认发货列的值 即时false 又是true.

靠!!!!!!!!!!


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/8/27 20:08:00 [只看该作者]

以下是引用sky-18在2013-8-27 20:03:00的发言:

我用messagebox测试了 日发货表.日发货资料 里面的datacolchanging 的后几行代码,发现新增加行后,确认发货列的值 即时false 又是true.

靠!!!!!!!!!!


不应该,我远程帮你看看吧。

 回到顶部
帅哥哟,离线,有人找我吗?
sky-18
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:655 积分:5004 威望:0 精华:0 注册:2011/11/26 17:46:00
22117064  发帖心情 Post By:2013/8/27 20:12:00 [只看该作者]

我的QQ


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/8/27 21:26:00 [只看该作者]

 帮楼主远程弄了很久,发觉确实存在 逻辑列 出现 * 的情况。

 可能真的是bug,建议狐爸明天帮楼主看看。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/8/27 21:32:00 [只看该作者]

 关联表增加行的时候,触发了 三个关联列的改变值事件(正常情况),不过奇怪还触发了另一个列 确认发货列 的值改变事件。

 图片点击可在新窗口打开查看无解。
[此贴子已经被作者于2013-8-27 21:32:27编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
sky-18
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:655 积分:5004 威望:0 精华:0 注册:2011/11/26 17:46:00
在线等解决  发帖心情 Post By:2013/8/27 22:12:00 [只看该作者]

明天一早在线等狐表救命啊

 回到顶部
帅哥,在线噢!
wjl-se
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:762 积分:6302 威望:0 精华:0 注册:2011/12/1 14:47:00
  发帖心情 Post By:2013/8/28 9:24:00 [只看该作者]

升级最新版后,我也发现了这个问题,经测试是datacolchanging事件代码对逻辑列的默认值有e.Cancel的动作,以前不存在这个问题,仔细琢磨一下,似乎也不应该为Bug。

把相关代码移到PrepareEdit事件即可。

 

比如:

datacolchanging

 

If e.DataCol.Name = "第一列" Then
    If e.DataRow("第二列") <> "a" Then
        e.Cancel = True
    End If
End If

 

增加行的时候,逻辑列就会出现第三种状态.

[此贴子已经被作者于2013-8-28 9:32:08编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/8/28 9:45:00 [只看该作者]

谢楼上,或者这么改一下也行:

 

If e.DataCol.Name = "第一列" AndAlso e.DataRow.Isnull("第一列") = False Then
    If e.DataRow("第二列") <> "a" Then
        e.Cancel = True
    End If
End If


 回到顶部
帅哥哟,离线,有人找我吗?
sky-18
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:655 积分:5004 威望:0 精华:0 注册:2011/11/26 17:46:00
谢谢  发帖心情 Post By:2013/8/28 10:24:00 [只看该作者]

谢谢这位狐友,昨晚我也是发现这个问题了,于是也像狐狸爸爸那样加了个 e.oldvalue 的值判断,就解决问题了。

很感兴趣这位狐友提出了问题的关键,逻辑列出现第三种值了。这很重要,如果不知道会有 e.cancel 值得存在的话在写代码的时候就会出错。


 回到顶部
总数 31 上一页 1 2 3 4 下一页