Архив

Архив раздела ‘Oracle e-Business Suite’

Установка профилей для пользователя

14 Май 2010 2 comments

Довольно удобно выставлять профили через скрипт, особенно если их много.
Данный скрипт выставляет профили на уровне пользователя.

DECLARE
 l_user_name varchar2(100) := 'USER_NAME';

 PROCEDURE set_profile_at_user_level(p_user_name                fnd_user.user_name%TYPE,
                                     p_user_profile_option_name fnd_profile_options_vl.user_profile_option_name%TYPE,
                                     p_profile_option_value     fnd_profile_option_values.profile_option_value%TYPE) IS
   l_user_id             fnd_user.user_id%TYPE;
   l_profile_option_name fnd_profile_options_vl.profile_option_name%TYPE;
 BEGIN
 
   SELECT fu.user_id
     INTO l_user_id
     FROM fnd_user fu
    WHERE fu.user_name = p_user_name;
 
   SELECT fpo.profile_option_name
     INTO l_profile_option_name
     FROM fnd_profile_options_vl fpo
    WHERE fpo.user_profile_option_name = p_user_profile_option_name;
 
   IF Fnd_Profile.save(x_name        => l_profile_option_name,
                       x_value       => p_profile_option_value,
                       x_level_name  => 'USER',
                       x_level_value => l_user_id) THEN
     NULL;
   END IF;
 
 END set_profile_at_user_level;

BEGIN

  EXECUTE IMMEDIATE 'ALTER session SET NLS_LANGUAGE=''RUSSIAN''';

  set_profile_at_user_level (l_user_name, 'ВЕБ: время ожидания для сеанса','3600000');
  set_profile_at_user_level (l_user_name, 'ВЕБ: форматная маска даты','DD-MM-RRRR');
  set_profile_at_user_level (l_user_name, 'Служебные программы: диагностика','Y');
  set_profile_at_user_level (l_user_name, 'Цветовая схема Java','SWAN');
  
  set_profile_at_user_level (l_user_name, 'Настройка веб-определений','Y');
  set_profile_at_user_level (l_user_name, 'БОП: диагностика','Y');
  set_profile_at_user_level (l_user_name, 'БОП: активизация ссылки области индивидуальной настройки', 'Y');
  set_profile_at_user_level (l_user_name, 'БОП: режим встраивания индивидуальной настройки','Y');
  COMMIT;

END;

Информация о модулях OEBS + номер версии

SELECT a.application_id         as app_id,
       a.application_short_name as app_code,
       aru.application_name     as ru_app_name,
       aus.application_name     as en_app_name,
       fpi.patch_level
FROM applsys.fnd_application a,
       (SELECT * FROM applsys.fnd_application_tl au 
                 WHERE au.LANGUAGE = 'US') aus,
       (SELECT * FROM applsys.fnd_application_tl ar
                 WHERE ar.LANGUAGE = 'RU') aru,
       fnd_product_installations fpi
WHERE a.application_id = aus.application_id
and a.application_id = aru.application_id
and fpi.application_id(+) = a.application_id
ORDER BY a.application_id, a.application_short_name, aru.application_name

Читать дальше про “Информация о модулях OEBS + номер версии” »

Просмотреть профили пользователя

SELECT fpo.profile_option_name
      ,fpo.user_profile_option_name
      ,fpov.profile_option_value
FROM fnd_profile_option_values fpov,
       fnd_profile_options_vl    fpo
WHERE fpov.application_id    = fpo.application_id
      AND fpov.profile_option_id = fpo.profile_option_id
      AND fpov.level_value = (
                        SELECT fu.user_id
                        FROM fnd_user fu
                        WHERE fu.user_name = '!!!USER_NAME'
                       )

Список организаций

Select t.organization_id     as org_id,
       mpv.organization_code as org_code,
       t.name                as org_name
From hr.hr_all_organization_units t,
     mtl_parameters_view mpv
where mpv.organization_id = t.organization_id
order by t.organization_id, mpv.organization_code

Просмотр блокировок

13 Май 2010 2 comments
select distinct
       o.object_name,
       sh.username || '(' || sh.sid || ',' || sh.serial# || ')' Holder,
       sh.osuser,
       sw.username || '(' || sw.sid || ',' || sw.serial# || ')' Waiter,
decode(lh.lmode,
              1,'null',
              2,'row share',
              3,'row exclusive',
              4,'share',
              5,'share row exclusive',
              6,'exclusive') Lock_Type
from v$session   sw,
     v$lock      lw,
     all_objects o,
     v$session   sh,
     v$lock      lh
where lh.id1 = o.object_id
      and lh.id1 = lw.id1
      and sh.sid = lh.sid
      and sw.sid = lw.sid
      and sh.lockwait is null
      and sw.lockwait is not null
      and lh.type = 'TM'
      and lw.type = 'TM'

Профили для OA Framework

1 «Personalize Self-Service Defn»(Настройка веб-определений) значение Y

2 «FND: Diagnostics» (БОП: диагностика) значение Y

3 «FND: Personalization Region Link Enabled» (БОП: активизация ссылки области индивидуальной настройки) значение Y

4 «FND_PERSONALIZATION_SEEDING_MODE» (БОП: режим встраивания индивидуальной настройки) значение Y

5 «FND_PERZ_DOC_ROOT_PATH» (БОП: путь для корневого каталога документа индивидуальной настройки)
Не забудьте очистить кеш, после изменения профилей.

Описание профилей на металинке:

Oracle Application Framework Profile Options Release 12.1.3 [ID 1107970.1]

Как очистить Application Cache (полномочия Администратор функций)

13 Май 2010 3 comments

1— Перейти в полномочия Администратор функций (Functional Administrator)
2— Выбрать закладку «Службы ядра»
3— Кликнуть на ссылке «Система кеширования»
4— Кликнуть на «Глобальная конфигурация»
5— Нажать на кнопку «Очистка всего кэша»
6— В появившемся сообщении нажать «ДА».



OEBS Полезные системные профили

1) Отключение запроса пароля APPS при вызове диагностики или проверки.

Установите следующие системные профили в полномочиях системного администратора

Профиль Значение
FND: Diagnostics Yes
Hide Diagnostics menu entry No
Utilities:Diagnostics Yes

Читать дальше про “OEBS Полезные системные профили” »

Изменить NLS_LANG для сессии

select USERENV('LANG') from dual;
alter session set NLS_LANGUAGE = 'AMERICAN' ;
alter session set NLS_LANGUAGE = 'RUSSIAN'  ;

Для OEBS есть API

begin
  fnd_global.set_nls_context('AMERICAN');
  --fnd_global.set_nls_context('RUSSIAN');
end; 

Отключить сообщения формы при commit

Вместо использования COMMIT_FORM вызвать свою процедуру

-- Отключает стандартное сообщение формы
PROCEDURE MY_COMMIT IS
 x_message_level number;
BEGIN

  x_message_level := :SYSTEM.MESSAGE_LEVEL;
  :SYSTEM.MESSAGE_LEVEL := '5';
  COMMIT_FORM;
  :SYSTEM.MESSAGE_LEVEL := x_message_level;
END;