Recently upgraded from Oracle Applications (apps) version 11.5.10 (11i) to 12.1.3. (R12). You observed that your concurrent programs not working, you are not able to see any value in some of the parameters of concurrent programs?
Is anything wrong with Upgrade? No. There is nothing wrong with the upgrade.
Oracle E-Business suite introduced MOAC (Multi-Organization Access Control) feature in release 12.1.3. That is the main reason the parameter not showing any values.
Let’s see MOAC and its impact on concurrent programs and value sets.
MOAC (Multi-Organization Access Control) – impact on concurrent programs and value sets
MOAC feature in Oracle Apps R12 allows a user to access data from multiple operating units with a single responsibility. The security profile is defined with the list of Operating Units. This profile is then attached to responsibility.
A security policy is attached to a synonym of the table which restricts access to respective data on the basis of the operating unit. If you are using these synonyms in the value set of the concurrent program, it will not return any data, unless the operating unit mode parameter is set.
Oracle introduced a parameter operating unit mode in the definition of the concurrent program to support the MOAC (Multi-Organization Access Control) feature.
Check the below screenshot for the difference in the submit request window. You can clearly see the additional field Operating Unit in Oracle Apps R12.
Submit request form in Oracle Apps 11i
Submit request form in Oracle Apps R12
Operating Unit Mode Values,
S – Single Org
When you set the operating unit mode value to S, the operating unit field gets enabled while submitting a concurrent program. You need to select the respective operating unit from the drop-down list.
M – Multi-Org
When you set it to M, the operating unit field remains to disable and Oracle will run the concurrent program for operating units which are specified in the security profile.
Set operating unit mode parameter
Let’s see how to set the operating unit mode parameter from the front end.
Navigate to System Administrator Responsibility and then System Administration > Concurrent Programs.
Note: This is not available under the standard form to define the concurrent program available in Application Developer Responsibility.
It opens an OAF page showing the definition of the concurrent program. Query your concurrent program and edit it.
Navigate to the request tab and update the Operating Unit Mode to ‘S’ or ‘M’ depending on your requirement.
Script to update operating unit mode
The major task is to identify the programs which are using the value set based on a secure synonym and update it during an upgrade. It is difficult considering the time and number of programs. You can update the value to ‘S’ for all the custom programs using fnd_concurrent_programs_pkg.update_row API.
Generally custom concurrent programs start with the prefix XX in Oracle Applications. So you can also use a script to update the operating unit mode.
UPDATE fnd_concurrent_programs fcp SET multi_org_category = 'S', last_updated_by = -1, last_update_date = SYSDATE WHERE concurrent_program_name LIKE 'XX%' AND multi_org_category IS NULL AND enabled_flag = 'Y'
I hope you find this article helpful, do let me know in the comments section below.
Reference – Overview of Multiple Organizations Reporting