1. 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--取帐套  

用此方式調整正確的当前协议环境,特別是在multi_org環境下(在報表前,報表後均要執行因有可能在执行过程中中變量被人為改變)

使用FND_PROFILE.GET FUNCTION 来查找参数

DECLARE
  VAL VARCHAR2(20);
BEGIN
  FND_PROFILE.GET('ORG_ID', VAL => VAL);
  DBMS_OUTPUT.PUT_LINE(VAL);
END;
 
  1. 取得set of book id
          Select fnd_profile.value('GL_SET_OF_BKS_ID') from dual

  2. 取得master_id
          select fnd_profile.value('SO_ORGANIZATION_ID') from dual;

  3. 取得當前org_id
    select to_number(fnd_profile.value('ORG_ID')) from dual;
    org_id = :$PROFILES$.ORG_ID;也可用此來取得,在定義報表參數時來定義
    fnd_profile.value('MFG_ORGANIZATION_ID') 與上的區別

  4. 取得當前user_id
    select TO_NUMBER(FND_PROFILE.VALUE('USER_ID')) from dual;
    FND_GLOBAL.USER_ID 用此方式在report中有可能不好用,在report中建議用上一種方式FND_WHO.PROFILE('USERID')

  5. 又一種方式取得當前login_id
    select TO_NUMBER(FND_PROFILE.VALUE('login_ID')) from dual;

  6. 获取USERNAME

    獲取username 也可以用FND_Global.User_Name
    fnd_global package可以取得一些關於當前login in用戶的信息

  7. 取得當前request_id
    select FND_PROFILE.VALUE('CONCURRENT_REQUEST_ID') from dual;

  8. 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. fnd_global 设置

fnd_global.apps_initialize(user_ID, Responsibility_id,
                                          Responsibility_application_id);
作用:在数据库的会话中设置全局变量,和用户概要信息。

  1. 参数一,用户号
        select user_id
        from fnd_user
        where user_name like '%OPERATIONS%'; -- ID of OPERATIONS:1318
  2. 参数二,职责编号(responsibility id)
        select RESPONSIBILITY_ID, APPLICATION_ID, RESPONSIBILITY_KEY
        from fnd_responsibility
        --where APPLICATION_ID = 140
        where RESPONSIBILITY_KEY like '%ASSETS_VISION_OPERATIONS%';
  3. 参数三,代表该职责所属的应用程序(application)的编号
        上面的SQL取得
    方便的方法:Help->Diagnostics->Examin, Block: $PROFILES$, Field: RESP_ID(以及其他的)
    运行:
    FROM DUAL; --对应刚才的user_id

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-08
  • 2021-06-16
  • 2022-02-10
  • 2021-11-26
  • 2021-07-13
猜你喜欢
  • 2022-01-08
  • 2021-12-26
  • 2022-02-14
  • 2022-12-23
  • 2021-05-10
  • 2021-11-02
  • 2021-07-31
相关资源
相似解决方案