注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

风之人生

人生如风,却无法如风般潇洒。

 
 
 

日志

 
 
关于我

一介草民,苟活于上海滩,以甲骨文为生,偶尔对一些国家大事有些兴趣,日常无事常以丝竹之声为乐。

网易考拉推荐

使用SQL脚本给EBS用户增加职责(原创)  

2010-04-19 15:55:09|  分类: EBS |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

       那天有个哥们在问,他碰到了一道面试题,说是怎样用PL/SQL给用户加入一个新的职责,我听到这个问题的时候,第一反应就是,这个题目本身很无聊,但是对于IT民工,被人刁难也是正常的,就好比矿难死人是一件不好的是,我们很悲痛,而如果矿难经常死人,我们就不应该那么悲痛了。
       那么还是回到这个题目,这个功能其实oracle自带了一个程序包,就是FND_USER_PKG这个包,里面有很多方法,但是他调用的参数有些我们需要到数据库去查。一般的来讲,我们加一个职责,只要知道他的用户名,职责名,和实效日期就可以了,而且我们一般来讲我们的描述为空,安全组为STANDARD(注意这个假设),那就可以通过以下的代码来通过SQLPLUS来加职责了,和应用上操作一样简单。
       我建立了一个procedure,然后每次加的时候,直接调用即可
 create or replace procedure respadd(username varchar2,
                                                             respname varchar2,
                                                            end_date date) is
l_username varchar2 := username;
l_resp_app varchar2;
l_resp_key varchar2;
l_security_group varchar2 := 'STANDARD';
l_description varchar2 := null;
l_end_date date := end_date;

begin
select application_short_name into l_resp_app from fnd_application
where  application_id = (select application_id from FND_RESPONSIBILITY_VL
                         where responsibility_name = respname);

select responsibility_key into l_resp_key from FND_RESPONSIBILITY_VL
where responsibility_name = respname;

fnd_user_pkg.addresp(l_username,l_resp_app,l_resp_key,l_security_group,l_description,sysdate,l_end_date);
commit;
end;

#改密码的语句块

SQL> declare
  2  l_ret boolean := false;
  3  begin
  4  l_ret := fnd_user_pkg.ChangePassword('TESTUSER','majian34');
  5   end;
  6  /

PL/SQL procedure successfully completed.

SQL> commit;

Commit complete.


只要用过EBS的人应该都知道三个参数的含义了。以上代码在11i上测试通过,如果有什么疑问,欢迎和我联系。

  评论这张
 
阅读(1195)| 评论(2)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017