Tuesday, October 10, 2006

What are Profile Options in Oracle Apps ?

Profile Options provide flexibility to Oracle Apps. They are a key component of Oracle Applications, hence these much be understood properly. I will be taking multiple examples here to explain what profile options mean. I will also try to explain by stepping into Oracle shoes "How will you design a program that is flexible", by using Profile Options.

Following that, if you still have questions regarding profile options, then leave a comment and I promise to respond. For the learners of Oracle Apps, understanding profile options is mandatory.

What is profile option?
The profile option acts like a Global Variable in Oracle.

Why does Oracle provide profile options?
These are provided to keep the application flexible. The business rules in various countries and various companies can be different. Hence the profile options are delivered by Oracle in such a manner to avoid hard-coding of logic, and to let the implementation team at site decide the values of those variables.

For screenshots of below listed examples in this article, please click this link

Enough definitions, give me some scenarios where profile options are used by Oracle....
1. There are profile options which can turn the debugging on, to generate debug messages. Say one of 1000 users reports a problem, and hence you wish to enable debugging against just that specific user. In this case you can “Turn On” the debugging profile option "again that specific user".
2. There are profile options that control which user can give discount to their customers at the time of data entry. You can set profile option "Discount Allowed" to a value of either Yes or No against each Order Entry user.
3. Lets assume an Organization has department D1 and D2. Managers of both the Departments have "HRMS Employee View" responsibility. But you do not want Manager of D2 to be able to see the list of Employees in Organization D1. Hence you can set a profile option against the username of each of these users. The value assigned to such profile option will be "Name of the Organization" for which they can see the employees. Of course, the SQL in screen that displays list of employees will filter off the data based on “logged in users profile option value”.


Let’s take an example. Let’s assume you are a developer in Oracle Corporation building a screen in ERP. Let us further assume that you are developing an Order Entry screen.
Assume that business requirements for your development work is:-
1. Screen should be flexible to ensure that different users of the screen can give different levels of discounts. For example, a clerk Order Entry User can give no more than 5% discount. But Sales Manager can enter an Order with 15% discount.
2. There should not be any hard-coding regarding the maximum permissible discount.
3. In the screen there will be a discount field.
4. When the discount value is entered in discount field, an error will be raised if user violates the maximum permissible discount.

Here is how Oracle will code this screen
1. They will define a profile option named "OEPASSI Maximum Discount Allowed".
2. The short name of this profile option is "OEPASSI_MAX_DISCOUNT"
2. In the when-validate-item of the discount field(assuming Oracle Forms), following code will be written
IF :oe_line_block.discount_value > fnd_profile.value('OEPASSI_MAX_DISCOUNT')
THEN
message(
'You can’t give discount more than '
|| fnd_profile.value('OEPASSI_MAX_DISCOUNT') || '%' ) ;
raise form_trigger_failure ;-- I mean raise error after showing message
END IF ;

Here is how, the client implementing Oracle Order Entry will configure their system.
1. Navigate to System administration and click on system profile menu.
2. For Clerk User(JOHN), set value of profile "OEPASSI Maximum Discount Allowed" to 5
For Sales Manager User(SMITH), set value of profile "OEPASSI Maximum Discount Allowed" to 15


Question: This sounds good, but what if you have 500 Order Entry Clerks and 100 Order Entry Sales Managers? Do we have to assign profile option values to each 600 users?
Answer : Well, in this case, each Clerk will be assigned Responsibility named say “XX Order Entry Clerk Responsibility”
Each Sales Manager will be assigned Responsibility named say “XX Order Entry Sales Manager Responsibility”
In this case, you can assign a profile option value to both these responsibilities.
“XX Order Entry Clerk Responsibility” will have a value 5% assigned against it. However, “XX Order Entry Sales Manager Responsibility” will have a profile option value of 15% assigned.
In the when-validate-item of the discount field, following code will then be written
IF :oe_line_block.discount_value > fnd_profile.value('OEPASSI_MAX_DISCOUNT')
THEN
message(
'You can’t give discount more than '
|| fnd_profile.value('OEPASSI_MAX_DISCOUNT') || '%' ) ;
raise form_trigger_failure ;-- I mean raise error after showing message
END IF ;

Please note that our coding style does not change even though the profile option is now being assigned against responsibility. The reason is that API fnd_profile.value will follow logic similar to below.
Does Profile option value exist against User?
--Yes: Use the profile option value defined against the user.
--No: Does Profile option value exist against Responsibility
-----Yes: Use the profile option value defined against the current responsibility in which user has logged into.
-----No: Use the profile option value defined against Site level.

For screenshots of examples in this article, please refer this link

