fnd_global.apps_initialize(user_ID, Responsibility_id,Responsibility_application_id);
这条语句的作用简单地说就是在PL/SQL中假装已经登录了EBS,如下面的语句不使用fnd_global.apps_initialize会报错
SELECT PAPF.Full_Name -----当前操作用户
INTO PRINTER
FROM PER_ALL_PEOPLE_F PAPF,
FND_USER FU
WHERE FU.EMPLOYEE_ID = PAPF.PERSON_ID
AND FU.USER_ID = FND_GLOBAL.USER_ID
AND SYSDATE BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE;
参数user_ID:
用户ID, (个人见解:若某用户是另一用户子用户,则选出的是母用户)
select user_id
from fnd_user
where user_name like '%SYSADMIN%'
参数Responsibility_id,Responsibility_application_id);:
select RESPONSIBILITY_ID,APPLICATION_ID from fnd_responsibility where RESPONSIBILITY_KEY=yourrespkey ;
测试:
BEGIN
fnd_global.APPS_INITIALIZE(user_id => youruesr_id ,esp_id => yourresp_id,resp_appl_id =>yourresp_appl_id);
END;
--GL_SET_OF_BKS_ID的值首先是设置了系统的配置文件的帐套信息才能得到
select fnd_profile.value('GL_SET_OF_BKS_ID') FROM DUAL;
据说可以在系统中的帮助-->诊断-->检查 菜单查看PROFILE得到这些值
本文作者:网友 来源:网络
CIO之家 www.ciozj.com 微信公众号:imciow