如何设计单据的记录操作权限数据结构? (共200分!)(1分)

  • 主题发起人 WilliamGui
  • 开始时间
W

WilliamGui

Unregistered / Unconfirmed
GUEST, unregistred user!
如何设计单据的记录操作权限数据结构?
不是简单控制,需要如,
A用户可以查看本部门的单据,
B用户可以查看所有的,
对数据的操作上也一样。
大家谈谈该如何设计比较好,又简洁!
 

海怪

Unregistered / Unconfirmed
GUEST, unregistred user!
D

dey-999

Unregistered / Unconfirmed
GUEST, unregistred user!
按部门或者员工(上下级关系)设置权限,然后在记录中存在部门字段,或者员工字段
 
W

wcq1002

Unregistered / Unconfirmed
GUEST, unregistred user!
1.功能权限设计一个表,(新建,修改,删除,查询....,菜单号,功能号(权限号),..)
2.用户权限设计一个表.(用户名,功能号(权限号),.....)
用户权限表和功能权限表关联即可控制权限.
 
W

wcq1002

Unregistered / Unconfirmed
GUEST, unregistred user!
然后可设计一个公共函数,可以控制到菜单级,也可以控制到功能级,随你自己需求...
 
W

WilliamGui

Unregistered / Unconfirmed
GUEST, unregistred user!
我的意思不是说控制新增、修改操作,而是根据用户的定义控制哪些数据可以新增、修改!
 
Z

z_cd

Unregistered / Unconfirmed
GUEST, unregistred user!
针对同样的单据内容(SQL语句的Select部分),设置多个查询条件(SQL语句的条件部分),
然后给不同的角色 设置不同的查询条件。这样程序运行时,根据用户角色自动构造SQL语句进行查询。
不知能否解决你的问题。
PS:对MIDAS主从表结构研究得怎么样了?现在开始搞设计了?厉害了呀,呵呵
 
S

sailsoft

Unregistered / Unconfirmed
GUEST, unregistred user!
彻底的用户权限设计思路:
功能使用方面:子系统、模块、功能点(模块的各种功能,包括增、删、改等)使用开关
数据访问方面:模块条件 + 信息集(表)、信息项(字段)访问开关
|______| |_________| |__________|
过滤,同z_cd 增、删、改 改、显示
 
W

WilliamGui

Unregistered / Unconfirmed
GUEST, unregistred user!
To z_cd;
就数据操作来说,现在已很稳定了,已完成HR,正在做库存,
有时间交流一下,我的QQ:4980688
To z_cd, sailsoft:
想来想去,也只能在SQL上动手脚,问题是总不能让用户去写SQL吧,即使是写也要简便一点吧,因此,达到要求,附带的条件是,
1. 有限的数据权限控制,不需要太复杂
2. 可以接受的用户操作界面
3. 尽可能少的数据表
 
S

sailsoft

Unregistered / Unconfirmed
GUEST, unregistred user!
更准确的说是在where子句上入手(功能强大点需考虑嵌套条件、所有的关系运算符),
至于达到简单易用上就需在UI上花点工夫,让普通用户都能快速上手。
 
Z

zj_mpy

Unregistered / Unconfirmed
GUEST, unregistred user!
使用SQL语句
 
C

chinaxuguojun

Unregistered / Unconfirmed
GUEST, unregistred user!
如果只是对部门的数据进行操作,我觉得可以如下设计,设计一个表,它有用户ID,部门ID
同一个用户ID可以拥有多个部门ID,这个在界面上可以设定为数据权限,然后在个人登录系统上,根据这个用户拥有的部门去查出这个用户可以查看的数据,当然,在前期的时候你系统里的其它业务数据必须与部门有直接或间接的关系
我以前做过类似的系统,就是通过这种方法实现的
 
W

WilliamGui

Unregistered / Unconfirmed
GUEST, unregistred user!
我只是举个例,条件需要用户可以自己设置
 

蓝叶菱

Unregistered / Unconfirmed
GUEST, unregistred user!
每个用户分一个部门,和角色字段
如果角色是全部,全部功能,
如果角色是部门,就看部分的。
比如
登陆的时候:记录登陆信息和角色,部门信息。
type
myframe=record
username:
deptname
rolename:
end;
var
my:myframe;
这样查询就可以了
 
L

Lucker

Unregistered / Unconfirmed
GUEST, unregistred user!
创意、自由、灵活,独特的双数据源连接,全功能的表格组件,超强的报表功能
http://www.anylib.com
 
W

WilliamGui

Unregistered / Unconfirmed
GUEST, unregistred user!
已经实现!
欢迎大家,看下贴下载试用此功能,权限管理方便集中,较实用适用
http://www.delphibbs.com/delphibbs/dispq.asp?lid=3320911
 
顶部