FND Responsibility Upload
FND Responsibility Upload creates and updates Oracle E-Business Suite responsibilities directly from Excel, and maintains their menu and function exclusions – the same definitions you would otherwise enter one at a time in the System Administrator Responsibilities form. In a single template you can define new responsibilities (application, key, name, effective dates, data group, menu, request group and more) and, on separate rows, exclude specific menus or functions from those responsibilities. It is also a quick way to review existing responsibilities and their exclusions.
When to use it
- Create responsibilities in bulk – define many new responsibilities in one pass.
- Update responsibilities – change the name, description, menu, request group, data group or effective dates.
- Maintain menu and function exclusions – add or remove the menus and functions a responsibility must not access.
- Disable a responsibility – set an Effective Date To (responsibilities are never deleted).
- Download and review existing responsibilities and their exclusions without uploading any changes.
Before you start
- Blitz Report is installed and you are signed in to a responsibility with System Administrator level access (the one that opens the Responsibilities form).
- Any Application, Data Group, Menu, Request Group, function or menu you reference already exists – each value is validated against its list.
- You know each responsibility’s Key – the short internal identifier that is fixed once the responsibility has been created.
Step 1 – Open the upload and choose a mode
Run FND Responsibility Upload from the Blitz Report menu and choose an Upload Mode:
- Create – an empty template for defining brand-new responsibilities.
- Create, Update – downloads existing responsibilities (and their exclusions) so you can review or change them.
Each row is automatically treated as a create or an update by checking whether the responsibility (Application plus Responsibility Key) already exists – you do not set an action yourself.
Step 2 – Set the parameters and download the template
In Create, Update mode the parameters limit what is downloaded:
| Parameter | Purpose |
|---|---|
| Upload Mode | Create, or Create, Update (see Step 1). |
| Application | Restrict the download to responsibilities of one application. |
| Responsibility Name | Restrict the download to a single responsibility. |
Step 3 – Choose a Row Type
Every row has a Row Type that says what it defines:
- Responsibility – the row creates or updates a responsibility.
- Menu/Function Exclusion – the row adds or removes one menu or function exclusion for a responsibility.
Both row types start with the same two columns – Application and Responsibility Key – which identify the responsibility the row applies to. When you create a new responsibility and its exclusions in the same file, put the Responsibility row above its Menu/Function Exclusion rows so the responsibility exists before its exclusions are processed.
Step 4 – Define a responsibility (Responsibility rows)
On a Responsibility row, enter Application, Responsibility Key, Responsibility Name and an Effective Date From (required), plus the Data Group, Data Group Application and Menu. Available From defaults to Oracle Applications and can be switched to Oracle Self Service Web Applications or Oracle Mobile Applications. Optionally add a Description, an Effective Date To to disable the responsibility, a Request Group (with its Request Group Application), and Web Host / Web Agent Name. The Responsibility Key is fixed once created – to rename a responsibility, change its Name, not its Key.
Step 5 – Add or remove an exclusion (Menu/Function Exclusion rows)
On a Menu/Function Exclusion row, identify the responsibility with Application and Responsibility Key, then set Exclusion Type (Function or Menu) and Exclusion Name (the function or menu to exclude). Leave Exclude blank to add the exclusion; set Exclude to Yes to remove it. Adding an exclusion that already exists, or removing one that is not there, is reported as “No change.”
Step 6 – Validate and Save
Click Validate and Save. This checks for missing required values and runs any extra validation the upload defines, then saves the file. Correct anything it flags before continuing.
Step 7 – Upload and view the result
Back in Blitz Report, click Upload and select your saved file. This submits the Blitz Upload request, which processes each row independently. When it finishes, a result report opens showing each row as success or error with a message.
What’s produced
- New or updated responsibilities – including their translated name and description, data group, menu, request group and effective dates – and their menu and function exclusions.
- A result report listing every row with a status (success or error) and a message, for example “Responsibility created.”, “Responsibility updated.”, “No change.”, “Exclusion added.” or “Exclusion removed.”, so you can see which rows succeeded and why any failed.
Common questions
How do I rename a responsibility?
Change its Responsibility Name and keep the Responsibility Key the same. Editing the Key creates a different responsibility, because the Key is the stable identifier that never changes once a responsibility is created.
How do I disable a responsibility?
Set an Effective Date To. Responsibilities are not deleted by this upload, because they are referenced by users, concurrent requests and grants.
How do I exclude a menu or a function?
Add a Menu/Function Exclusion row for the responsibility, set Exclusion Type to Menu or Function and pick the Exclusion Name. To restore access later, set Exclude to Yes on the same exclusion.
Do the Responsibility row and its exclusions have to be in the same file?
No, but they can be. If you create a responsibility and its exclusions together, put the Responsibility row first so the responsibility exists before its exclusion rows are processed.
What is Data Group Application?
A responsibility’s Data Group has both a name (usually Standard) and an application whose database schema it uses. Choose the Data Group first; the Data Group Application list then shows the applications valid for that data group.
Do I need to fill in Request Group or Web Host / Agent Name?
No. Request Group is optional – if you use it, enter both the Request Group and its Application together. Web Host and Web Agent Name apply only to older self-service setups and are normally left blank.
Troubleshooting
| Message | Cause | What to do |
|---|---|---|
| Responsibility … does not exist. Enter the Responsibility row before its exclusions. | An exclusion row references a responsibility that does not exist yet. | Add the Responsibility row above it, or correct the Application / Responsibility Key. |
| Responsibility Name … already exists for this application. | Another responsibility in the same application already uses that name. | Choose a unique name, or update the existing responsibility instead. |
| Data Group Name and Data Group Application are required. / Menu is required. / Effective Date From is required. | A required field is missing when creating a responsibility. | Fill the flagged column, picking from the dropdowns. |
| Invalid Request Group / Request Group Application: … | The Request Group and Application together do not match a valid request group. | Pick the Request Group and its Application from the lists so they match, or clear both. |
| Exclusion Type and Exclusion Name are required for a Menu/Function Exclusion row. | An exclusion row is missing its type or its item. | Set Exclusion Type and pick an Exclusion Name. |
select null action_, null status_, null message_, null modified_columns_, x.row_type, x.application, x.responsibility_key, x.responsibility_name, x.description, x.effective_date_from, x.effective_date_to, x.available_from, x.data_group, x.data_group_application, x.menu, x.request_group, x.request_group_application, x.web_host_name, x.web_agent_name, x.exclusion_type, x.exclusion_name, x.exclude, row_number() over (order by decode(x.row_type,'Responsibility',1,2),x.application,x.responsibility_key) upload_row from ( select 'Responsibility' row_type, fav.application_name application, fr.responsibility_key, frt.responsibility_name, frt.description, fr.start_date effective_date_from, fr.end_date effective_date_to, decode(fr.version,'4','Oracle Applications','W','Oracle Self Service Web Applications','M','Oracle Mobile Applications') available_from, fdg.data_group_name data_group, fav_dg.application_name data_group_application, fmv.user_menu_name menu, frg.request_group_name request_group, fav_rg.application_name request_group_application, fr.web_host_name, fr.web_agent_name, to_char(null) exclusion_type, to_char(null) exclusion_name, to_char(null) exclude from fnd_responsibility fr, fnd_responsibility_tl frt, fnd_application_vl fav, fnd_data_groups_standard_view fdg, fnd_application_vl fav_dg, fnd_menus_vl fmv, fnd_request_groups frg, fnd_application_vl fav_rg where 1=1 and fr.application_id=fav.application_id and frt.responsibility_id=fr.responsibility_id and frt.application_id=fr.application_id and frt.language=userenv('lang') and fr.data_group_id=fdg.data_group_id and fr.data_group_application_id=fav_dg.application_id and fr.menu_id=fmv.menu_id and fr.request_group_id=frg.request_group_id(+) and fr.group_application_id=frg.application_id(+) and frg.application_id=fav_rg.application_id(+) union all select 'Menu/Function Exclusion' row_type, fav.application_name application, fr.responsibility_key, to_char(null) responsibility_name, to_char(null) description, to_date(null) effective_date_from, to_date(null) effective_date_to, to_char(null) available_from, to_char(null) data_group, to_char(null) data_group_application, to_char(null) menu, to_char(null) request_group, to_char(null) request_group_application, to_char(null) web_host_name, to_char(null) web_agent_name, xxen_util.meaning(rf.rule_type,'FND_RESP_FUNC_RULE_TYPE',0) exclusion_type, case rf.rule_type when 'F' then (select fffv.user_function_name from fnd_form_functions_vl fffv where fffv.function_id=rf.action_id) when 'M' then (select fmv.user_menu_name from fnd_menus_vl fmv where fmv.menu_id=rf.action_id) end exclusion_name, to_char(null) exclude from fnd_resp_functions rf, fnd_responsibility fr, fnd_responsibility_tl frt, fnd_application_vl fav where 2=2 and rf.application_id=fr.application_id and rf.responsibility_id=fr.responsibility_id and frt.responsibility_id=fr.responsibility_id and frt.application_id=fr.application_id and frt.language=userenv('lang') and fr.application_id=fav.application_id ) x |
| Parameter Name | SQL text | Validation | |
|---|---|---|---|
| Upload Mode |
| LOV | |
| Application |
| LOV | |
| Responsibility Name |
| LOV |