Integrated Document Solutions
for Business Applications

Sort Posts

Get Fresh Updates

Home / Blog / Current Page

Submitting a Concurrent Request Outside of Oracle EBS as User Other Than APPS

Posted on by Brent Lowe

Fairly short blurb today but I found it helpful so I thought I would pass it along. I posted a couple of weeks ago on the ability to Submit a Concurrent Request Outside of Oracle EBS. Following in the same vein, I had a requirement to submit a concurrent request as a database user other than apps. This of course involves granting the specific user permissions to run a concurrent request.

I found a note (822225.1) on My Oracle Support that explained the specific grants/synonyms necessary for running fnd_global.apps_initialize as a user other than apps, but unfortunately could not find a similar note for running fnd_request.submit_request().

So, I dug in my heels and started examining the code and came up with the following grants/synonyms that need to be created. Note that these statements also include those grants/synonyms in the note mentioned above and apply to 11.5.10.

As apps you must run the following grants for the database user that needs the ability to run Concurrent Requests.

grant execute on fnd_request to __user__;
grant select on fnd_concurrent_programs_vl to __user__;
grant select on fnd_application_vl to __user__;
grant select on fnd_user to __user__;
grant execute on fnd_global to __user__;
grant select on fnd_responsibility_vl to __user__;
grant execute on fnd_core_log to __user__;
grant execute on fnd_client_info to __user__;
grant execute on fnd_profile to __user__;
grant execute on fnd_message to __user__;
grant execute on app_exception to __user__;
grant execute on fnd_log_repository to __user__;
grant execute on fnd_log to __user__;
grant execute on hr_signon to __user__;
grant execute on jg_context to __user__;
grant select on fnd_languages to __user__;
grant select on fnd_application to __user__;
grant select on fnd_lookup_types to __user__;
grant select on fnd_product_groups to __user__;
grant select on fnd_profile_options_vl to __user__;
grant select on fnd_new_messages to __user__;
grant select on fnd_data_group_units to __user__;
grant select on fnd_oracle_userid to __user__;
grant select on fnd_product_groups to __user__;
grant select on fnd_product_initialization to __user__;
grant select on fnd_product_init_condition to __user__;
grant select on fnd_product_init_dependency to __user__;
grant select on fnd_product_installations to __user__;
grant select on fnd_profile_options to __user__;
grant select on fnd_profile_option_values to __user__;
grant select on fnd_security_groups_vl to __user__;
grant select on fnd_user_resp_groups to __user__;
grant select on icx_parameters to __user__;
grant select on fnd_cache_versions to __user__;
grant all on fnd_log_messages to __user__;
grant select on fnd_printer to __user__;
grant execute on fnd_conc_date to __user__;
grant select on Fnd_Printer_styles to __user__;
grant select on Fnd_Printer_Information to __user__;
grant select on Fnd_Concurrent_Requests_S to __user__;
grant insert on Fnd_Conc_Deferred_Arguments to __user__;
grant select on Fnd_Concurrent_Programs to __user__;
grant select, insert on Fnd_Logins to __user__;
grant select, insert on fnd_conc_release_classes to __user__;
grant execute on fnd_conc_release_class_utils to __user__;
grant select, insert, update on fnd_concurrent_requests to __user__;
grant execute on fnd_print to __user__;
grant select, insert on fnd_conc_pp_actions to __user__;
grant select on Fnd_Data_Groups to __user__;
grant select on Fnd_Responsibility to __user__;
grant select on Fnd_Logins_S to __user__;
grant execute on fndcp_crm to __user__;
grant select on FND_CONC_RELEASE_CLASSES_S to __user__;
grant insert on Fnd_Conc_Request_Arguments to __user__;
grant execute on FND_CONC_PP to __user__;
grant insert on Fnd_Conc_Release_Classes_TL to __user__;
grant execute on FND_RT_REQUEST to __user__;
grant select on Fnd_Request_Set_Programs to __user__;
grant insert, select on FND_RT_REQUESTS to __user__;
grant select on nls_session_parameters to __user__;
grant execute on fnd_dflex to __user__;
grant select, insert on fnd_conflicts_domain to __user__;
grant select on fnd_conflicts_domain_s to __user__;
grant select, insert on fnd_conc_pp_actions to __user__;
grant select on fnd_application_tl to __user__;
grant select on FND_EXECUTABLES to __user__;
grant select on fnd_descriptive_flexs_vl to __user__;
grant select on fnd_descr_flex_contexts_vl to __user__;
grant execute on FND_CONC_GLOBAL to __user__;

As the user that you want to be able run a Concurrent Request as, you must create the following synonyms.

