Foxtable(狐表)用户栏目专家坐堂 → [求助]TopicBar及有关授权问题


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

主题:[求助]TopicBar及有关授权问题

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


加好友 发短信
等级:九尾狐 帖子:2239 积分:18446 威望:0 精华:0 注册:2011/11/26 20:21:00
[求助]TopicBar及有关授权问题  发帖心情 Post By:2014/4/13 20:53:00 [只看该作者]

前提:我也看了“基本功能演示”里的导航的窗口设计,因为里面的有些内容在帮助文档里看不到,所以也不敢随便套用,怕出错。
象MarkCell、FormStyle等等都没有

1、现在我做的这个例子中,TopicBarPages比较多,但点不同的page时,有时候其它的page并没有折叠起来,还是呈展开状态,多点两下又好了,想请教各位是什么原因?
2、相关的授权问题,一是对表或窗口的可见,二是对表中的行列或者窗口的按钮操作 
一、对表或窗口的可见
在这个例子中,link链接有两种情况:A:有很多link是直接链接到maintable对应的表的
                                           B:“物料管理-销售是链接到maintable=“出库”的,但是此时应当打开主窗口“MatSale”的
我的想法:对当前登录用户来说,对表或窗口是否可见,可以通过控制link的visiable属性来间接实现。

二、对业务的编辑(包括AllowAddnew,AllowDelete,AllowEdit),对表中某列的操作(例如审
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:topicbar及有关授权问题2.rar

核某一行数据),应当如何做?例如对张三这个登录用户,可以编辑入库单(包括增、删、改),但不能审核任意行的数据;李四不能编辑,但可以看、审核任意行的数据
对link链接打开的是主窗口(例如物料管理-销售)的这种情况,要想实现对编辑、审核的控制又应如何来做?
[此贴子已经被作者于2014-4-13 20:54:02编辑过]

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


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

 第一个问题,没有测试出来,可能是点击过快的原因?

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


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

第二个问题,如果要实现编辑可控制,可以直接把列锁定或者编写prepareedit事件。

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


加好友 发短信
等级:九尾狐 帖子:2239 积分:18446 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2014/4/13 23:57:00 [只看该作者]

非常感谢回复。
第一个问题完全可以重现:先点一下系统管理,再点一下用车管理,再点一下人员管理,稍快一点点就会重现。
第二个问题:表太多了,我目前上传的例子只是系统中的一部分表(只是为了说明问题),而实际的业务表比现在的表要多出5倍不止。如果每个表都去写prepareedit,当然可以实现,但是不利于系统的维护,如果规则稍稍改变都要去改几十个表的prepareedit事件,也挺痛苦啊。

比如直接在授权时就确定表的增删改权限、审核权限,那么是否可以在项目管理的表事件中统一写prepareedit代码?

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


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

第一个问题,应该无解,你加入 Application.DoEvents 可能会好一些。

 

第二个问题,你做个权限表吧,然后在全局表事件里写控制代码就行。


 回到顶部