/*
和标准用户有关的处理的API。
*/ ---和用户处理有关的API
FND_USER_PKG ---和用户密码处理有关的API
fnd_web_sec ---和用户职责处理有关的API
FND_USER_RESP_GROUPS_API -----------------------------
---处理实例
----------------------------- SELECT * FROM FND_USER WHERE USER_NAME = 'WX214492' ---更新用户,将用户失效:
DECLARE
BEGIN
FND_USER_PKG.UpdateUser
(
x_user_name => 'WX214492'
,x_owner => NULL
,x_end_date => SYSDATE
);
--用下面的也可以,其实还是调用一样的处理过程。
--FND_USER_PKG.DisableUser('WX214492');
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 := ;
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; --增加用户的职责:
FND_USER_PKG.AddResp; --失效用户的职责:
FND_USER_PKG.DelResp; ---直接修改密码。这是直接修改的密码,User重新登录之后,直接登录。下面有修改密码之后,第一次用户登录必须要更改口令的过程。
SELECT fnd_web_sec.change_password('WX214492','samt261') FROM DUAL ---验证密码的有效性
SELECT fnd_web_sec.validate_login('WX214492','samt2611') FROM DUAL ---获取错误的信息。
select fnd_message.get() from dual; ---获取加密的密码
declare
l_enc_fnd_pwd VARCHAR2();
l_enc_user_pwd VARCHAR2();
L_RETURN VARCHAR2();
begin
L_RETURN := fnd_web_sec.get_encrypted_passwords('WX214492',,'11samt2611',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()||'p_enc_user_pwd:'||l_enc_user_pwd);
end; ---修改:ENCRYPTED_USER_PASSWORD,暂时没测试。
declare
newpass varchar2();
begin
newpass := fnd_user_pkg.getreencryptedpassword('WX214492', 'NEWKEY');
DBMS_OUTPUT.PUT_LINE('newpass:'||newpass);
--fnd_user_pkg.setreencryptedpassword('WX214492', newpass, 'NEWKEY'); end; ---------------
---批量失效用户----
---------------
DECLARE
CURSOR CUR_DISABLE_USER
IS
SELECT USER_NAME
FROM FND_USER
WHERE SYSDATE BETWEEN START_DATE AND NVL(END_DATE,SYSDATE+)
AND USER_NAME IN (
'AH502998'
);
L_DEAL_COUNT NUMBER;
BEGIN
fnd_global.APPS_Initialize( user_id=>, resp_id=>, resp_appl_id =>);
L_DEAL_COUNT := ;
FOR REC_DISABLE_USER IN CUR_DISABLE_USER LOOP
FND_USER_PKG.DisableUser(REC_DISABLE_USER.USER_NAME);
L_DEAL_COUNT := L_DEAL_COUNT+;
END LOOP;
COMMIT;
DBMS_OUTPUT.PUT_LINE('成功失效用户数:'||L_DEAL_COUNT);
END; ---------------------
---失效用户的职责----
--------------------- ---失效超过一定日期没使用过的职责。
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 =
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) >= OR RESP_LOGIN.MAX_START_TIME IS NULL)
AND SYSDATE BETWEEN FU.START_DATE AND NVL(FU.END_DATE,SYSDATE+)
AND SYSDATE BETWEEN FRESP.START_DATE AND NVL(FRESP.END_DATE,SYSDATE+)
AND FU.USER_NAME = 'WX214492'
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=>, resp_id=>, resp_appl_id =>);
L_DEAL_COUNT := ;
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+;
END LOOP;
COMMIT;
DBMS_OUTPUT.PUT_LINE('成功失效职责数:'||L_DEAL_COUNT);
END;

