Параметр содержит анонимный блок, выполняющийся при инициализации полномочий. Ниже - пример кода изменения значения параметра для группы полномочий.
declare
cursor cur is
select opv.*
from FND_PROFILE_OPTION_VALUES opv,
FND_RESPONSIBILITY_TL v,
FND_PROFILE_OPTIONS opt
where v.responsibility_id = opv.level_value
and opt.profile_option_id = opv.profile_option_id
and v.language = 'RU'
and v.responsibility_name like '%manager%'
and opt.profile_option_name = 'FND_INIT_SQL';
l_params_row FND_PROFILE_OPTION_VALUES%ROWTYPE;
begin
open cur;
loop
fetch cur into l_params_row;
exit when cur%NOTFOUND;
l_params_row.profile_option_value := 'begin xxmy_pkg.init_access; end;';
FND_PROFILE_OPTION_VALUES_PKG.UPDATE_ROW(X_APPLICATION_ID => l_params_row.application_id,
X_PROFILE_OPTION_ID => l_params_row.profile_option_id,
X_LEVEL_ID => l_params_row.level_id,
X_LEVEL_VALUE => l_params_row.level_value,
X_LEVEL_VALUE_APPLICATION_ID => l_params_row.level_value_application_id,
X_LEVEL_VALUE2 => l_params_row.level_value2,
X_PROFILE_OPTION_VALUE => l_params_row.profile_option_value,
X_LAST_UPDATE_DATE => sysdate ,
X_LAST_UPDATED_BY => FND_GLOBAL.USER_ID,
X_LAST_UPDATE_LOGIN => FND_GLOBAL.LOGIN_ID);
commit;
end loop;
end;
Комментариев нет :
Отправить комментарий