以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]TopicBar及有关授权问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49185)

--  作者:chnfo
--  发布时间:2014/4/13 20:53:00
--  [求助]TopicBar及有关授权问题
前提:我也看了“基本功能演示”里的导航的窗口设计,因为里面的有些内容在帮助文档里看不到,所以也不敢随便套用,怕出错。
象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编辑过]

--  作者:有点甜
--  发布时间:2014/4/13 21:26:00
--  
 第一个问题,没有测试出来,可能是点击过快的原因?
--  作者:有点甜
--  发布时间:2014/4/13 21:29:00
--  
第二个问题,如果要实现编辑可控制,可以直接把列锁定或者编写prepareedit事件。
--  作者:chnfo
--  发布时间:2014/4/13 23:57:00
--  
非常感谢回复。
第一个问题完全可以重现:先点一下系统管理,再点一下用车管理,再点一下人员管理,稍快一点点就会重现。
第二个问题:表太多了,我目前上传的例子只是系统中的一部分表(只是为了说明问题),而实际的业务表比现在的表要多出5倍不止。如果每个表都去写prepareedit,当然可以实现,但是不利于系统的维护,如果规则稍稍改变都要去改几十个表的prepareedit事件,也挺痛苦啊。

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

--  作者:有点甜
--  发布时间:2014/4/14 10:21:00
--  

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

 

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