Disable profile option updation at user level

I want to disable the profile option HR: Security Profile or for that matter any other profile option at user level. The user should be able to see the value set by the system administrator (Field should be grayed out) and user should not be able to update it.
How to do it??

Try a personalization combined with custom PLSQL, like this:
1) Acces System Profiles
2) Help->Diagnostics->Custom Code->Personalize
3) In the newly displayed Form Personalization form, create a line with a description like this: Prevent modification of USER_VISIBLE_VALUE
4) In the Conditions tab, set Trigger Event = WHEN-NEW-ITEM-INSTANCE
5) Set Trigger Object = PROFILE_VALUES.USER_VISIBLE_VALUE
6) In the Condition text area, enter:
apps.xxror_test_sysprofile(:PROFILE_VALUES.USER_PROFILE_OPTION_NAME,'USER')=1
7) Set Processing Mode to Both
8) Switch to the Actions tab and create two actions:
first:
type = property
description = Don't update
Language=all
enabled=yes
object type=Item
target object=PROFILE_VALUES.USER_VISIBLE_VALUE
property name=UPDATE_ALLOWED
value=false
second:
type=property
description=Don't enter
language=all
enabled=yes
object type=Item
target object=PROFILE_VALUES.USER_VISIBLE_VALUE
property name=ALTERABLE_PLUS
value=false
9) Repeat steps 3-8 if desired for other levels, such as:
Prevent modification of SITE_VISIBLE_VALUE
Prevent modification of APPL_VISIBLE_VALUE
Prevent modification of RESP_VISIBLE_VALUE
Prevent modification of SERVER_VISIBLE_VALUE
Prevent modification of ORG_VISIBLE_VALUE
paying attention to update the corresponding names for xxx_VISIBLE_VALUE.
10) Create the following PLSQL function:
CREATE OR REPLACE function xxror_test_sysprofile (
prof_opt_name in varchar2,
lvl in varchar2
return number
is
v_ret number;
s_prof varchar2(1024);
s_uname varchar2(100);
s_lvl varchar2(10);
begin
-- returns 0 if the user "uname" must be granted access the profile named "prof_opt_name" at the "lvl" level
-- returns 1 if the user "uname" must be forbidden to access such a profile at such a level.
-- important assumption: the "lvl" parameter may have only one of the following values:'SITE', 'APPL', 'RESP', 'USER', 'SERVER', 'ORG'
-- or else this function will return 1, thus forbidding the access
s_uname:=substr(upper(trim(nvl(fnd_profile.value('USERNAME'),''))),1,100);
if s_uname in ('MY_ADMIN_1','MY_ADMIN_2','SYSADMIN') then
v_ret:=0; -- no restrictions
else
     if s_uname in ('MY_POWERUSER_1','MY_POWERUSER_2') then
     -- restrict to only the below mentioned profiles
     s_prof:=substr(upper(trim(nvl(prof_opt_name,''))),1,1024);
          s_lvl:=substr(upper(trim(nvl(lvl,''))),1,10);
          if
          (s_prof like '%WHATEVER%')
          then
               if s_lvl in ('SITE', 'APPL', 'RESP', 'USER', 'SERVER', 'ORG') then
                    v_ret:=0; -- level acceptable for these users on these profiles
               else
                    v_ret:=1; -- unknown level, so reject
               end if;
          else
               -- these users may not access these profiles, so reject
               v_ret:=1;
          end if;
     else
          if s_lvl = 'SITE' then
          -- no way any other user than those above may modify site-level profiles
          v_ret:=1;
          else
               -- any other user than those above may modify lower-level profiles, but
               -- for now reject all
               v_ret:=1;
          end if;
     end if;
end if;
return v_ret;
end;
Pls be aware that testing first on a test instance is always advisable.

Similar Messages

  • Profile option update at responsibility level from backend

    Hi,
    I referred few online and oracle support document to update the profile option from backend. I was able to change the profile option at site level, but when I am trying to update the profile at responsibility ( or any level such as user etc), I am unable to do so. Though the script says that profile option has been updated, it doesn't show up when I check on frontend.
    EBS 11.5.10.2
    DB 11.2.0.1
    The script which I use to change profile at site level is this:-
    DECLARE
    stat boolean;
    BEGIN
    dbms_output.disable;
    dbms_output.enable(100000);
    stat := FND_PROFILE.SAVE('SITENAME', 'ABDVLP', 'SITE');
    IF stat THEN
    dbms_output.put_line( 'Stat = TRUE - profile updated' );
    ELSE
    dbms_output.put_line( 'Stat = FALSE - profile NOT updated' );
    END IF;
    commit;
    END;
    I tweaked the above script to include the responsibility level change, but its not changing. Both the below scripts are not making any changes.
    SCRIPT - 1
    DECLARE
    stat boolean;
    BEGIN
    dbms_output.disable;
    dbms_output.enable(100000);
    stat := FND_PROFILE.SAVE('ICX_DISCOVERER_LAUNCHER', 'http://nalinoes01.abd.ad.acco.com:8003/discwb4/html/discolaunch.htm?Connect=[APPS_SECURE]', 'RESP',51889,671);
    IF stat THEN
    dbms_output.put_line( 'Stat = TRUE - profile updated' );
    ELSE
    dbms_output.put_line( 'Stat = FALSE - profile NOT updated' );
    END IF;
    commit;
    END;
    Note: I found the responsibility id from the below query
    SELECT responsibility_id  ,application_id
         FROM fnd_responsibility_tl
        WHERE responsibility_name = 'DIRECT CA IBE CUSTOMER';
    ===============================================================================
    SCRIPT-2
    DECLARE
       stat           BOOLEAN;
       resp_id        NUMBER;
       appl_id        NUMBER;
       resp_appl_id   NUMBER;
    BEGIN
       DBMS_OUTPUT.DISABLE;
       DBMS_OUTPUT.ENABLE (100000);
       -- Set the Profile Option value at responsibility level
       SELECT responsibility_id, application_id
         INTO resp_id, resp_appl_id
         FROM fnd_responsibility_tl
        WHERE responsibility_name = 'DIRECT CA IBE CUSTOMER';
       stat :=
          fnd_profile.SAVE
             (x_name                        => 'ICX_DISCOVERER_LAUNCHER',   -- Profile name you are setting
              x_value                       => 'http://nalinoes01.abd.ad.acco.com:8003/discwb4/html/discolaunch.htm?Connect=[APPS_SECURE]',   -- Profile value you are setting
              x_level_name                  => 'RESP',   -- Level that you're setting at: 'SITE','APPL','RESP','USER', etc.
              x_level_value                 => resp_id,   -- Default NULL Level value that you are setting at, e.g. user id for 'USER' level. X_LEVEL_VALUE is not used at site level.
              x_level_value_app_id          => resp_appl_id,   -- Default NULL. Used for 'RESP' and 'SERVRESP' level; Resp Application_Id.
              x_level_value2                => NULL   -- 2nd Level value that you are setting at.  This is for the 'SERVRESP' hierarchy.
       IF stat
       THEN
          DBMS_OUTPUT.put_line ('Stat = TRUE - profile updated');
       ELSE
          DBMS_OUTPUT.put_line ('Stat = FALSE - profile NOT updated');
       END IF;
       COMMIT;
    END;

    I tried to change at SERV level and still the profile never gets updated. Kindly help.

  • IBE: Attachment Document Category -- Profile Option -- Update ???

    We are doing a Proof of Concept for iStore Attachments and I need to update the "IBE: Attachment Document Category". The field is protected against update when attempting from System Administrator responsibility. Is there a certain responsibility/account required when modifying this profile option ??
    Thanks in Advance

    hsawwan wrote:
    Hi,
    Mark the Visible column at the Site level, and you should be able to mark the Updatable column then (at the same level). If you want to have this profile option updatable at the <A class=bodylinkwhite href="http://www.software-to-convert.com/avchd-conversion-software/avchd-to-iphone-software.html"><FONT face=tahoma,verdana,sans-serif color=#000 size=1>Application</FONT></A> level, just tick the box.
    Regards,
    HusseinCould you explain it more clearly? I'm a beginner.

  • How to get profile options & values at user & responsibility level by SQL?

    Experts, How to get profile options and values at user and responsibility level using SQL?

    SELECT
    po.profile_option_name as name
    , po.user_profile_option_name
    , decode(to_char(pov.level_id),'10001','SITE','10002','APP','10003','RESP','10005','SERVER','10006','ORG','10004','USER', '???') as "LEVEL"
    , decode(to_char(pov.level_id),'10001','','10002', app.application_short_name,'10003', rsp.responsibility_key,'10005', svr.node_name,'10006', org.name,'10004', usr.user_name,'???') as context
    , pov.profile_option_value as value
    FROM
    fnd_profile_options_vl po
    , fnd_profile_option_values pov
    , fnd_user usr
    , fnd_application app
    , fnd_responsibility rsp
    , fnd_nodes svr
    , hr_operating_units org
    WHERE 1=1
    AND pov.application_id = po.application_id
    AND pov.profile_option_id = po.profile_option_id
    AND usr.user_id (+) = pov.level_value
    AND rsp.application_id (+) = pov.level_value_application_id
    AND rsp.responsibility_id (+) = pov.level_value
    AND app.application_id (+) = pov.level_value
    AND svr.node_id (+) = pov.level_value
    and org.organization_id (+) = pov.level_value
    ORDER BY 1, pov.level_id, 5
    You'll need to apps initialize your SQL session before running this ...
    Regards,
    Jon

  • Disable the Advanced tab at user level while scheduling concurrent requests

    How can I disable the Advanced option at user level while scheduling concurrent requests ?
    In the Schedule Form you have:
    Run the Job...
    - AS soon as Possible
    - Once
    - Periodically
    - On Specific Days
    - Advanced
    Thank you.
    Edited by: user635184 on Jan 27, 2012 1:49 AM

    Hi,
    The steps are the same except that you need to do the personalization at the responsibility level (ie Condition Tab> Context>Level should be set to 'Responsibility')
    You have to apply the personalization for all responsibilities(except Sys Admin) individually.
    See the following Metalink notes for information on Form Personalization:
    279034.1: Information About the Oracle Applications Form Personalization Feature in 11i
    744069.1: Sample Testcase For Using Form Personalization In Oracle Applications
    1266606.1: OM: Sample Codes For Form Personalization In Order Management
    Regards,
    Sujoy

  • Profile option  Concurrent:Report Access Level

    I need to set the profile Concurrent:Report Access Level .. but it is not retreivable from profile--> system -->.. any idea ?
    Kai

    Hello Kai,
    would you mind giving me a hand and post here the answer to your question? The mentioned metalink note is just referencing a whole section within 120sasg (B31451-05.pdf). If you would provide a short summary what needs to be done would be very welcome.
    Thanks a lot
    Volker

  • How to assign profiles at user level  ?

    hello every body.....i have created 2 users say x , y
    and i have assigned them general ledger responsibilty.....
    .at site level profile Gl set of books name is vision operation..
    .now i have assigned Gl set of books profile to user x at user level
    as vision china...and to user y as vision germany.....when i login with
    different user name with gl responsibilty ......after navigating
    to----journal-->enter--->new journal----for both users iam getting the
    same currency which is at sit level...i thought for x user the currency
    will be china currency
    and for y user it will be germany curreny which i hav assigned at user level....
    please help me regarding this.......
    thanks and regars
    imran

    Hi,
    i have assigned it at user level then why iam i
    getting the currency code of site level ?Did you user to logout and login again after setting the profile option at the user level?
    What if you set this profile option at the site/application/responsibility level, can you reproduce the issue then?
    Thanks,
    Hussein

  • HR: Security Profile at User Level

    Hi
    As HR: Security Profile is not enabled for user level, but sometime we need it for some users. Workaround is set up a different responsibility for the same.
    Also We can go to Application Developer Responsibility and set enable user level for HR: Security Profile option. Is it Ok to do it or this may break the system at some point.
    Suggestions Please.

    Gaurav,
    I am not an expert in this area, but I do not think enabling the profile at the user level will cause any issues. In our site, what we have done is to create a security profile specific to that user and assigned it in the HR module (not sure of the specifics, but I can find out if you are interested) - we did not enable the profile option at the user level as you are wanting to do. SR can provide you with another opinion :-)
    HTH
    Srini

  • Restricting Authorizations to Variants at User level

    Hi SAPians,
    Can you help me to know how can I restrict variants to be displayed for particular users.?
    Example: I am creating 5 variants in EMMACL transaction and give authorizations for the users only to particular Variants as below:
    1. Variant1 --> Can be access by only users ERP-EHK, ERP-SAP & ERP-EJS
    2. Variant2 --> Can be access by only users ERP-EAS & ERP-HJG.
    3. Variant3 --> Can be access by only user ERP-EMM
    4. Variant4 --> Can be access by only users ERP-EHK & ERP-UJY
    5. Variant5 --> Can be access by only user ERP-EAS
    Let me know how I can achieve the above requirement?

    Hi,
    i have assigned it at user level then why iam i
    getting the currency code of site level ?Did you user to logout and login again after setting the profile option at the user level?
    What if you set this profile option at the site/application/responsibility level, can you reproduce the issue then?
    Thanks,
    Hussein

  • Applications Start Page profile option cannot be set at responsibility leve

    Note 729375.1 describes the use of the 'Applications Start Page ' profile option. It mentions an enhancement request to make this profile option updatable at responsibility level but we cannot find this enhancement request

    Log a SR and ask Oracle Support about it (and its status) as this Enhancement Request is not mentioned in the same doc.
    Thanks,
    Hussein

  • Profile Option Vaues

    Is there any query/report to find the profile options with the values, set by any partiular application user say "operations" on any level?
    Thanks in advance.

    select
    ptl.user_profile_option_name
    , pov.profile_option_value
    , fus.user_name
    from
    fnd_user fus
    , fnd_profile_option_values pov
    , fnd_profile_options pop
    , fnd_profile_options_tl ptl
    where
    fus.end_date is null
    and fus.user_id = pov.level_value(+) and pov.level_id(+) = '10004'
    and pov.profile_option_value is not null
    and pov.profile_option_id = pop.profile_option_id
    and pop.profile_option_name = ptl.profile_option_name and ptl.language = 'US'
    order by
    fus.user_name, ptl.user_profile_option_name
    The above will show you any non-null profile option settings at user level by user - you can easily restrict to a single user.
    Regards,
    Jon

  • Profile option

    Hi Everyone,
    Versions :
    Database :11.0.1.7
    Applications : R12.1.3
    I want to change the below profile option at the User level(shankar) in the backend applications. Please help me.
    Fnd: Debug log enabled to NO from YES
    Fnd: Debug log level to Statement
    Fnd: Debug log module to %
    Thanks,
    shubha

    Hi;
    Please review:
    Reg:apps profile
    How to list E-Business Suite Profile Option values for all levels using SQLPlus [ID 201945.1]
    How to Search all of the Profile Options for a Specific Value [ID 282382.1]
    How To Find All Users With A Particular Profile Option Set? [ID 367926.1}
    How to Change Profile Option Value Without Forms? [ID 943710.1]
    profile options
    Regard
    Helios

  • Script to check finding profile option at user level

    HI Friends,
    i want to find out
    script to check finding profile options at user level using sql in oracle apps 11i.
    Please suggest me.
    Thanks,
    DBA

    i want to find out
    script to check finding profile options at user level using sql in oracle apps 11i.Note: 470102.1 - How To Check If a Profile Option Is Set In Oracle Application
    Note: 201945.1 - How to list E-Business Suite Profile Option values for all levels using SQLPlus
    Note: 282382.1 - How to Search all of the Profile Options for a Specific Value
    Note: 367926.1 - How To Find All Users With A Particular Profile Option Set?
    Note: 282382.1 - How to Search all of the Profile Options for a Specific Value
    How To Set A System Profile Value Without Logging In To The Applications [ID 364503.1]
    How to Change Profile Option Value Without Forms [ID 943710.1]
    Thanks,
    Hussein

  • Trace is still getting generated even after disabling the profile option Initialization SQL Statement - Custom

    Hi All,
    we have a problem with profile option "Initialization SQL Statement - Custom". we have set this at user level. after some time, we have cleared the profile option value for this user.
    But we can still see the generated trace files are getting updated. we did checked this trc files from path returned from below query.
    select name, value
    from   v$parameter
    where  name like 'user_dump_dest';
    Please help us on how to resolve this issue. we are using Oracle Apps R 12.1.2 version.
    Thanks in advance
    Raghava

    Before logging out we suspect that he closed the browser instead of logout link.
    What if you make the user logout, can you reproduce the issue then?
    We have verified the profile options for this user and found that value is cleared for profile Initialization SQL Statement - Custom.
    How do you know that the files were generated for this user and because of this profile option? Have you verified profile options for all users at all level?
    Thanks,
    Hussein

  • User Profile Option Values

    The concurrent report User Profile Option Values, is only site value levels. Are user level values more powerful, i.e. do they overide such values. How can I determine profile option values set at user level? Is there a similar report?

    hsawwan wrote:
    The concurrent report User Profile Option Values, is only site value levels. Are user level values more powerful, i.e. do they overide such values. A profile option can be set at one or more levels, depending on its hierarchy type. Most profile options use the Security hierarchy type, meaning that they can potentially be set at the four levels Site (lowest level), Application, Responsibility, and User (highest level). A higher-level option value overrides a lower-level value.
    How can I determine profile option values set at user level? Is there a similar report?Note: 367926.1 - How To Find All Users With A Particular Profile Option Set?
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=367926.1
    Note: 201945.1 - How to list E-Business Suite Profile Option values for all levels using SQLPlus
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=201945.1
    Do you know if the Utilities: Diagnostics is our powerful/risky profile option to grant a user in PROD, I cant find much information on it??

Maybe you are looking for