分享好友 数控技术首页 数控技术分类 切换频道

ERP系统用户权限的全动态配置研究及实现

2019-04-10 00:00740
摘要:利用数据库的管理功能,与系统数据紧密结合,达到ERP系统中用户权限实时的灵活配置,使用户权限的设置具体到用户界面的每一个按钮,并通过Delphi6.0编制动态链接库实现,便于类似系统间移植。
企业信息化是提升我国制造企业竞争力的重要途径。目前ERP(Enterprise Resource planning)已经在迅速推广之中,ERP系统的合理利用与企业管理的充分结合成为企业信息化成败的关键。一般情况下,ERP系统中将用户按职责与级别分类,同级之间不同职责属于并列关系,不同级别之间属于从属关系。因此用户最终将按此分为几个或十几个不同的用户群,同一个用户群具有相同的系统权限。这样的系统设置相对简单,容易管理,但是局限性也非常大。随着企业的发展,有可能进行分工的细化,或职责的改变,导致系统灵活性大大降低,进而人为依赖因素增大,造成责任不明确,并可能产生管理的困难。针对这种情况,需要重新考虑系统的使用权限问题,以达到方便、灵活并具有可伸缩性的目的。正是在这种情况下,在实际开发过程中,通过与数据库的紧密结合,实现了用户权限的全动态配置。

1 系统权限的多样性分析



①“增加”权限:②“修改”权限:③“删除”权限:④“查询”权限
图1

相对于其它应用系统如设计软件AutCAD而言,ERP系统中对用户权限的要求很高,因为用户权限的不明确将导致应用系统的使用权限混乱,进而导致管理的困难。对于类似系统而言,常见的人员权限形式如图1所示。图中①、②、③、④分别表示增加、修改、删除、查询的权限。
根据图1所示,系统权限多样性的表现形式之一为:对于同一种系统功能,不同的员工具有不同的使用权限。一般的权限分类将相同角色的人员赋予相同的权限,如图中仓库管理员2、3等具有仓库管理员的权限,部门员工1具有部门主管的权限,据此我们可以得知,这种权限的划分方法就是将用户分为不同的组,必定有相同权限的用户,因此,为了避免造成系统使用时可能带来的影响,必须在需求分析时将用户权限在当时甚至未来的角色发展作出详细的分析,大大增加了需求分析的工作量。
系统权限多样性的表现形式之二:系统的权限要求可能随企业的发展有较大的变化。例如,在作需求分析时,仓库管理员为一特定角色,但是在实际中,仓库管理员的职能可能产生分化,因此按“仓库管理员为一特定角色”开发出来的系统并不能完全适应用户的发展要求:而且,当开发方针对这一情况作出反映并进行完善的情况下,可能另一角色又发生了其它的变化。因此,开发人员将陷入无尽无休的“完善”之中。
系统权限多样性的表现形式之三:类似系统但不同的项目具有不同的角色分类,将导致重新编制类似的一套系统权限模块。企业应用的基础设施与业务无关都非常相似,例如汽车生产企业与机床生产企业,对于权限的本质并没有区别,可是开发时却要两次开发这种系统模块,从而大大地降低了开发效率。

2 权限管理的功能化抽象

由系统权限的多样性分析可以看出,针对于每一个具体项目,其具体的业务规则总是千变万化的,如果执著地追求业务实现细节,开发人员将陷入无尽无休的功能修改和完善之中。但是,从种种具体权限所涉及到的本质上的因素来看,经过抽象,无非表现在两个方面:系统功能和用户。


图2


图3



图4

以往系统权限模块的开发的实质类似图2所示,开发方经过需求分析,归纳出哪些功能可以划分为一组,哪些用户可以划分为一组,然后在此基础上进行开发,由于事先规定好的分组,造成了系统的先天不足。例如,在图2中,用户1和用户2处于相同的角色,当企业发展以至需要对两者的权限细节进行区分时,系统的管理功能就会显得苍白无力。
相比之下,图3的两个因素之间关系比图2有一定改善,因为对于每一个用户,其权限设置可以独立开来,但实际上,功能的分组同样可能使系统使用过程中的权限管理捉襟见肘。当用户需要对功能1和功能2的权限有所区别时,改变这种情况就变得比较困难了。
两种因素之间的关系针对不同的企业有非常大的区别,在系统使用过程中,这种关系的对应可以也应该由用户来进行,但在实际的开发过程中却转嫁到了开发人员身上,导致了开发的复杂程度增加。因此,应该由开发方开发出两者之间的对应规则,而具体如何对应可以根据用户需要进行灵活配置。
针对以上问题,我们进一步将所有功能和用户独立开来,可以得到如图4所示的关系形式,即对每一个用户,都可以对应所有的系统每项功能的细节,分别进行设置,系统初次投入使用时需要对所有用户进行权限设置,虽然工作较为繁琐,但是大大地增强了应用系统的灵活性。
在开发过程中所有权限设置的功能都给予用户,而开发人员注重于如何将这种设置形式通过代码实现。虽然程序的首次开发工作量比较大,但是可以作为一个独立模块,在不同的应用系统之间快速移植。

3 动态权限的数据结构

