Foxtable(狐表)用户栏目专家坐堂 → [求助]多用户下,窗口控件绑定的数据同步问题?


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

主题:[求助]多用户下,窗口控件绑定的数据同步问题?

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
[求助]多用户下,窗口控件绑定的数据同步问题?  发帖心情 Post By:2020/2/29 19:21:00 [只看该作者]

窗口“订单表窗口”中有一个控件,绑定显示“产品表”中的客户名相同的行的"价格"列,
当用户A,修改了其中一行的"价格"列后,
希望用户B,在选定该行时,此控件中的“价格”也同步变化,应该怎么做?

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


[此贴子已经被作者于2020/2/29 19:32:34编辑过]

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(fengwenliuyan)[求助]多用户下,窗口控件绑定...  发帖心情 Post By:2020/2/29 19:33:00 [只看该作者]

密码都是888

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2020/3/1 15:50:00 [只看该作者]

Foxtable的帮助处处是宝贝,不要错过:

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


这是更新一列的做法,如果要多列:

更有效率的:


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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(狐狸爸爸)Foxtable的帮助处处是宝贝,不要错...  发帖心情 Post By:2020/3/1 17:32:00 [只看该作者]

您发的项目我试过,改成多列的后,发现,还是需要换行后再同步当前表才能刷新产品表的指定列,但是若是在当前表同步就不成了。
而且,还有个需求,
我明明在CurrentChanged事件中写了新增同步代码:
Dim cr As Row = e.Table.Current
If cr IsNot Nothing Then
    Dim idx As Integer = Tables("产品表").FindRow("客户 = '" & cr("客户") & "'")
    If idx >= 0 Then
        Tables("产品表").Position = idx
    End If
End If

,且窗口表的CurrentChanged事件也写了:
'SystemReady = False
If e.Table.current Is Nothing Then Return
systemready = False

'换行时,同客户列同步:
Tables("产品表").filter = ""
Dim i = Tables("产品表").FindRow("客户 = '" & e.Table.current("客户") & "'")
If i>=0 Then
    Tables("产品表").position = i
Else
    Tables("产品表").filter = "1=2"
End If

systemready = True

但就是做不到新增行的同步新增?
求帮助?

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



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


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/1 23:17:00 [只看该作者]

4楼的用法仅适合单机。

首先用户a的修改价格后需要保存,然后用户b需要重新加载产品表数据。数据刷新后4楼才有效,简单的先加载一下数据
……
'换行时,同客户列同步:
DataTables("产品表").Load
Tables("产品表").filter = ""
Dim i = Tables("产品表").FindRow("客户 = '" & e.Table.current("客户") & "'")

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(有点蓝)4楼的用法仅适合单机。首先用户a的修...  发帖心情 Post By:2020/3/2 14:54:00 [只看该作者]

这样设置后,发现同步后的第一次换行,需要很长时间?
应该怎么避免迟缓?

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


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/2 15:33:00 [只看该作者]

只加载这行数据

Tables("产品表").filter = ""
Dim i = Tables("产品表").FindRow("客户 = '" & e.Table.current("客户") & "'")
if i=-1 then
dataTables("产品表").appendend("客户 = '" & e.Table.current("客户") & "'")
end if
i = Tables("产品表").FindRow("客户 = '" & e.Table.current("客户") & "'")
If i>=0 Then
    Tables("产品表").position = i
Else
    Tables("产品表").filter = "1=2"
End If

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(有点蓝)只加载这行数据Tables("产品表").fil...  发帖心情 Post By:2020/3/2 15:52:00 [只看该作者]


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

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


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/2 15:59:00 [只看该作者]

dataTables("产品表").appendload("客户 = '" & e.Table.current("客户") & "'")

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(有点蓝)dataTables("产品表").appendload("客...  发帖心情 Post By:2020/3/2 16:18:00 [只看该作者]

试了,还是没能提速?

 回到顶部
总数 17 1 2 下一页