EBS中取profile值的用法

fnd_profile.value的用法:

 

复制代码
select fnd_profile.value('gl_set_of_books_id')  from dual 
--取帳冊

select fnd_profile.value('mfg_organization_id') from dual 
--取子库

select fnd_profile.value('GL_SET_OF_BKS_ID') from dual
--取帐套 (此方式在R12中已不能使用,需要用GL_ACCESS_SET_ID再查询出LEDGER_ID)



用此方式调整正确的当前咝协h境,特别是在multi_org环境下(在报表前,报表后均要执行因有可能在咝羞^程中变量被人为改变)
有一些view用到org环境参数的,一般要如下设定后,才能select到记录:
   begin
   dbms_application_info.set_client_info(:org_id);
--如1,2,3之类的
   end;

可用'FND_PROFILE.GET' function 查看以下一些参数
复制代码




取得set of book id

Select fnd_profile.value('GL_SET_OF_BKS_ID') from dual



取得master_id

select fnd_profile.value('SO_ORGANIZATION_ID') from dual;



取得当前org_id

select to_number(fnd_profile.value('ORG_ID')) from dual;

org_id = :$PROFILES$.ORG_ID;也可用此来取得,在定义报表参数时来定义

fnd_profile.value('MFG_ORGANIZATION_ID') 与上的区别




取得当前user_id

select TO_NUMBER(FND_PROFILE.VALUE('USER_ID')) from dual;
FND_GLOBAL.USER_ID 用此方式在report中有可能不好用,在report中建议用上一种方式FND_WHO.PROFILE('USERID') 又一种方式取得当前login_id
select TO_NUMBER(FND_PROFILE.VALUE('login_ID')) from dual;




取得当前username

复制代码
Declare
username varchar2(30);
begin
username := FND_PROFILE.VALUE('USERNAME');
end;

另获取username 也可以用FND_Global.User_Name
fnd_global package可以取得一些关於当前login in用户的信息
复制代码




取得当前request_id

复制代码
select FND_PROFILE.VALUE('CONCURRENT_REQUEST_ID') from dual;
FND_REQUEST.SUBMIT_REQUEST 另一种方式

请看fnd_concurrent_requests functions

在PL/SQL Develop中没有环境变量,所以如果要查询多组织的View,需要先执行设置环境变量函数
dbms_application_info.set_client_info(81);end;与 BEGIN fnd_client_info.set_org_context(82)END; 效果一样,这个81是指OU_ID,业务实体的ID
复制代码



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值