以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  授权表如何控制已打开的表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=147212)

--  作者:透明人生
--  发布时间:2020/3/11 23:39:00
--  授权表如何控制已打开的表
有一用户“陈”已登录并打开“表A”,然后另一用户“李”利用授权表进行授权“表A”的“第五列”不可见,
除了用户“陈”重新登录外,有没有办法直接控制用户“陈”的“表A”的“第五列”不可见。当然用户“陈”
要运用“同步当前表”按钮,才能更新“表A”中的内容。所以我试过把“授权表代码”放进项目事件中的加载
外部表前运行不行,表事件中的列内容变化也不行等等。

--  作者:狐狸爸爸
--  发布时间:2020/3/12 11:01:00
--  
如果对方已经登录,是没有办法的,除非你用OpenQQ发信息,但这是一个非常繁琐的设计过程,没有必要了。


--  作者:透明人生
--  发布时间:2020/3/12 12:00:00
--  
那这样一来,授权表就等于虚设。
--  作者:狐狸爸爸
--  发布时间:2020/3/12 12:44:00
--  
可不能这么理解,例如网银,如果人家网页已经显示了去年的流水,你再到后台禁止他看去年的流水,除非人家刷新网页,否则也是没有办法生效的。
--  作者:爱好所有
--  发布时间:2020/3/12 13:00:00
--  
你这种要求没法直接达到的,人家不刷新就没有办法控制,可以用变通的方法如:在数据库中另建一个表,再在客户端设置每几秒检查一次这个表有没有变动,如果这个表有变动就刷新所有表,这样就能实现实时更新权限了。
--  作者:wei0769
--  发布时间:2020/3/12 13:17:00
--  

做一个定时任务,根据授权表循环执行.


--  作者:透明人生
--  发布时间:2020/3/12 15:01:00
--  
用户已登录,在不关闭系统时,再次登录,已打开表内的数据会更新,授权隐藏列没更新,需要再一次登录,隐藏列就更新了。
有没有办法地切换用户登录时,先关闭指定的表A,再重新从远程数据库加载表。

--  作者:狐狸爸爸
--  发布时间:2020/3/12 15:04:00
--  
可以看看:
--  作者:xndd
--  发布时间:2020/3/12 15:31:00
--  
其实是可以实现的。
关键要变通。
金蝶wise修改完权限后,直接变化了权限内容,就是在于判断时机和操作时机。判断时机就是在你进入模块界面的时候,操作时机是要退出界面再进入界面。此外就是权限表变化后通知到客户端。

--  作者:狐狸爸爸
--  发布时间:2020/3/12 15:33:00
--  
可以通过OpenQQ发送命令给客户端执行特定的操作,例如: