Oracle EBS FND User Info API
1. 与用户信息相关API PKG.
--和用户处理有关的API
FND_USER_PKG;
--和用户密码处理有关的API
FND_WEB_SEC;
--和用户职责处理有关的API
FND_USER_RESP_GROUPS_API;
2. 激活失效用户帐号.
-----------------------------
---处理实例
-----------------------------
SELECT * FROM FND_USER WHERE USER_NAME = 'QWR01';
---更新用户,将用户失效:
DECLARE
BEGIN
FND_USER_PKG.UpdateUser
(
x_user_name => 'QWR01'
,x_owner => NULL
,x_end_date => SYSDATE
);
--用下面的也可以,其实还是调用一样的处理过程。
--FND_USER_PKG.DisableUser('QWR01');
END;
--批量失效用户:
DECLARE
CURSOR CUR_DISABLE_USER
IS
SELECT USER_NAME
FROM FND_USER
WHERE USER_NAME IN ('');
L_DEAL_COUNT NUMBER;
BEGIN
L_DEAL_COUNT := 0;
FOR REC_DISABLE_USER IN CUR_DISABLE_USER LOOP
FND_USER_PKG.DisableUser(REC_DISABLE_USER.USER_NAME);
L_DEAL_COUNT := L_DEAL_COUNT+L_DEAL_COUNT;
END LOOP;
DBMS_OUTPUT.PUT_LINE('成功失效用户数:'||L_DEAL_COUNT);
END;
---------------
---批量失效用户----
---------------
DECLARE
CURSOR CUR_DISABLE_USER
IS
SELECT USER_NAME
FROM FND_USER
WHERE SYSDATE BETWEEN START_DATE AND NVL(END_DATE,SYSDATE+1)
AND USER_NAME IN ('QWR01');
L_DEAL_COUNT NUMBER;
BEGIN
fnd_global.APPS_Initialize( user_id=>1183, resp_id=>20420, resp_appl_id =>1);
L_DEAL_COUNT := 0;
FOR REC_DISABLE_USER IN CUR_DISABLE_USER LOOP
FND_USER_PKG.DisableUser(REC_DISABLE_USER.USER_NAME);
L_DEAL_COUNT := L_DEAL_COUNT+1;
END LOOP;
COMMIT;
DBMS_OUTPUT.PUT_LINE('成功失效用户数:'||L_DEAL_COUNT);
END;
3. 激活失效用户职责.
--增加用户的职责:
FND_USER_PKG.AddResp;
--失效用户的职责:
FND_USER_PKG.DelResp;
---------------------
---失效用户的职责----
---------------------
---失效超过一定日期没使用过的职责。
DECLARE
CURSOR CUR_DISABLE
IS
SELECT FU.USER_ID
,FU.USER_NAME
,FRESP.APPLICATION_SHORT_NAME
,FRESP.RESPONSIBILITY_KEY
,FRESP.SECURITY_GROUP_KEY
,FRESP.RESPONSIBILITY_NAME
,FRESP.START_DATE
,FRESP.END_DATE
,RESP_LOGIN.MAX_START_TIME
FROM FND_USER_RESP_GROUPS_DIRECT_V FRESP
,FND_USER FU
,(SELECT FL.USER_ID,FLR.RESPONSIBILITY_ID,MAX(FLR.START_TIME) MAX_START_TIME
FROM FND_LOGIN_RESPONSIBILITIES FLR,FND_LOGINS FL
WHERE FLR.LOGIN_ID = FL.LOGIN_ID
GROUP BY FL.USER_ID,FLR.RESPONSIBILITY_ID) RESP_LOGIN
WHERE 1=1
AND FU.USER_ID = FRESP.USER_ID
AND RESP_LOGIN.USER_ID(+) = FRESP.USER_ID
AND RESP_LOGIN.RESPONSIBILITY_ID(+) = FRESP.RESPONSIBILITY_ID
AND ((SYSDATE - RESP_LOGIN.MAX_START_TIME) >= 60 OR RESP_LOGIN.MAX_START_TIME IS NULL)
AND SYSDATE BETWEEN FU.START_DATE AND NVL(FU.END_DATE,SYSDATE+1)
AND SYSDATE BETWEEN FRESP.START_DATE AND NVL(FRESP.END_DATE,SYSDATE+1)
AND FU.USER_NAME = 'QWR01'
AND FRESP.RESPONSIBILITY_KEY = 'XYG-WH-WCB-OM-QUERY'
ORDER BY FU.USER_NAME,FRESP.RESPONSIBILITY_NAME;
L_DEAL_COUNT NUMBER;
BEGIN
fnd_global.APPS_Initialize( user_id=>1183, resp_id=>20420, resp_appl_id =>1);
L_DEAL_COUNT := 0;
DELETE XYG_PUB_COMMON_TABLE_TEMP;
FOR REC_DISABLE IN CUR_DISABLE LOOP
FND_USER_PKG.DelResp(REC_DISABLE.USER_NAME,REC_DISABLE.APPLICATION_SHORT_NAME,REC_DISABLE.RESPONSIBILITY_KEY,REC_DISABLE.SECURITY_GROUP_KEY);
L_DEAL_COUNT := L_DEAL_COUNT+1;
END LOOP;
COMMIT;
DBMS_OUTPUT.PUT_LINE('成功失效职责数:'||L_DEAL_COUNT);
END;
4. 用户密码相关.
---直接修改密码。这是直接修改的密码,User重新登录之后,直接登录。下面有修改密码之后,第一次用户登录必须要更改口令的过程。
SELECT fnd_web_sec.change_password('QWR01','PASSWORD') FROM DUAL;
---验证密码的有效性
SELECT fnd_web_sec.validate_login('QWR01','PASSWORD') FROM DUAL;
---获取错误的信息。
select fnd_message.get() from dual;
---获取加密的密码
declare
l_enc_fnd_pwd VARCHAR2(4000);
l_enc_user_pwd VARCHAR2(4000);
L_RETURN VARCHAR2(4000);
begin
L_RETURN := fnd_web_sec.get_encrypted_passwords('QWR01',5954,'PASSWORD1',l_enc_fnd_pwd,l_enc_user_pwd);
DBMS_OUTPUT.PUT_LINE('L_RETURN:'||L_RETURN);
DBMS_OUTPUT.PUT_LINE('p_enc_fnd_pwd:'||l_enc_fnd_pwd||CHR(10)||'p_enc_user_pwd:'||l_enc_user_pwd);
end;
---修改:ENCRYPTED_USER_PASSWORD,暂时没测试。
declare
newpass varchar2(100);
begin
newpass := fnd_user_pkg.getreencryptedpassword('QWR01', 'NEWKEY');
DBMS_OUTPUT.PUT_LINE('newpass:'||newpass);
--fnd_user_pkg.setreencryptedpassword('QWR01', newpass, 'NEWKEY');
end;
Oracle EBS FND User Info API的更多相关文章
- Oracle EBS FND User Info API (转) EBS用户账号密码职责相关
. 与用户信息相关API PKG. --和用户处理有关的API FND_USER_PKG; --和用户密码处理有关的API FND_WEB_SEC; --和用户职责处理有关的API FND_USER_ ...
- 转:Oracle EBS FND User Info API
转自:http://www.cnblogs.com/quanweiru/p/3775635.html 1. 与用户信息相关API PKG. --和用户处理有关的API FND_USER_PKG; -- ...
- EBS安装过程报错,oracle.apps.fnd.txk.config.ProcessStateException: FileSys OS COMMAND Failed : Exit=2 See log for details.
日志: Executing command: /test/software/12/startCD/Disk1/rapidwiz/jre/Linux_x64/1.6.0/bin/java -cp /te ...
- [转]oracle EBS 基础100问
from:http://www.cnblogs.com/xiaoL/p/3593691.html http://f.dataguru.cn/thread-51057-1-1.html 1001 OR ...
- BPM与 SAP & Oracle EBS集成解决方案分享
一.需求分析 SAP和Oracle EBS都是作为全球顶级的的ERP产 品,得到了众多客户的青睐.然而由于系统庞大.价格昂贵以及定位不同,客户在实施过程中经常会面临以下困惑: 1.SAP如何实现&qu ...
- E-Business Suite 12.2 startCD 50 Install Fails with Fatal Error: TXK Install Service oracle.apps.fnd.txk.config.ProcessStateException: OUI process failed Cannot install Web Tier Utilities
在rhel7.2上,使用startCD 50安装ebs r12.2的使用,安装到38%的时候就报错,遇到了和以下文章类似的问题: http://www.cnblogs.com/abclife/p/49 ...
- OAF_开发系列25_实现OAF中Java类型并发程式开发oracle.apps.fnd.cp.request(概念)
20150719 Created By BaoXinjian
- Oracle EBS Form 发布到Server端的注意事项
前段时间在本地XP系统上测试了一些整合javabean的Form例子,想着发布到服务器段去看看能否运行正常,一开始以为会和本地XP系统一样,部署到相关的目录下进行一些配置就可以了,但实际过程却和想象的 ...
- Fatal Error: TXK Install Service oracle.apps.fnd.txk.config.ProcessStateException: OUI process failed : Exit=255 See log for details
安装EBS的时候,database pre-install checks检查报警,显示"!" 一开始忽略了该报警,继续安装.在post-install checks的时候又报了错误 ...
随机推荐
- Java获取Resource目录下的文件
工程结构: 有两种方式: Java代码中的类,要获取Resource资源文件目录下文件 绝对路径寻址 String s1 = this.getClass().getResource("/te ...
- Azkaban任务流编写
在Azkaban中,一个project包含一个或多个flows,一个flow包含多个job.job是你想在azkaban中运行的一个进程,可以是Command,也可以是一个Hadoop任务.当然,如果 ...
- appium启动APP时避免重新安装的问题
from appium import webdriverfrom time import sleepimport os #获取apk的绝对路径desired_cups = {}#设备平台desired ...
- 中信信用卡淘气金卡,V金卡,大众点评金卡,易卡白金卡
中信 | 谈谈经典多倍积分卡:易卡&悦卡(超详细+图解+思考)! http://www.flyertea.com/thread-1972766-1-1.html 易卡积分测试,购物/机票/外卖 ...
- jquery textSearch实现页面搜索 注意!!!!调用这个插件后,js事件绑定如,on、bind、live delegate全部失效,折腾了我一整天!!!
今天我们介绍的这个插件来着http://www.zhangxinxu.com/wordpress/,张鑫旭的文章写得挺好的,大家有兴趣的多看看. 我们今天的这个插件叫“jquery.textSearc ...
- HDU 1043 八数码问题的多种解法
一.思路很简单,搜索.对于每一种状态,利用康托展开编码成一个整数.于是,状态就可以记忆了. 二.在搜索之前,可以先做个优化,对于逆序数为奇数的序列,一定无解. 三.搜索方法有很多. 1.最普通的:深搜 ...
- vue组件化开发实践
前言 公司目前制作一个H5活动,特别是有一定统一结构的活动,都要码一个重复的轮子.后来接到一个基于模板的活动设计系统的需求,便有了一下的内容.首先会对使用Vue进行开发的一些前期需要的技术储备进行简单 ...
- windows下使用nginx配置tomcat集群
转自:https://blog.csdn.net/csdn15698845876/article/details/80658599
- 什么是“堆”,"栈","堆栈","队列",它们的区别?
堆:什么是堆?又该怎么理解呢? ①堆通常是一个可以被看做一棵树的数组对象.堆总是满足下列性质: ·堆中某个节点的值总是不大于或不小于其父节点的值: ·堆总是一棵完全二叉树. 将根节点最大的堆叫做最大堆 ...
- Maven(六) eclipse 使用Maven deploy命令部署构建到Nexus
转载于:http://blog.csdn.net/jun55xiu/article/details/43051627 1 应用场景:SYS-UTIL(系统工具)项目部署.构建成JAR包(SYS-UT ...