create or replace procedure omc_sys_permit
(
pFmenuid varchar2, -- 菜单编号
pUserid varchar2, -- 用户编号
pType varchar2, -- 操作类型
pRetCode out varchar2, --返回代码
pRetInfo out varchar2 --返回提示
)
/*-- ===========================================
Author: JiQing.xie
Timer: 2010-02-05 14:09:00
Developers: SepSOFT
Version: v1.0
Functio: 用户权限操作
-- ==========================================*/
is
templ varchar2(32);
tempr varchar2(32);
temp varchar2(32):='';
i number:=0;
j number:=0;
begin
-- 删除权限--
delete from omc_user_menu where fuserid=pUserid;
for my in ( select to_char(strvalue) as Value from table(fun_split(pFmenuid,',')))
loop
if my.value is not null then
i:=instr(my.value,'^');
templ:=substr(my.value,0,i-1);
if j=0 then
tempr:=substr(my.value,i+1);
end if;
if j>0 then
if temp=templ then
tempr:=tempr||','||substr(my.value,i+1);
end if;
if temp!=templ then
insert into omc_user_menu (fuserid,fmenuid,ftime,factionid)values(pUserid,temp,sysdate,tempr);
tempr:=substr(my.value,i+1);
end if;
end if;
j:=1;
temp:=templ;
end if;
end loop;
if templ is not null then
insert into omc_user_menu (fuserid,fmenuid,ftime,factionid)values(pUserid,templ,sysdate,tempr);
end if;
pRetCode:=0;
pRetInfo:='授权成功';
if pType ='update' then
pRetInfo:='修改成功';
end if;
commit;
---- 添加父类---
for mytable in (select distinct fpid from omc_menu t where fid in(select fmenuid from omc_user_menu t where fuserid=pUserid))
loop
insert into omc_user_menu (fuserid,fmenuid,ftime,factionid)values(pUserid,mytable.fpid,sysdate,0);
end loop;
exception
when others then
pRetCode := 1000;
pRetInfo :='操作失败';
xp_sys_errlog('omc_sys_permit',sqlcode,sqlerrm,'pUserid='||pUserid);
end omc_sys_permit;
分享到:
相关推荐
Oracle Customer Intelligence Concepts and Procedures
Oracle iPayment Concepts and Procedures Release 11i 是一本关于Oracle财务软件中支付处理模块的指南,该模块在Oracle E-Business Suite中扮演着关键角色。本手册由Oracle公司出版,版权日期为2001年和2005年,...
Oracle Applications Maintenance Procedures for Release 11i (11.5.10.2) is a comprehensive guide that outlines essential steps and best practices for maintaining and managing an Oracle-based enterprise...
Programming Oracle Triggers And Stored Procedures 英文第三版 自制CHM格式,可DropDownList选章选节阅读,可调节字体大小,大大方便了Viliv S5等手持上网设备的阅读。 注意: 由于内部使用了MS XML Parser,本...
Oracle Number Portability Concepts and Procedures Release 11i是Oracle公司发布的一个关于电话号码可移植性的技术文档,主要针对的是Oracle 11i版本。在这个版本中,Oracle提供了对电话号码可移植性的支持,使得...
"Oracle9i Java Stored Procedures Developer’s Guide Release 2 (9.2)" Oracle9i Java Stored Procedures Developer’s Guide Release 2 (9.2)是Oracle Corporation发布的一份开发者指南,旨在帮助开发者使用Java...
在IT行业中,Oracle数据库系统是企业级应用广泛采用的关键技术之一。标题和描述中提到的“大型项目Oracle sql,function,procedures,package,cursor,job”涉及的是Oracle数据库管理和开发的核心概念。以下是对...
在Java编程中,调用Oracle数据库的存储过程是常见的任务,尤其在处理复杂业务逻辑或数据操作时。这里我们将深入探讨两种情况:无返回值的存储过程和有返回值(非列表)的存储过程。 首先,对于无返回值的存储过程,...
在Oracle RAC(Real Application Clusters)环境下,安装和配置ArcGIS Desktop的SDE(Spatial Database Extensions)数据库连接时,可能会遇到"Stored procedures"错误。这个问题通常与Oracle RAC的特性有关,即其...
Oracle8i Java Stored Procedures Developer’s Guide Release 2 (8.1.6) 以下是根据给定文件信息生成的相关知识点: Oracle8i Java存储过程 Oracle8i Java存储过程是一种将Java程序集成到Oracle数据库中的机制。...
本指南“Oracle CRL-Financials Enabled Assets Concepts and Procedures”着重介绍该产品的核心概念、操作流程以及相关实践。 一、核心概念: 1. 资产管理:Oracle CRL-Financials Enabled Assets 提供了一个全面...
Oracle Advanced Scheduler是Oracle数据库系统中的一个强大工具,用于自动化各种任务和工作流程,尤其是在Oracle EBS(企业资源规划)系统11i版本中。这个概念和程序指南详细介绍了如何有效地利用这个调度器来管理和...
Oracle Service Fulfillment Manager 是一款由Oracle公司推出的用于服务执行和管理的软件解决方案,主要针对电信、公用事业和其他服务提供商。在Release 11i版本中,它提供了先进的功能和服务流程自动化,帮助这些...
2. **存储过程(Stored Procedures)**: - 存储过程是预编译的SQL语句集合,封装在数据库中,可以接受参数并返回结果。它们提高了代码的重用性和安全性,降低了网络流量。 - 如何创建、调用和修改存储过程,以及...
Oracle无线选项服务概念与程序指南是Oracle E-Business Suite 11i版本的一部分,它提供了在移动设备上访问和管理企业服务的详细信息。本指南旨在帮助用户理解如何利用Oracle Wireless Option来提升服务效率和生产力...
3. **数据库对象**:Oracle数据库包含多种对象,如表(Tables)、视图(Views)、索引(Indexes)、序列(Sequences)、存储过程(Stored Procedures)和触发器(Triggers)。它们是数据库应用的基础,满足不同的...
Oracle Marketing Encyclopedia System (MES) 是Oracle Corporation的客户关系管理(CRM)应用套件的一个组成部分,专注于内容仓库管理。这个系统使用户能够创建、发布和管理各种类型的内容,从而提高销售和市场营销...
Oracle 10g 是 Oracle 公司在2003年发布的一款关系型数据库管理系统,它包含了众多功能强大的组件,其中之一便是对Java应用程序的支持。Oracle 10g 提供了一个集成的Java运行环境,允许开发者在数据库内部开发和执行...
在Oracle中,批处理可以通过多种方式实现,例如使用SQL*Plus、PL/SQL块、Java stored procedures,或者是通过外部工具如Oracle Data Pump导出导入数据。这里特别提到了"xml w3c",这可能是指在批处理过程中涉及到XML...