知识大全 PB用户权限管理[2]
Posted 菜单
篇首语:不亏待每一份热情,不讨好任何的冷漠。一旦攒够了失望,就离开。从此再也不见,友情如此,爱情亦如此。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 PB用户权限管理[2]相关的知识,希望对你有一定的参考价值。
PB用户权限管理[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
动态菜单的实现可以分为以下步骤
一 准备工作
建立模块属性表 包括所有需要分配的模块的窗口名称 标题 图标 Microhelp ToolbarItemText等属性
建立部门可用菜单表 包括部门号 menu_bar 顺序 可用窗口名称等属性
建立部门模块管理功能 此功能主要分配某部门可以打开那些模块 以及这些模块如何布置
二 动态菜单实现
创建一个菜单 m_main_frame 含所有部门都需要的项 如[文件] [窗口] [帮助]等 然后在中间加入 个menu_bar 每个menu_bar下建立 个menu_item(可以按实际情况增减)
在每个menu_item下调用函数mf_open_module(this tag) 该函数即用于打开窗口(模块)
程序运行时 在main_frame的open事件中 根据当前用户所在的部门 修改该用户的菜单属性 包括 itemText microhelp toolbarItemName toolbaritemtext visible enabled等等
通过以上步骤 显示给用户的界面就是由系统管理员所定制的菜单
三 优缺点
优点
■快速的开发框架 可以立即进行实际业务系统的开发而不用理会相关开发框架技术上的问题
■可以充分扩展模块 只需要加入某补丁库中即可 其他程序不用修改
■可以由系统管理员充分自由地定制每个部门或用户的可用模块
■模块容量无实际限制 可多可少
■可以扩展给用户自己定义菜单的显示方式 如文字 microhelp 图标等
■对开发人员 可以提供增加模块到模块表中的辅助工具 其他开发框架问题可以不用考虑
缺点
■需要建立额外的两张表(模块表 部门模块定义表) 增加工作量
■目前只能以opensheet()方式打开main形式的窗口(可以扩展打开response pop类型的窗口)
■目前只实现了二级菜单 更多级别的菜单尚未实现 但原理是一致的
函数mf_open_module参考
//////////////////////////////////////////////////////////////////
// Function: mf_open_module
// Access: Public
// Arguments: string as_module_id
// Returns: None
// Description: 打开模块(sheet)
// Designer: 刘建刚
// Date: / /
//////////////////////////////////////////////////////////////////
Integer li_sheet li_Resp
Window lw_Ex lw_sheet
if isnull(as_module_id) or as_module_id = then
messagebox( 参数错误 请检查模块ID设置 )
else
lw_sheet = parenindow GetFirstSheet()
do while isvalid(lw_sheet)
if lw_sheet classname() = as_module_id then
Opensheet(lw_sheet parenindow original!)
return
end if
lw_sheet = parenindow GetNextSheet(lw_sheet)
loop
li_Resp = Opensheet(lw_Ex as_module_id parenindow original!)
end if
方案三 分离为多个子系统
分离为多个子系统方式 即根据业务规则 将模块按业务所在部门进行分类 通常一个业务部门为一个子系统 各子系统有独立的application main_menu main_window 相互之间没有任何关系 有独立的可执行程序 独立的设置
优缺点
优点
■独立性 各业务系统相互关联少
■自由性 可以定制特定的内容 如界面等
■不需要辅助控制
缺点
■各分系统需要考虑各自的框架 增加额外工作量
■系统修改 扩展性差 需要重新编译整个分系统
■代码可重用部分少 容易造成整理不一致
编辑推荐
J EE高级框架实战培训视频教程
数据仓库与数据挖掘培训视频教程
cha138/Article/program/PB/201311/24629相关参考
知识大全 Winform开发框架之权限管理系统改进的经验总结(2)-用户选择界面的设计
Winform开发框架之权限管理系统改进的经验总结(2)-用户选择界面的设计 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让
实现业务系统中的用户权限管理设计篇 B/S系统中的权限比C/S中的更显的重要C/S系统因为具有特殊的客户端所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现而B/S中浏览器是每
Oracle用户权限表的管理方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 我们将通过介绍命
Spring框架下实现基于组的用户权限管理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在几乎所有
目标假设wink系统有一个haishion用户我们有个开发人员neo和smith这个土人都需要可读可写还有一个oracle用户只能看 前提安装完cvsnt配置advanced里不选择usel
使用EXCLUSIVE表示只有当前INSTANCE使用这个password文件而且允许有别的用户作为sysdba登录进系统里边而若选择了SHARED则表明不止一个实例使用这个密码文件伴随着一个很强
知识大全 PB中同时“继承”多个用户自定义数据窗口对象[2]
PB中同时“继承”多个用户自定义数据窗口对象[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&
解析:如何设置Sybase用户权限处理进程[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
用户认证管理设计方案 设计思路 为了设计一套具有较强可扩展性的用户认证管理需要建立用户角色和权限等数据库表并且建立之间的关系具体实现如下 用户 用户仅仅是纯粹的用户用来
利用PB实现动态系统用户登录 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在多用户的大型数据库