Skip to main content

Profile Options in Oracle Apps

 Profile Option in Oracle Apps


Profile Options provide flexibility to Oracle Apps. They are a key component of Oracle Applications.The profile option acts like a Global Variable in Oracle.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.

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 "XX Maximum Discount Allowed".
2. The short name of this profile option is "XX_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('XX_MAX_DISCOUNT') 
THEN
message( 
'You can’t give discount more than ' 
|| fnd_profile.value('XX_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 "XX Maximum Discount Allowed" to 5
For Sales Manager User(SMITH), set value of profile "XX Maximum Discount Allowed" to 15

Comments

Popular posts from this blog

Query to find concurrent programs associated to Responsibility - Oracle Apps R12

 Query to Find Programs associated to Responsibility SELECT frt.responsibility_name, frg.request_group_name,     frgu.request_unit_type,frgu.request_unit_id,     fcpt.user_concurrent_program_name     FROM fnd_Responsibility fr, fnd_responsibility_tl frt,     fnd_request_groups frg, fnd_request_group_units frgu,     fnd_concurrent_programs_tl fcpt     WHERE frt.responsibility_id = fr.responsibility_id     AND frg.request_group_id = fr.request_group_id     AND frgu.request_group_id = frg.request_group_id     AND fcpt.concurrent_program_id = frgu.request_unit_id     AND frt.LANGUAGE = USERENV('LANG')     AND fcpt.LANGUAGE = USERENV('LANG')     AND fcpt.user_concurrent_program_name = :conc_prg_name     ORDER BY 1,2,3,4

Query to find Open PO Periods - Oracle Apps R12

 Query to Find Open PO Periods for Month End Closure SELECT sob.name "Set of Books" ,   fnd.product_code "Product Code" ,   ps.PERIOD_NAME "Period Name" ,   ps.START_DATE "Period Start Date" ,   ps.END_DATE "Period End Date" ,   DECODE(ps.closing_status, 'O','O - Open' ,                             'N','N - Never Opened' ,                             'F','F - Future Enterable' ,                             'C','C - Closed' ,'Unknown') "Period Status" FROM gl_period_statuses ps ,   Apps.GL_SETS_OF_BOOKS sob ,   FND_APPLICATION_VL fnd WHERE ps.application_id      IN (201) -- 101 GL & 201 PO  AND sob.SET_OF_BOOKS_ID       = ps.SET_OF_BOOKS_ID AND fnd.application_id        = ps.appl...

Getting Started with Oracle Applications

  This document will explains about Oracle Apps login, Choosing Responsibility, Choosing Function / Opening Form, Switch Responsibility, Query Form and Keyboard Shortcuts. This chapter would tell a user about the basics of login to the Oracle Applications instance. It would also demonstrate the basics of working with Oracle Applications. To understand the complete functionality of a particular responsibility please refers to the respective User Guide. Oracle Applications Login Before you connect to Oracle Applications you must know the URL of the Oracle Applications server you want to connect to. Clicking on the URL would lead you to the Oracle Applications Login Page as shown in figure 1 below. Oracle Applications Login Page Choosing Responsibility To connect to the Oracle Applications, you must have an Oracle Apps login ID created by the System Administrator of the Oracle Applications instance.  Enter the appropriate Login ID and password and click login. If the login is suc...