在Oracle中,用户相关配置信息都可以通过FND_PROFILE 包和FNDSQF 库获取.
这个API可以有以下两个应用:
1.获取当前运行环境中用户的相关配置文件的值
2.可以在当前运行环境下对用户的相关配置进行设置
我们可以通过调用这个API中的各种object来获取我们想要的东西.
1. Put :
用於指定持定User的相关配置信息
•FND_Profile.Put('PROFILE_NAME','New_Value')
•FND_Profile.Put('USERNAME', Usr_Name)
•FND_Profile.Put('RESP_ID', Resp_ID)
•FND_Profile.Put('RESP_APPL_ID', Resp_App_ID)
•FND_Profile.Put('USER_ID', User_ID)
2.Defined 定义
Select fnd_profile.defined('ACCOUNT_GENERATOR:DEBUG_MODE') ACC_GEN_DEBUG_SESSION_MODE FROM DUAL;
3.Get 获取Profile值
FND_Profile.Get('PROFILENAME', Profile_name);
从配置文件中根据‘PROFILENAME’来获取到值并赋值给变量Profile_name
不同的Profile值可以通过Get来获取
•FND_Profile.Get('PROFILENAME', Profile_name);
•FND_Profile.Get('CONC_LOGIN_ID', Conc_login_id);
•FND_Profile.Get('LOGIN_ID', loginid);
4.Value 的值
这个Function返回一个字符值。用于返回当前环境下用户的有相关profile的值
•fnd_profile.value('PROFILEOPTION')
•fnd_profile.value('MFG_ORGANIZATION_ID')
•fnd_profile.value('login_ID')
•fnd_profile.value('USER_ID')
•fnd_profile.value('USERNAME')
•fnd_profile.value('CONCURRENT_REQUEST_ID')
•fnd_profile.value('GL_SET_OF_BKS_ID')
•fnd_profile.value('ORG_ID')
•fnd_profile.value('SO_ORGANIZATION_ID')
•fnd_profile.value('APPL_SHRT_NAME')
•fnd_profile.value('RESP_NAME')
•fnd_profile.value('RESP_ID')
5.VALUE_WNPS: 在没有指定用户的情况下,获取当前环境下的用户的Profile值,返回的是一个字符集
6.SAVE_USER 及save:将用户的Profile值保存在数据库中,当使用此命令时,需要通过commit命令.如果操作成功则返回True值,失败则返回false
•fnd_profile.save('GUEST_USER_PWD', 'GUEST/ORACLE', 'SITE');
8.INITIALIZE : 初始化 此命令将会先将数据库的cache给清空掉 主要用于在应用程序中对profile值进行初始化操作.
参考:
http://www.oracleappshub.com/api/oracle-api-availability-profile/