Foxtable(狐表)用户栏目专家坐堂 → [求助]代码生成的列数据没能触发datacolchanged事件


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

主题:[求助]代码生成的列数据没能触发datacolchanged事件

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/2/24 22:20:00 [显示全部帖子]

 

systemready = false 会导致所有事件都会触发的。你可以移除。

 

或者是,在代码最后,重置对应的行。

 

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/28 17:14:00 [显示全部帖子]

以下是引用天一生水在2019/5/28 17:03:00的发言:

甜老师好!

怎样在表事件里"......重置对应的行。"?

 

请具体说明你的逻辑。在什么表事件,要重置什么行?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/28 17:15:00 [显示全部帖子]

如果需要重置datacolchanged,参考

 

http://www.foxtable.com/webhelp/scr/1587.htm

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/29 10:38:00 [显示全部帖子]

如果要重置全部行,参考
 
DataTables("数据表").DataCols("合并审理").RaiseDataColChanged()
 
如果要根据条件重置列,请select查询每一行数据,然后对比值

 

If dr("合并审理") <> dr.OriginalValue("合并审理") Then

    DataTables("数据表").DataCols("合并审理").RaiseDataColChanged(dr)

End If

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/29 12:25:00 [显示全部帖子]

加入msgbox弹出值看看

 

For Each dr As DataRow In DataTables("数据表").DataRows

msgbox(1)
    If dr("合并审理") <> dr.OriginalValue("合并审理") Then

msgbox(2)
        DataTables("数据表").DataCols("合并审理").RaiseDataColChanged(dr)
    End If
Next

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/29 16:08:00 [显示全部帖子]

以下是引用天一生水在2019/5/29 15:24:00的发言:

看了老师的回复,代码没动,再运行就行了,真奇怪~

但是放在表事件里不行,应该是没有编辑的动作吧,可以放到窗口的afterload或按钮中。

 

就是要放在按钮或者对应事件处理的。必须触发了才会运行的。


 回到顶部