具体到数据结构方面,可以分为三个部分:系统功能、用户、系统功能的用户权限分配。针对于每一项,可建立相应的表来保存其相应数据。下面分列每个主要项目的字段列表。员工表:W-EMPLOYEE字段名字段类型描述特性备 注EMP-IDintID号主键  EMP-NAME[varchar](10)员工姓名   EMP-IDint部门编号外键W- DEPARTMENT.DEP-IDEMP-PASS[varchar](10)密码   权限表:W-AUTHORITY字段名字段
类型描述特性 备注AU-IDint权限ID号主键  EMP-IDint员工ID号外键W- EMPLOYEE.EMP-IDFUN-IDint功能ID号外键W- SYSFUN.DEP-IDAU-ADDbnt增加权限   AU-M)DIBnt修改权限   AU-DELBNT删除权限   AU-QUERYBnt查询权限   AU-AUDIbnt审批权限   系统功能表:W-sysfun字段名字段类型描述特性 FUN-IDInt系统功能ID号主键 FUN-MAINMNU[varchar](50)一级菜单  FUN-SECMNU[varchar](50)二级菜单  FUN-THIRDMNU[varchar](6)三级菜单  部门表:W-DEPARTMENT字段名字段类型描述特性 DEP-IDIntID号主键DEP-NAME[varchar](50)部门名称  DEP-SNAME[varchar](10)部门简称  
按以上结构划分,所有的权限功能限制主要保存在表W-AUTHORITY中。其中,AU-ADD、AU-MODI、AU-DEL、AU-QUERY、AU-AUDI分别表示增加、修改、删除、查询、审核的权限,其为布尔值,“1”表示有此种权限,“0”表示相反含义。因此,对此表记录的添加就可以表示对权限的设置,一般由系统管理员通过应用系统界面进行操作。用户在进入系统或选择弹出某些窗口界面时,首先对权限表进行查询,然后对应用系统中的每一项功能的权限按数据库中的记录进行设置。最终结果为:不同的用户进入同一系统,由于有不同的权限设置,从而进入不同的界面。

4 全动态权限配置的程序实现

在EPR系统的开发中,采用Delphi6.0作为开发语言,Microsoft SQL Server 2000提供数据库支持,完成了作者的预先设想。并把这个模块编制成一动态链接库,提供了函数调用、数据库建立、数据源设置的接口文件。图5所示为系统管理员进行权限设置的界面。


图5

由于考虑到在类似系统之间进行移植的问题,整个功能模块最终编译成为一动态链接库的形式。所以,此模块很容易被多种开发语言所支持,达到了与开发语言无关。例如,Microsoft Visual Basic、C++Builder等皆可。系统的调用接口例程如下所示,其代码以Delphi为例。
//声明部分:
type
tsetauthority=procedure;far;
//实现部分:
procedure Tmainform.N36Click(Sender:TObject);
var
aLib:THandle;
setauthority:Tsetanthority;
begin
alib:=LoadLibrary(authoritydii.DII);
if alib>=32 then
begin
@setauthority:=GetProcAddress(aLib, setauthori-ty);
try
setauthority:
finally
FreeLibraty(aLib):
end:
end:
end:

5 结论

通过对ERP系统中用户权限的全动态配置要求的研究及分析,利用数据库的管理功能,与系统数据紧密结合,实现了用户权限实时灵活配置。由于经常开发类似系统,所以这种与开发语言无关功能调用的实现使得在类似系统间的移植变得极为方便,并大大提高了代码的可重用性。
举报
收藏 0
打赏 0
轻松提高数控机床精度
随着我国经济的飞速发展,数控机床作为新一代工作母机,在机械制造中已得到广泛的应用,精密加工技术的迅速发展和零件加工精度的

0评论2025-01-04313

加工中心刀具长度补偿怎么用?
在数控加工中,刀具长度补偿是一种重要的措施,用于消除机床变形、热变形等因素引起的误差,保证加工精度,从而提高培训效率,减

0评论2024-12-18400

加工中心主轴定位角度怎么调?
  在数控加工领域,加工中心主轴的定位角度是影响加工精度和效率的重要因素之一。正确调整主轴的定位角度可以提高加工质量,减

0评论2024-12-11496

简述机器人加装电主轴就选Kasite 4060ER-S的理由
  近年来,随着科技的不断发展,机器人作业已经渗透到各个领域,尤其在工业制造领域,更加随处可见。高精密切割、铣削、雕刻、

0评论2024-05-20707

机器人主轴怎么选?Kasite高速电主轴满足你的需求
  机器人发展到现在越来越受到人们的欢迎和重视,现在很多传统行业都在生产作业中引入了工业机器人,随着机器人的改进和优化,

0评论2023-10-231208

机械臂加装2.2KW大力矩电主轴,就选MSIY-80电主轴
机械臂想加装大力矩电主轴,用于铸钢等硬质材料去毛刺,铣削等加工,可以考虑MSIY-80电主轴,外径80mm,重量4.8公斤,可搭配轴向或径向浮动刀柄配套使用。

0评论2023-08-261203

每天早上打开数控机床时有没有必要热机?
工厂使用精密数控机床(加工中心、电火花、慢走丝等机床)进行高精密加工,你是否有这样的经验:每天早上开机进行加工,首件的加

0评论2023-08-151093