(Oracle EBS)和标准用户有关的处理的API [Z]的更多相关文章

  1. Oracle EBS 初始化用户密码(转)

    ---修改密码,并且将限制用户下次登录的时候(第一次登录),强制要换一个新的口令: ---此过程可以完全模拟我们在标准用户的Form里面初始化用户的密码的动作! ---最后要说明的是,这个处理过程是通 ...

  2. Oracle EBS 初始化用户密码

    ---修改密码,并且将限制用户下次登录的时候(第一次登录),强制要换一个新的口令: ---此过程可以完全模拟我们在标准用户的Form里面初始化用户的密码的动作!   ---最后要说明的是,这个处理过程 ...

  3. 第六篇 ORACLE EBS用户界面通用元素或功能背后的道理解析

    本篇打算介绍一下ORACLE EBS用户界面(User Interface)中通用的元素或功能背后蕴含的一些道理.这些通用元素或功能包括: List of Values (LOV),值列表 Flexf ...

  4. [转]oracle EBS 基础100问

    from:http://www.cnblogs.com/xiaoL/p/3593691.html  http://f.dataguru.cn/thread-51057-1-1.html 1001 OR ...

  5. Oracle EBS R12 WIP Component Issue&Return Process

    oracleassemblytransactionscomponentsjobsreference 目录(?)[-] 定义BOM 定义Routing 定义WIP Discrete Job 发料 Mat ...

  6. 如何启用Oracle EBS Form监控【Z】

    前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...

  7. Oracle EBS WMS特征(一)

    Oracle EBS WMS特征(一) (版权声明.我的原创或翻译的文章,如需转载,转载用于个人学习,转载请注明出处:否则,请与我联系,版权所有) Oracle WMS这是一个仓库管理,它是Oracl ...

  8. Oracle EBS R12经验谈(二)

    作者: jianping.ni    时间: 2009-2-13 12:52     标题: Oracle EBS R12经验谈(二) OAF页面:银行帐户开户人LOV值列表无值    在输入 应付超 ...

  9. 如何启用Oracle EBS Form监控

    前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...

随机推荐

  1. Volley报错!!!No address associated with hostname

    年轻人检查你的网络去吧,这是没有网络导致的原因

  2. html链接

    1. <a href="/index.html">本文本</a> 是一个指向本网站中的一个页面的链接.</p><p><a hr ...

  3. Socket编程(摘抄)

    http://www.blogjava.net 例子代码就在我的博客中,包括六个UDP和TCP发送接受的cpp文件,一个基于MFC的局域网聊天小工具工程,和此小工具的所有运行时库.资源和执行程序.代码 ...

  4. WebBrowser中取对应的图片资源

    在客户端中使用webbrower控件,控件中已显示网页,对应的图片资源应已下载完,下面从缓存中找到图片资源,两种方法都可 1.GetUrlCacheEntryInfo http://msdn.micr ...

  5. oracle 时间比较查询

    select * from table  where add_time>=to_date('2015/01/03','yyyy/mm/dd')

  6. JQuery easyui (1) Draggable(拖动)组件

    很不习惯这种强迫式的学习,但谁叫我不是老师了,所以还是决定坚持练习,顺带为博客加点东西.虽然我还是很反感短时间内惯性的去熟悉一个工具. easyui做为一个封装了JQusey的UI插件,其实还是蛮好用 ...

  7. 【04】基础:将采集结果转成Excel

    前面的教程说了,数据抓取完毕之后,数据以xml格式的形式存储在本地文件夹中. 下面简单地说一下如何将保存在本地的XML文件转成Excel格式. 第一步:压缩文件 进入本地DataScraperWork ...

  8. winform datagridview 添加行号。

    private void dataGridView_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e) { private ...

  9. Live555类结构

    Medium live555几乎所有的处理单元都继承自Medium类:该类抽象了基本的接口,包括环境,task和媒体名和媒体查找函数(lookupByName)以及一些辅助函数.也包括返回当前的环境类 ...

  10. bzoj1630 [Usaco2007 Demo]Ant Counting

    Description Bessie was poking around the ant hill one day watching the ants march to and fro while g ...