Category Archives: SysAdmin

Differences between HR:Security Profile & MO:Security Profile

HR:Security Profile and MO:Security Profile are used for MOAC (Multi-Org-Access-Control).
HR:Security Profile is used to restrict the data in Human Resources according to the Business Group or whatever criteria you define in this security profile. Thus, for HR, it uses this secuity profile in its data exposure to the user.
MO:Security Profile acts the same but is used for Financials and Manufacturing applications. It restricts the access (site level or can be set at responsibility level) to certain operating unit (or whatever criteria defined in the security profile).
If there is no value at MO:Security Profile, then Financials and Manufacturing use the HR:Security Profile option for their data exposure to users.

Adding a New Operating Unit


The following steps are required to add new operating units to your organizational structure:
1.1 Revise the Organization Structure.
1.2 Define Sets of Books (optional).
1.3 Define Locations.
1.4. Define Organizations and Relationships.

2.1 Define Responsibilities.
2.2 Set Profile Options for Each Responsibility linked to the new Operating Unit.
1.1. HR: Business Group
1.2  HR: Security Option
1.3: HR: User Type (FOR accessing HRMS functions)
1.4  HR: Cross Business Group
2.1. GL: Set of Books(11i)
2.1  GL:%Ledger%  (R12)
2.3  GL: Data Access Set. This profile option to control the ledgers that can be used by Oracle General Ledger.
3.1. MO: Operating Unit
3.2. MO: Security Profile (R12)
3.3. MO: Default Operating Unit
4.1 Tax: Allow Override of Tax Code
4.2 Tax: Invoice Freight as Revenue
4.3 Tax: Inventory Item for Freight
5.1 Sequential Numbering
5.2 INV: Intercompany Currency Conversion
2.3 Run the Replicate Seed Data concurrent program.

3.1 Define Inventory Organization Security.
3.2 Define Intercompany Relations (optional).
3.3 Implement the Application Products.

4.1 Secure Balancing Segment Values (optional).
4.2 Run the Setup Validation Report (recommended).
4.3 Implement Document Sequencing (optional).
4.4 Set the top reporting level (optional).
4.5 Set up conflict domains (optional).

Script to Initiatialize Application Context

v_user_id      NUMBER;
v_resp_id      NUMBER;
v_resp_appl_id NUMBER;
SELECT a.user_id,
INTO v_user_id,
fnd_user b,
WHERE a.user_id        =b.user_id
AND a.responsibility_id=c.responsibility_id
AND b.user_name        =    ‘&User_Name’
AND c.responsibility_name =    ‘&Responsibility_Name’;
fnd_global.APPS_INITIALIZE (v_user_id, v_resp_id, v_resp_appl_id);

Error 1004 from Oracle ADI (Application Desktop Integration)

After installing Oracle ADI (Application Desktop Integration),  we met the error 1004 during generating journal template.

In fact, it is not the error message from ADI, but Excel. You need to go to Tools > Options > Security, click the macro button, then check both two check-boxes.

TroubleShooting Installation Oracle Jinitiator (ISSET_SE, IMSCUI.DLL)

This is the first time I met problem during installing oajinit.exe (Some modern client setup don’t need to install oajinit, but nature JRE). Generally, it is automatically installed when you log into Oracle professional forms at first time. But this time, I met the problem like below whatever I choose to install it automatically or manually.

ISSET_SE makes access error on IMSCUI.DLL address 0x44763f90? What’s this? I can’t click any button whatever Closing, Cancel, Ignore.

Trying for some times with failure, I searched the metalink again. It says it is an authorization issue and need administrator authorization. I changed to the local admin account, then it is ok – no errors.

If you need any more details, go to metalink 166219.1 Trouble Shooting on installation Jinitiator on Win2000.

Please also note that my OS is Windows XP (WinXP), but I met the problem again.

By the way, yesterday, when I’m free, I also search this error on Google. Somebody says that it is because of Microsoft Pinyin 2010. It is indeed occurred after I installing the Microsoft Pinyin 2010. I also ever doubt about it and un-install it.

How to Set up AP Invoice Voucher Number Sequence by Operating Unit (OU)

Maybe you have known that, by Oracle default setup, we can’t use the separate sequence for AP invoice voucher number by Operating Unit (OU) while we can only share one sequence for each type of AP invoice in one set of books (SOB). These days, I’m considering this flexibility and find out a way to set up the separate sequence for AP invoice voucher number by specific operating unit (OU) like below.

1. Mark the check box of “Allow Document Category Override” in payables options, invoice tab

2. Set up Document Category for the specific OU

3. Define the sequence for the OU 

4. Assign the sequence (of step 3) to the category (of step 2)

5. Make the field “Document Category Name” to mandatory by Form Personalization Feature

6. To make the system not to auto default the document category, inactive the default category sequence assignment

View GhostScript Files and Search the Text in it

Some old reports are still in GhostScript format. Generally, most users just need to view it on the screen. Then you need to

1. Download the Ghostscript from, current version is 9.71
2. Download the user-friendly interface software GSViewer from, current version is 4.9.
3. Install the Ghostscript
4. Install the GSViewer

But for some advanced users may need to search the text in the GSViewer, then the software itself can’t fulfill their requirement. You need to do more,

5. Download the PDFCreater from, current version is 0.9.9
6. Install the above software, note that you must install with full version option but not to install Yahoo toolbar if you needn’t
7. Open the .ps file with GSView 4.9, print it with with PDFCreator and postscript option, like below screenshot

8. Open the PDF file with Adobe Reader, then you can search the text in the Adobe Reader. You can also print some specific pages or do something else with Adobe features.

Query a Specific User’s Authorized Concurrent Requests

Somebody always asked that if I have this report, which responsibility I can run this report in, what I can do in the system, etc. There’s no a separate form to show you these question. I prepared a simple report to answer these questions by SQL Developer and export it to an XML file. If it is helpful for your works, feel free to download, extract it and import to your SQL developer.

Download: User’s Requests

To import the xml file, from here!

Reference:  The previous post “Oracle SQL Developer Report“.

Search All of The Profile Option Setup on Different Level

Sometimes you need to know who (users or reponsibilities) have the overided profile option for having speicific authority. We can’t get it from front-end but can get it from below SQL script.

SELECT a.profile_option_id,
DECODE(c.level_id,10001,’Site’,10003,’Responsibility’,10004,’User’,10002, ‘Application’,’Other’) AS “PROFILE_LEVEL”,
DECODE(c.level_id,10001,’Site’,10003,(SELECT r.responsibility_name FROM fnd_responsibility_tl r WHERE r.responsibility_id=c.level_value AND r.language=’US’),10004,(SELECT u.user_name FROM fnd_user u WHERE u.user_id=c.level_value),1002,(SELECT d.application_name FROM fnd_application_tl d WHERE d.application_id=c.level_value),’Others’) as “LEVEL_VALUE”, c.profile_option_value
FROM fnd_profile_options a,
fnd_profile_options_tl b,
fnd_profile_option_values c
WHERE a.profile_option_id=c.profile_option_id
AND a.profile_option_name=b.profile_option_name
AND b.language =’US’
AND b.user_profile_option_name LIKE ‘&Profile’;