以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]独占式编辑表编辑时间使用全局表事件不触发 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=152192) |
-- 作者:crazyfengyu -- 发布时间:2020/7/9 10:07:00 -- [求助]独占式编辑表编辑时间使用全局表事件不触发 由于所有表都需要进行独占式编辑,所以将表编辑的事件,写在了项目事件中的全局表事件,但是全局表事件一直不触发,在事件第一行使用弹框都没有弹出来,代表表事件压根就没有触发 |
-- 作者:crazyfengyu -- 发布时间:2020/7/9 10:15:00 -- 使用下面的开启了表事件有效了,但是如果是代码直接控制的表修改无法监听到。而且好像一个人编辑完了,另一个可以直接编辑,都不知道需不需要刷新当前数据 |
-- 作者:有点蓝 -- 发布时间:2020/7/9 10:21:00 -- 代码直接控制的表一样要开启了表事件,在控制代码之后开启 |
-- 作者:crazyfengyu -- 发布时间:2020/7/9 10:29:00 -- For Each dt As DataTable In DataTables dt.GlobalHandler.StartEdit= True Next For Each dt As DataTable In DataTables dt.GlobalHandler.BeforeSaveDataRow= True Next For Each dt As DataTable In DataTables dt.GlobalHandler.AfterEdit= True Next 我开启了上面3个表事件 1.代码控制修改控制的表事件是哪个? 2.一个人修改了退出了编辑,另一个可以直接在进行编辑,都不知道需不需要进行数据刷新,这样独占式编辑好像没有起到很大的作用,是不是我按照链接的写法有问题?
|
-- 作者:有点蓝 -- 发布时间:2020/7/9 10:44:00 -- 比如:tables("窗口1——table1").fill(xxxxx) tables("窗口1——table1").datatable.GlobalHandler.StartEdit= True tables("窗口1——table1").datatable.GlobalHandler.xxxx= True
|
-- 作者:crazyfengyu -- 发布时间:2020/7/9 10:54:00 -- 我把表事件都开启了,然后 例如:订单表
订单号
状态
时间
0001
草稿
20200709 按钮: 提交 提交代码:
dim r as row = tables("订单表").Current
if r("状态") = "草稿" then
r("状态") = "待审批"
end if
if datatables("订单表").Haschanges then
datatables("订单表").Save
end if 点击提交按钮将订单表当前行状态改为了待审批,独占式编辑就没有监听到 |
-- 作者:有点蓝 -- 发布时间:2020/7/9 11:12:00 -- 全局表事件有没有触发?如果没有触发,说明没有开启 |
-- 作者:crazyfengyu -- 发布时间:2020/7/9 11:20:00 -- 一个人修改了退出了编辑,另一个可以直接在进行编辑,都不知道需不需要进行数据刷新,这个怎么处理? |
-- 作者:有点蓝 -- 发布时间:2020/7/9 11:23:00 -- 既然都退出了编辑,别人当然可以编辑。如果要看最新数据,肯定要刷新的。可以在startedit事件调用e.row.datarow.load加载 |
-- 作者:有点蓝 -- 发布时间:2020/7/9 11:23:00 -- 或者结合这个:http://www.foxtable.com/webhelp/topics/3006.htm |