create synonym fnd_request for apps.fnd_request;
create synonym fnd_concurrent_programs_vl for apps.fnd_concurrent_programs_vl;
create synonym fnd_application_vl for apps.fnd_application_vl;
create synonym fnd_user for apps.fnd_user;
create synonym fnd_global for apps.fnd_global;
create synonym fnd_responsibility_vl for apps.fnd_responsibility_vl;
create synonym fnd_core_log for apps.fnd_core_log;
create synonym fnd_client_info for apps.fnd_client_info;
create synonym fnd_profile for apps.fnd_profile;
create synonym fnd_message for apps.fnd_message;
create synonym app_exception for apps.app_exception;
create synonym fnd_log_repository for apps.fnd_log_repository;
create synonym fnd_log for apps.fnd_log;
create synonym hr_signon for apps.hr_signon;
create synonym jg_context for apps.jg_context;
create synonym fnd_languages for apps.fnd_languages;
create synonym fnd_application for apps.fnd_application;
create synonym fnd_lookup_types for apps.fnd_lookup_types;
create synonym fnd_product_groups for apps.fnd_product_groups;
create synonym fnd_profile_options_vl for apps.fnd_profile_options_vl;
create synonym fnd_new_messages for apps.fnd_new_messages;
create synonym fnd_data_group_units for apps.fnd_data_group_units;
create synonym fnd_oracle_userid for apps.fnd_oracle_userid;
create synonym fnd_product_groups for apps.fnd_product_groups;
create synonym fnd_product_initialization for apps.fnd_product_initialization;
create synonym fnd_product_init_condition for apps.fnd_product_init_condition;
create synonym fnd_product_init_dependency for apps.fnd_product_init_dependency;
create synonym fnd_product_installations for apps.fnd_product_installations;
create synonym fnd_profile_options for apps.fnd_profile_options;
create synonym fnd_profile_option_values for apps.fnd_profile_option_values;
create synonym fnd_security_groups_vl for apps.fnd_security_groups_vl;
create synonym fnd_user_resp_groups for apps.fnd_user_resp_groups;
create synonym icx_parameters for apps.icx_parameters;
create synonym fnd_log_messages for apps.fnd_log_messages;
create synonym fnd_cache_versions for apps.fnd_cache_versions;
create synonym fnd_printer for apps.fnd_printer;
create synonym Fnd_Printer_styles for apps.Fnd_Printer_styles;
create synonym Fnd_Printer_Information for apps.Fnd_Printer_Information;
create synonym Fnd_Concurrent_Requests_S for apps.Fnd_Concurrent_Requests_S;
create synonym Fnd_Conc_Deferred_Arguments for apps.Fnd_Conc_Deferred_Arguments;
create synonym Fnd_Concurrent_Programs for apps.Fnd_Concurrent_Programs;
create synonym Fnd_Logins for apps.Fnd_Logins;
create synonym fnd_conc_date for apps.fnd_conc_date;
create synonym fnd_conc_release_classes for apps.fnd_conc_release_classes;
create synonym fnd_conc_release_class_utils for apps.fnd_conc_release_class_utils;
create synonym fnd_concurrent_requests for apps.fnd_concurrent_requests;
create synonym fnd_print for apps.fnd_print;
create synonym fnd_conc_pp_actions for apps.fnd_conc_pp_actions;
create synonym Fnd_Data_Groups for apps.Fnd_Data_Groups;
create synonym Fnd_Responsibility for apps.Fnd_Responsibility;
create synonym Fnd_Logins_S for apps.Fnd_Logins_S;
create synonym fndcp_crm for apps.fndcp_crm;
create synonym FND_CONC_RELEASE_CLASSES_S for apps.FND_CONC_RELEASE_CLASSES_S;
create synonym Fnd_Conc_Request_Arguments for apps.Fnd_Conc_Request_Arguments;
create synonym FND_CONC_PP for apps.FND_CONC_PP;
create synonym Fnd_Conc_Release_Classes_TL for apps.Fnd_Conc_Release_Classes_TL;
create synonym FND_RT_REQUEST for apps.FND_RT_REQUEST;
create synonym Fnd_Request_Set_Programs for apps.Fnd_Request_Set_Programs;
create synonym FND_RT_REQUESTS for apps.FND_RT_REQUESTS;
create synonym nls_session_parameters for apps.nls_session_parameters;
create synonym fnd_dflex for apps.fnd_dflex;
create synonym fnd_conflicts_domain for apps.fnd_conflicts_domain;
create synonym fnd_conflicts_domain_s for apps.fnd_conflicts_domain_s;
create synonym fnd_application_tl for apps.fnd_application_tl;
create synonym FND_EXECUTABLES for apps.FND_EXECUTABLES;
create synonym fnd_descriptive_flexs_vl for apps.fnd_descriptive_flexs_vl;
create synonym fnd_descr_flex_contexts_vl for apps.fnd_descr_flex_contexts_vl;
create synonym FND_CONC_GLOBAL for apps.FND_CONC_GLOBAL;

Just remember, you have really opened up quite a few grants for your user, ensure you are comfortable with this prior to continuing.

Hope this can help someone, I know that I was looking for it when I started down this path.


Share This



3 Responses to Submitting a Concurrent Request Outside of Oracle EBS as User Other Than APPS

  1. Hi Brent,

    Great post! I’m sure someone will find it handy.

    Regards,
    Gareth

  2. Steve Pettit says:

    Hi Brent,

    We had this working in 11i for the last few years. Now we are moving to R12 and R12 appears to require some additional grants. Anybody spent the time to figure that out yet?

    Thanks

    Steve

    • Brent Lowe says:

      Hi Steve, I ran into the same problem and it turned out to be a huge hassle trying to figure everything out. I believe that I did finally get everything that I needed, but I ended up going a different route in the end so I didn’t have to maintain so many grants/synonyms. Instead, I created a package that called fnd_request and installed it as apps. Because of DEFINER rights, whenever the package functions are called, apps is the one that is running fnd_request and already has all of the grants it needs. This is not outside the norm, in fact, Oracle endorses this setup. See Metalink Note 70276.1 section 9c. Hope this helps, I’ll see if I can dig up the grants that I was using as well for R12 before I changed my strategy.

Leave a Reply to Steve Pettit Cancel reply

Your email address will not be published. Required fields are marked *