146 comments:

  1. Anonymous10:25 AM

    Anil,

    Just started reading your blog today.(got the link form your site).Really good job maybe it will transform me from a DBA to techi ;)

    Sam
    www.appsdbablog.com

    ReplyDelete
  2. Hey Sam,

    You happen to be an expert, this blog is not for you mate. But thanks anyway for visiting my site.

    Surely, any help that you extend to the readers of this blog will be highly appreciated. Its always useful to read DBA's perspective on training.

    Thanks
    Anil Passi

    ReplyDelete
  3. Anil,
    Believe me I started enjoying your blogs now . Not very techie but at same time with enough technical knowledge.

    There are different level of profile options, Security Level , Hierarchy level ... Would you like to discuss this on your site , if not I will go into more technical details of profiles ...will wait for your updates .

    Once again well done .

    Atul

    ReplyDelete
  4. Hey Atul

    I will be discussing the advanced level topics on http://oracle.anilpassi.com

    I do not wish to give overdose of information on this blog, as the readers on this blog are mere beginners.

    I have drafted a raw article on internals of profile options, explaining its caching, hierarchy & usages under different kind of scenarios. I will post a link to advanced article here once its published.

    For almost every second article that I write for beginners on here, I plan to write an advanced version of the same article on http://oracle.anilpassi.com

    However, so that I do not have to reinvent the wheel, please feel free to drop the link to your relevant articles in the comment section here.

    Thanks for your encouragement mate.

    Cheers
    Anil

    ReplyDelete
  5. Hi Anil,
    Got stumpled upon ur blog thru Atul's blogs...

    Nice job dude. Looks like u gona kindle the techi in me (DBA).

    Myself, Arunkumar spent 5 yrs with Oracle as an Oracle Apps DBA. Now in the US as a Consultant.

    Good posts. Way to go.. Good Luck !

    -Arunkumar

    ReplyDelete
  6. Hey Arun,

    Good to have you here, it will be great to read DBA's perspective on development aricles. If you have any piece of advice for my newbie tobe apps consultant readers, then don't hesitate to share here.

    Saw snaps on your blog, kinda reminded me of my trip to Manhattan....those skyscrapers

    Cheers,
    Anil Passi

    ReplyDelete
  7. Hi Anil,

    The way u r posting the stuff is really very good........ specially this question & answer format .....

    its really easy to understand

    Thanks
    pravin

    ReplyDelete
  8. Long time Pravin, hope you are well.

    Yeah, I like doing Question & Answers, becasue that way I can put myself into the shoes of the learner.

    I am quite tied up with new project assignment that I have, which will keep me busy for a week or so, hence may not post new articles for a week.

    But drop me an email if you ever get stuck on something.

    ReplyDelete
  9. Anonymous10:54 PM

    Hi Anil,
    Who will create profile options?
    (Technical / Functional)

    ReplyDelete
  10. Hi Vinod,

    If someone creates a new profile option, then somewhere a piece of code must be written that will read the value of that profile and switch logic accordingly. As you can see, it is the developer that is closely involved in the process.

    In answer to your question, either the technical or a functional person can create the profile, but most often it is a TECHNICAL persons job.
    Reasons are below:-
    1. Sometimes you would attach SQL to profile option, such that it no longer remains free text profile option.
    2. Developer must change some pl/sql or other program to read the value of the profile option.

    thanks
    anil passi

    ReplyDelete
  11. Anonymous3:52 AM

    Hi Anil,

    Just want to know about personel profile option what is that

    ReplyDelete
  12. you mean User level profile option?

    two call centre operators can have different limit for offering discounts to customer. in such case, you can have a profile option named "Max Discount Allowed" set at user level.

    hope this explains

    thanks
    anil passi

    ReplyDelete
  13. Anonymous5:21 AM

    hi anil,
    ihve started seeing ur blog today.really its very helpful

    thanks,
    ajay

    ReplyDelete
  14. Anonymous12:50 AM

    Hi,

    Can you also give a sample of how to create a new Custom Profile Option (ex: Yes/No)??

    Thanks,

    ReplyDelete
  15. Anonymous12:52 AM

    Hi,

    Can you also give a sample example of how to create a new custom Profile (ex : Yes/No)??

    Thanks in Advance!

    ReplyDelete
  16. Anonymous10:52 PM

    Hi Anil

    This site is really helpful and I m seeing lot of stuff in this to update myself.

    Good job

    Divya

    ReplyDelete
  17. Anonymous1:24 AM

    Hi Anil

    This site is really helpful and I m seeing lot of stuff in this to update myself.
    But Anil I want to know what about if there are many Responsibities for order entry form, Can I go further for Application Level or Site Level? What is meaning of site here?

    Marvelous!

    Shammi Meshram

    ReplyDelete
  18. Anonymous7:07 AM

    hi anil,

    i create one user assing to responsibilty but i can not access profile in menu option. if i am using general ledeger responsibilty then i can change my user level value in my profile. but i

    ReplyDelete
  19. this profile may not be applicable for user update.

    Go to application developer, query the profile, and see if user update/user view is enabled in checkbox

    thanks
    anilp assi

    ReplyDelete
  20. Anonymous7:35 AM

    u are doing such great job...
    i really impress by u.

    what i want say that i am enable to access following menu for change profile detail in my user ,my responsibility.
    edit-->preferrences-->>profile

    means in my user this is showing disabled how can i enbaled it.

    thanks
    Rajendrasingh

    ReplyDelete
  21. Anonymous7:38 AM

    means i want to say i am not able to acess menu in my responsibility

    edit -->>prefereences-->>profile

    ReplyDelete
  22. the profile screens Form Function is not available within your responsibility

    Do the below:-
    a. check if function/menu exclusion exists for this responsibility
    b. if (a) is not true, then add the form function to the responsibility

    thanks
    anil

    ReplyDelete
  23. Anonymous8:46 AM

    hi anil

    i want to u ask some informations please try to reply ..i am applying oracle hrms jobs in uk .is these people see experience letters and how is the requirement here plzzzzzzzzz reply
    thanks
    deepika

    ReplyDelete
  24. Anonymous12:40 AM

    hi anil,

    Fine,its very fine,ur blogger is nice.can u tell me about fndinit.
    whts the purpose of that one,if we don't use that one means wht will happen.

    ReplyDelete
  25. Anonymous12:16 AM

    Hi Anil,
    Great post and very informative. I am using vision to learn oracle apps and I want to navigate to screenshots as u have provided. Is it possible in vision to do so. If yes how should I proceed. I can login to ebusiness suite as sysadmin/sysadmin, but I don't see any place to go from there. Please guide me if possible.

    Email: sudipdahal@gmail.com

    ReplyDelete
  26. Hi Anil,
    Let me first congratulate you for the stupendous job at documenting the training stuff in such great detail !
    I've been working on Oracle Apps HRMs for quite some time now and had a quick comment on the 3rd example on Profile Options. I believe it is just an illustration to drive home the point of flexibility and not something which would be actually implemented. The Business case mentioned can be approached using other Security features in Oracle Apps. Or am I missing something ?

    Thanks !
    Gaurav

    ReplyDelete
  27. Hi Gaurav

    Sorry if that caused confusion

    Point 3 is mere example to explain the usages of profile, and not explain Module specific functionality.

    Thanks,

    ReplyDelete
  28. Hi Anil,

    I am lookin for an API to create credit profile classes. I have to create the profile classes and then attach them to the customer. Any pointers towards this wud be of great help

    ReplyDelete
  29. Anonymous5:28 AM

    Hi Anil,

    I have to create some profile classes from the back end and then attach them to the customer. Need some pointers for the APIs or Interface that shud be used.

    ReplyDelete
  30. Anonymous4:34 AM

    Hi Anil,

    I have a question . In the Miscelleneous transaction language displayed is not in English could you pls suggest me a way to fix this problem.

    thanks

    ReplyDelete
  31. Anonymous11:00 PM

    I couldn't find system profile options in System Administration.

    ReplyDelete
  32. It is under System AdministratoR

    I think you are in System AdministratioN

    ReplyDelete
  33. Anonymous8:42 AM

    Hi Anil,

    This is a great work done by you. I'm happy that i got to this site and learning Apps.

    Thanks once again.

    Regards,
    MS

    ReplyDelete
  34. Before i comment, i would like to thank u so much for providing this kind of help to everyone. Todday i just started reading your blog. I really very very happy today by seeing this blog. Keep in touch.


    Thanks and regards,
    Srinivas.T

    ReplyDelete
  35. Hi Anil,

    Could u pls tell me debugging process in apps.

    ReplyDelete
  36. hi anil

    u gave me very fantastic idea on profiles.i hope u may continue this for us


    sudarsan reddy

    ReplyDelete
  37. Its a great job dude. Specially the way you are presenting the stuff in question and answer format will help the learners to understand concept in detail.

    I have a small doubt on this:
    What happens if profile values assigned at both USER and responsibility levels.


    Regards,

    Seshadri Reddy.

    ReplyDelete
  38. Hi Shesh

    In that case, profile at user level takes preference

    ty
    a

    ReplyDelete
  39. Anonymous1:41 PM

    Hi Annil:

    This is an urgent question. For one profile option there are two options. Either YES or NO. what will be the default if neither is selected?

    Thanks,

    Asm

    ReplyDelete
  40. hi asm

    it will depend upon how oracle did the programming for that profile.

    lets take this scenario
    IF NVL (fnd_profile.value ('XXPROF'),'Y') = 'Y' then
    then null will be considered Y due to NVL



    IF NVL (fnd_profile.value ('XXPROF'),'N') = 'Y' then
    then null will be considered N due to NVL


    in most cases, null value will equate to No, however, to be 100% sure check to see how oracle have written code for that profile.

    thanks,
    anil passi

    ReplyDelete
  41. Anonymous2:32 PM

    Thanks Anil Passi for your fast response.

    Can you tell me the default value for this specific profile value.
    FV:Include Adjusting Activity in YTD

    Thanks once again.

    Asm

    ReplyDelete
  42. hi sam,

    Actually you are doing great job & I liked alot your blog.
    & let me plz know some specific information from u about

    the main tasks of apps dba in setting profile options & forms personlization & workflow & lastly the flexfields.

    Thanks

    ReplyDelete
  43. hi fubu

    these are the tasks of administrators. apps dbas usually do cloninig , installation etc.

    visit becomeappsdba.blogspot.com to details of APPS DBA Related activities

    Thanks
    Anil Passi

    ReplyDelete
  44. Anonymous1:46 AM

    Hi Anil,

    This is very good training & I really appreaciated the way you are giving explanation for APPS.In practically these are all usefull.I am very much happy about your blog.Could you send me the very brief from start to end of setups of GL,AR,AP documents(screen shots if available) as way you are explaining.it will give me more usefull.


    Thank you very much..
    Best Regds...Murthy

    ReplyDelete
  45. Anonymous10:13 AM

    hi anil,
    its really stupendous job , ur doing, it is really very useful for me,as iam beginer

    thanks
    reddy

    ReplyDelete
  46. Hi Anil,

    You Provide really very knowledgable info and that too in simple words, of recently i have been going thru your OA Framework articles and they have helped me a lot.
    just would like to know how do u manage to be master of all the latest technologies in Oracle Apps.

    Thanks
    Shweta

    ReplyDelete
  47. Hi Shweta,

    I still have a long way to go and lot of things to learn.

    Anyhow, thanks for your kind words

    Anil

    ReplyDelete
  48. Anonymous9:26 AM

    Hi Anil nice aricles from ur blog

    I have a small doubt on this concept hope u could clear it

    Can we write COMMIT command with in a LOOP..

    ReplyDelete
  49. Hi Anil,
    this is Parvendra
    i have a confusion amount HZ,AR,RA modules.
    can u expain them.
    Thanks in advance

    Cheers
    Parvendra

    ReplyDelete
  50. Hi Anil,
    what the difference amoung HZ,AR,RA modules in oracle apps?

    plz explain.

    Thanks in advance

    Cheers
    Parvendra

    ReplyDelete
  51. GL is General Ledger

    ReplyDelete
  52. Hi Anil:

    Thanks for the great info...! Your help is greatly appreciated as you are making us understand the concepts clearly!! Can you focus a little on BPEL Process and give us us some real-time examples. Thanks again for taking time!!

    Radhika

    ReplyDelete
  53. Hi Anil,
    I have just started reading your articles.Very informative.

    One question on Profile option:
    What is the profile option "MFG_ORGANIZATION_ID" used for?. When I tried to find the value for that option using Fnd_profile.value function,it results in null in my environment. The apps version is 11.5.9.

    Similar to MO : Operating Unit,is there any option available for the Inventory Organization of the operating Unit to which the logged in user attached to?

    Thanks,
    Rafeek.

    ReplyDelete
  54. Hi Anil,

    Your article on profile is quite informative. I have a question. Is there a way to update a profile?

    I mean if

    1. I create a new profile from application developer responsibility

    2. Enter a value for the same at site level from sys admin resp

    3. Now if i want to update the profile value programatically, is there a way to do it?

    I tried doing it using fnd_profile.put but it is doesnot happen. Are there any prerequisites to be taken care of before using this routine??

    Thanks
    Sreenivasa

    ReplyDelete
  55. fnd_profile.put will place the value in cache.

    If you want to save the state into the database, then use fnd_profile.save

    Thanks,
    Anil

    ReplyDelete
  56. Hi,

    Thanks for the timely help...

    The solution worked me...

    Regards,
    Sreenivasa

    ReplyDelete
  57. Anil,

    Wondering if there is a simpler way to know non-default profile options in an installation without using FND_PROFILE_OPTIONS/_VALUES.last_update_date . Oracle RDBMS has a column V$parameter.ISDEFAULT which one can filter by to know non-default what parameters, looking for something similar if you can help.

    Thanks,
    Adams.

    ReplyDelete
  58. Hi Adams,

    I am afraid, there is nothing equivalent to that for Profiles.

    Thanks,
    AniL Passi

    ReplyDelete
  59. Anonymous11:41 AM

    Hi Anil,
    Great Job,very informative blog.i was practicing profile in vision,when i try to assign options at site level its empty,i mean no field to enter.i was bit confused.could u pls explain me clearly about this.

    Thx
    Suresh

    ReplyDelete
  60. Hi Suresh

    Query the definition of that profile option from responsibility "Application Developer".

    See the checkboxes, that dictate the levels at which a specific profile options can be assigned values

    Thanks
    Anil Passi

    ReplyDelete
  61. Hi Anil,

    Good job and your blog is very much informative.
    i would like to shoot a question here.

    How to change the profile option value from the form.i mean just i want to change some profile option values while navigating from one window to other.

    Regards
    s.sathish kumar.

    ReplyDelete
  62. Hi Anil,

    We have created 500 custom responsibilities as per my client requirements; now we have enable "MO: Operating Unit" Profile Option for all the responsibilities. To do this from Applications, it will become a TDS job ... I want to set this Profile Option from backend ...

    So, can you plese help me out by providng the API names and workaround.

    ViKu

    ReplyDelete
  63. Hi

    Can you tell me about all the profile options for Teleservice and Service Contracts, or direct me to a site. I'm a newbie to all of this.

    Thanks in advance.

    Meli

    ReplyDelete
  64. Hi,

    can anyone tell me how to set report parameter values depending on profile option corresponding to the responsibility

    ReplyDelete
  65. hi Anil,

    you are really great teacher.
    I was actually avoiding this topic earlier to dig into but finally(patiently) went into your webpages,which made things more clearer and understandable.

    your rocking.
    thanks again.
    Kamlesh

    ReplyDelete
  66. Anonymous9:00 PM

    Hi Anil,
    i m sure u can help me with site level concept,,,,,making it lot easier to understand....
    please explain the site level in detail, if possible please use an example.
    Thanks.

    ReplyDelete
  67. Hey Anonymous

    Site level means that profile option value is applicable to all the users regardless of how they login

    Think of it like a DB instance level variable.

    Thanks,
    Anil Passi

    ReplyDelete
  68. Anonymous11:24 AM

    Thanks it is really a good example to know about profile option.

    Rajesh
    rajes_ktm@hotmail.com

    ReplyDelete
  69. Anonymous3:52 PM

    Hi Anil,
    can you tell me about the use of fnd_profile.value('username') in the following query:
    select * from my_cust_stg,fnd_territories, fnd_user, hr_organization_units
    where fnd_territories.al_territory_code =my_cust_stg.area_code
    and fnd_user.user_name = fnd_profile.value('username')
    thanks!!

    ReplyDelete
  70. Hi Anil

    Just logged in and happen to read about 'Profile Options'. I can say my search has 'Ended'for knowing what is a Profile Option. Kudos guy.

    I can say i was lucky to hit your site.

    Regards
    Sreedhar Sharma

    ReplyDelete
  71. Hi Anil

    Just logged in and happen to read about 'Profile Options'. I can say my search has 'Ended'for knowing what is a Profile Option. Kudos guy.

    I can say i was lucky to hit your site.

    Regards
    Sreedhar Sharma

    ReplyDelete
  72. Dear Anil

    I am getting on with 3rd lession which is "Profile" which is mandatory for learners. The snap of profile on your site looks different to one which is in release 12.
    Can you clear to me this change or i am getting wrong to it.

    Thanks

    Majid

    ReplyDelete
  73. Anonymous6:33 AM

    Hi Anil,

    Iam new to APPS.This site helps me better understanding of profile.I just want to discuss one thing.I have created two concurrent programs A and B and A's short name- c1 and Executable-c2,B's shortname- d1 and Executable-d2.I have created profile cc and in user level assigned value 'A' .After that i performed receipt.Automatically two reports 'A' and 'B' are generated.I want report 'A' should be generated not 'B' whenever i performed receipt.B is generated by default.I dnt know why.pls suggest

    Wazid

    ReplyDelete
  74. Anonymous7:53 AM

    I have a similar situation but from a staging perspective. As programmers, we set up the requests for each job. As they get moved from the development instance to the next instance of the stages till it gets to the production instance, we have to manually change the instance ID in our output directory in the parameter screen. What we want to do is have the system dynamically pull the instance ID for us. As an example of our directory parameter: /ftp/instance2/outdir How can we change the 'instance2' to 'instance3' to 'instanceProd' using the FND_PROFILE.VALUE and the internal name is 'FILEDIR' for each instance? Thanks in advance for your help.

    ReplyDelete
  75. Anonymous7:54 AM

    I have a similar situation but from a staging perspective. As programmers, we set up the requests for each job. As they get moved from the development instance to the next instance of the stages till it gets to the production instance, we have to manually change the instance ID in our output directory in the parameter screen. What we want to do is have the system dynamically pull the instance ID for us. As an example of our directory parameter: /ftp/instance2/outdir How can we change the 'instance2' to 'instance3' to 'instanceProd' using the FND_PROFILE.VALUE and the internal name is 'FILEDIR' for each instance? Thanks in advance for your help.

    ReplyDelete
  76. I am unable to understand this example i am new to apps can u just explain me in detailed, i like the way u explain the topic, i really appreciate if u find me the easiest way

    ReplyDelete
  77. Anonymous5:34 PM

    you are absolutely spectacular. being in the industry for 9 years, i could not have explained it better. thanks for the great work you are doing............

    ReplyDelete
  78. Anonymous9:36 AM

    Hi Anil, how can i get oracle training?
    Jay.

    ReplyDelete
  79. hi,
    i just started auditing oracle application and i don't get one thing in the table itself:
    the value of "SIGNONAUDIT:LEVEL" is set on "D" in the table "FND_PROFILE_OPTION_VALUES", when i read that there are only 4 options (none, user, responsibility, Form) and none of them is "D". do you know what the "D" stands for?
    thanks,
    orit

    ReplyDelete
  80. Anonymous1:56 PM

    Hi Anil,

    Great tutorial on user profile options. Can you please guide me with a access control profile options task. For example we want the users to be able to use sqlplus and do queries from 8am-11am but not able to access from 12pm-10pm but then can again from 10pm-6am. Please provide examples how to do the latter in the database.

    Thanks a Lot!!

    ReplyDelete
  81. Hi Anush

    There is no such profile option to achieve your stated requirement.

    By the way, it is a very strange business requirement

    Thanks,
    Anil

    ReplyDelete
  82. Anonymous3:43 PM

    Anil,

    Thanks for the reply. Is there a way of using the profile options to open and close the database??

    Thanks again!!

    ReplyDelete
  83. Anonymous8:04 AM

    Hi Anil,
    The purpose of using the following profile option is to restrict the users from accessing the database during peak times.how to use database profiles to open and close access to the database. For example we want the users to be able to use sqlplus and do queries from 8am-11am but not able to access from 12pm-10pm but then can again from 10pm-6am. Please provide examples how to do the latter in the database.

    OS:sun solaris
    database version:10.2.0.3
    sever: weblogic

    Thanks for your help!
    Anusha

    ReplyDelete
  84. Anonymous10:07 PM

    what is the use of profile in oracle apps and define profile option

    ReplyDelete
  85. Anonymous2:51 PM

    How do i do the same thing in self service web applications.

    ReplyDelete
  86. Hi Shoaib

    In OA Framework , you can use pageContext.getProfile

    For profile option screens in OAF, visit Functional Administrator responsibility

    Thanks,
    Anil

    ReplyDelete
  87. Anonymous5:41 PM

    really this is very useful to me. thanks alot

    ReplyDelete
  88. Anonymous1:19 AM

    hi anil,
    thanks a lot for your reply. What we want to do is that in Iprocurement self service web application we have create our own custom tab.and we want to provide access to custom tab only to certain users who will fall under same responsibility. i believe best option to acheiev the desired behavior will be profile options. but now the question is by going through your example i can implement profile options in oracle forms but i am not sure how to do same in the self service web applicaiton.Please bear with me i am new to oracle apps world.

    thanks in advance for your guidance.
    Shoaib

    ReplyDelete
  89. Anonymous12:25 PM

    Hi,

    My requirement is , I have to change the profile value from Apps Oracle Standard Advanced Form which then calls a Receipt Creation api. This api reads the profile value while creating the receipt.

    I am doing the below in Custom.pll. This is being called every time user selets invoices and submit the Make Payment button. The problem is 1st time the profile value changes and the api takes the correct value but 2nd time onwards it takes the old value. Can you please tell me where am I going wrong :-

    fnd_profile.put('IEX_CCARD_REMITTANCE',P_PAYMENT_METHOD);

    P_PROFILESAVE:=fnd_profile.save( X_NAME => 'IEX_CCARD_REMITTANCE',
    X_VALUE =>P_PAYMENT_METHOD, -- (Payment Method Id derived by the code),
    X_LEVEL_NAME => 'USER',
    X_LEVEL_VALUE => P_USERID);-- (For the user)
    commit;

    Thanks.
    Rajesh

    ReplyDelete
  90. Anonymous5:10 AM

    Hi,

    What is the meaning of the following profile options:
    1) GMF: Check Cross Validation Rules
    2) FND:Diagnostics

    ReplyDelete
  91. suppose one more clerk is there
    .how can u set the profile value?

    else
    same profile values all clerk as same.

    pls give me reply

    and wt is advantage.

    give me reply plz

    ReplyDelete
  92. Hi Sarath

    If another clerk is there, then that clerk will be assigned the responsibility specific to clerk.

    Lets say a user name JOHNKING joins as clerk. Hence we will assign responsiblity “XX Order Entry Clerk Responsibility” to JOHNKING

    Thanks,
    Anil

    ReplyDelete
  93. Hi Sarath

    If another clerk is there, then that clerk will be assigned the responsibility specific to clerk.

    Lets say a user name JOHNKING joins as clerk. Hence we will assign responsiblity “XX Order Entry Clerk Responsibility” to JOHNKING

    Thanks,
    Anil

    ReplyDelete
  94. Thanks very much for the profile option explanation.

    ReplyDelete
  95. Anonymous12:24 AM

    Hi anil,
    Your site is really a very informative site.As a beginner,it has helped me a lot to understand the basic concepts of oracle apps.
    One thing I wanted to know.
    Could you please distinguish between sytem and personal profile functions.

    ReplyDelete
  96. Anonymous12:26 AM

    Hi anil,
    Your site is really a very informative site.As a beginner,it has helped me a lot to understand the basic concepts of oracle apps.
    One thing I wanted to know.
    Could you please distinguish between sytem and personal profile functions.

    ReplyDelete
  97. Anonymous12:26 AM

    Hi anil,
    Your site is really a very informative site.As a beginner,it has helped me a lot to understand the basic concepts of oracle apps.
    One thing I wanted to know.
    Could you please distinguish between sytem and personal profile functions.

    ReplyDelete
  98. Anonymous12:29 AM

    Hi anil,
    Your site is really a very informative site.As a beginner,it has helped me a lot to understand the basic concepts of oracle apps.
    One thing I wanted to know.
    Could you please distinguish between sytem and personal profile functions.

    ReplyDelete
  99. Anonymous12:29 AM

    Hi anil,
    Your site is really a very informative site.As a beginner,it has helped me a lot to understand the basic concepts of oracle apps.
    One thing I wanted to know.
    Could you please distinguish between sytem and personal profile functions.

    ReplyDelete
  100. Anonymous2:37 PM

    Hi anil,
    Thnks for info/.. and I would like to know th profiles to be set for normally working in HRMS. I mean to ask the necessary profiles that has to be set by each and every prson that uses apps.

    SATYA

    ReplyDelete
  101. Anonymous5:11 AM

    Hi anil,
    in the profile option we write a sql query,
    i have seen a profile option for org_id which is as below:
    SELECT ORGANIZATION_ID, NAME
    INTO :PROFILE_OPTION_VALUE, :VISIBLE_OPTION_VALUE
    FROM HR_OPERATING_UNITS
    COLUMN="NAME(*)"

    can you tell me wat does COLUMN="NAME(*)" signify here because it is not in where condn and how does this query take the current org id.....?

    ReplyDelete
  102. good

    i want kff with screenshots

    ReplyDelete
  103. Anonymous3:41 AM

    Oh.. its nice
    At last I find it....

    ReplyDelete
  104. Excellent
    Very Good Effort....
    Its really helped me..

    ReplyDelete
  105. Excellent
    Very Good Effort....
    Its really helped me..

    ReplyDelete
  106. Hi Anil I hope you are doing fine!. I like your blogs man. Those are awesome.

    Dan

    ReplyDelete
  107. Anonymous1:39 AM

    Hi Anil ,

    I need a very urgent help. One of our Test instances has got cloned today from production and after that we are unable to get
    MO: OPERATING UNIT profile value. I was trying this code

    declare
    v1 varchar2(20);
    BEGIN
    mo_global.set_policy_context('S',81);
    select fnd_profile.VALUE ('ORG_ID') into v1 from dual;
    dbms_output.put_line('v1 '||v1);
    END;

    and it is not returning any value although all the setups are in place. This same query is fetching the desired value from other instances including Production. Is there any problem in the Cache?

    Thanks
    Amit

    ReplyDelete
  108. Sir,
    Your blog is very good.
    Can u tell me about fnd files.

    ReplyDelete
  109. Anonymous11:56 PM

    how can i update the profile of a customer?

    ReplyDelete
  110. Anonymous12:41 AM

    Hi Anil,

    It's excellent.

    Ranjith

    ReplyDelete
  111. You have given like a spoon feeding. Thanks a lot

    ReplyDelete
  112. This is a great site !!!

    Where can I find explanations on each profile option meaning ?
    The "Flexfields:Shorthand Entry" is not self explanatory and I assume there is an explanation somewhere...

    Thanks again on behalf of all the site visitors for the great job...
    Mike

    ReplyDelete
  113. thanks this is very easy way to understand

    ReplyDelete
  114. Anonymous2:18 AM

    sir this bolgs r reaaly helpfull..but as i am a fresher plz provide me some initial concepts...

    ReplyDelete
  115. Anonymous1:23 AM

    Hi Anil,

    Great Work.Can you suggest me in this case?

    Iam unable to see the SHIPMENTS (shipments tab is not woking) for the PO.Where can i get the profile name and what changes needs to do the fix?

    Thanks,
    Kishorbabu

    ReplyDelete
  116. Anonymous1:13 AM

    Hi,
    Just now i read profile options in ur traning.
    Its very nice...
    but i want to know more in depth about profile option.
    Please help me..
    thanks

    ReplyDelete
  117. This Question Might Be.
    very simple..
    i am a fresher to ERP..
    why do we use PROFILE option..
    and i understand the example given.

    ReplyDelete
  118. Anonymous12:41 PM

    Anil - Thank you very much for the valuable information.
    Could you please specify how to change the profile option to make debugging ON for a specific user? Thanks!

    ReplyDelete
  119. Sankar3:54 PM

    Hi Anil,
    It is very helpful to refer your articles whenever some help is needed than to search in some other places. Keep it up.
    Very Kind of You !!!!!

    ReplyDelete
  120. Sir ,

    I have just started my career in Oracle E-Biz Financials Functional , i am working as Support Consultant with a client side..Bt i want to be a consultant ..i have good knowledge of Financial Setups ,my question here is that how should i start my career path as as functional consultant,can u plz give me sme material which gives me the idea of steps involved in implementation of financials ,like in a sequence ,from fresh start ,fresh instance ..how nd from where a functional consultant starts implementation of apps in a fresh instance .if i ll get the steps it will be useful to me .

    Thanks
    Shahab

    ReplyDelete
  121. loksubhash2:50 AM

    Thanks for the article.. this gave good understanding of the concept even for starters like us

    ReplyDelete
  122. How to control the custom profile for that particular session in oracle application form.I am saving the profile value in new form instance then after the session is done i want it be as earlier or nukk

    ReplyDelete
  123. Hi Anil. am btech graduate presently taking training on oracle apps technical......ur blog is so helpful for me

    thanks a lot for wonderful blog on oracle apps for begginers


    regards

    ravikumar maram

    ur fan:)

    ReplyDelete
  124. hi anil am btech graduate presently taking training or oracle apps technical
    ur blog is so helpful for begginers like me

    thanks-alot

    regards
    ravi

    ReplyDelete
  125. Hi Anil
    You are really providing very valuble information in oracle ,I am saying my sincere thanks to you

    ReplyDelete
  126. Hi,

    Thanks for the info it is really easy to understand the concepts.......Girish

    ReplyDelete
  127. Anonymous2:34 AM

    Grate Job.

    Thnaks,
    Jothisan

    ReplyDelete
  128. could u give me another example in which take 3 users and when then login then they will see only that particular org details means set of books of that organization only

    ReplyDelete
  129. could u give me another example in which take 3 users and when then login then they will see only that particular org details means set of books of that organization only

    ReplyDelete
  130. hi,

    Could you please let me know which oracle table store value for :profile_values.visible_option_value in user profile screen at respponsibility level.

    Regards
    Kallol

    ReplyDelete
  131. Anonymous4:03 AM

    HI ANIL.I M A NEW USER...I M WORKING IN A MNC...AND FIRST TIME WORKING ON ORACLE APPS..THANKX THE WAY U WXPLAINED BUT I STIL FINDING IT A LITTLE BIT COMPLEX...CAN U EXPAIN THE FLOW WITH SIMPLY NAME AND ARROWS ONE AFTER THE OTHER...TOO..PLEASE

    ReplyDelete
  132. preetish10:01 PM

    Anil,

    The way stuff presented is clear and self explanatory incase of screen shots.

    Thanks for making things simple incase profile options explanation.

    Thanks
    Preetish

    ReplyDelete
  133. Hi Anil,
    Can we create custom profile values if yes please give me the navigations. Thanks in advance.
    Raju

    ReplyDelete
  134. Hi Anil,
    Can we create custom profile values in oracle apps if yes please give me the complete navigations. Thnaks in advance.
    /Raju

    ReplyDelete
  135. Anonymous4:25 AM

    hi anil,

    i wanted to view the output file of concurrent request run by some other user. here i'm able to see the logfile,but i wanted to see output file also.so tellme the profile options to set the above requirement.


    thanks
    mandava.

    ReplyDelete
  136. Anonymous7:40 AM

    Hi Anil,

    First thing is you are doing a great job sir.i felt so difficult while understanding these topics i want to be strong in basics. this site is helping a lot.

    Thanks
    Vani.

    ReplyDelete
  137. HiAnil,

    I am new to this, but I can understand very easily.Thanku Very Much.And I have small question regarding this profile options.How do I know, if I enter any discount value which is exceeded or not? Is there any option to know the Max Discount value.

    Thanks & Regards,
    Mani

    ReplyDelete
  138. Hi anil ,

    I need your help .My scenario is like in the manager self service of oracle HRMS SSHR screen ,There is a search option on which we can search anyone in the organisation .but in my case i want to assign manager responsibility who is a assistant of a CEO can able to raise travel request and other benefits of CEO ,and he can search only CEO not other employee of companyfor the security region .
    This can be possible in security profile and any other solution for that.

    ReplyDelete
  139. Anonymous2:23 PM

    Hi Anil,

    The concepts you have explained are so clear in this blog. I just got a question . I do have a profile option and it is having some values under it in LOV. What needs to be done for adding a new value to that profile option?

    ReplyDelete
  140. I would like to learn ORACLE , Can you say , are you providing the oracle training ?...

    ReplyDelete
  141. Anonymous3:24 AM

    Hi Anil,

    I am a fresher to Oracle Apps.I am not pretty clear about the mention on API.Could you pls help me out?

    Really good work and helping me a lot.Thanks well in advance.

    ReplyDelete
  142. why we are giving profile options in this what is the necessary and how it will work and what are the advantages of giving profile options

    ReplyDelete
  143. why we are giving profile options and what is the necessary and what are the advantages of giving profile options

    ReplyDelete
  144. while setting multi org we will give business group what is the necessary and why to set the organizations

    ReplyDelete