🔍 Top 25 Oracle Apps Technical Interview Questions with Answers
Looking to crack your next Oracle Apps technical interview? This guide covers 25 of the most frequently asked questions along with detailed explanations to help you understand core Oracle concepts, tools, and best practices. Whether you're preparing for a developer, consultant, or support role, these Q&As will give you the edge you need.
1. How to use WHO columns in RDF reports?
WHO columns are standard audit columns: CREATED_BY
, CREATION_DATE
, LAST_UPDATED_BY
, LAST_UPDATE_DATE
, and LAST_UPDATE_LOGIN
. In RDF reports, you should add these columns to the SELECT statement and populate them using user exits like FND_SRWINIT
and FND_GLOBAL.USER_ID
.
2. What are user exits in Oracle Apps?
User exits are used in Oracle Reports to access AOL (Application Object Library) features. Common ones:
-
FND_SRWINIT
– Initializes AOL context -
FND_USEREXIT
– Calls other exits -
FND_FORMAT_CURRENCY
,FND_STANDARD_DATE
– Format utilities
3. What is PRAGMA AUTONOMOUS_TRANSACTION?
This allows a PL/SQL block to perform a transaction (commit/rollback) independently of the main transaction. Useful for logging or auditing.
PRAGMA AUTONOMOUS_TRANSACTION;
4. What is BULK COLLECT?
BULK COLLECT
allows fetching multiple rows into PL/SQL collections in a single context switch, improving performance.
SELECT empno, ename BULK COLLECT INTO l_empnos, l_names FROM emp;
5. Error handling in BULK COLLECT
Use SAVE EXCEPTIONS
in combination with FORALL
to continue processing even if some DML operations fail. Capture errors using SQL%BULK_EXCEPTIONS
.
6. Dynamic logo in XML Publisher
Use a FORM-FIELD
placeholder in the RTF template and pass the image path as a concurrent program parameter. Use url:
prefix for dynamic URL.
<?xdofx: url:{LOGO_URL}?>
7. Multilanguage XML Reports
Use XLIFF
or translation templates in BI Publisher. Upload different RTFs for each language or use conditional statements in RTF for dynamic labels.
8. Difference between Alerts and Triggers
-
Alerts are Oracle Workflow-based notifications that run periodically.
-
Triggers are DB-level code that fires automatically on DML actions.
9. How to use WHO columns in Oracle Forms
Assign WHO columns using fnd_standard.set_who
in WHEN-NEW-FORM-INSTANCE
trigger. This populates audit columns automatically.
10. Difference between Procedure and Function
-
Procedure: Does not return a value directly; used for DML.
-
Function: Must return a value; often used in SQL queries.
11. What is Bursting in XML Publisher?
Bursting lets you split a report output and deliver it to multiple recipients or destinations (email, printer, etc.) based on control XML.
12. Triggers in XML Publisher
Not DB triggers. Refers to logic in Data Template like beforeReport
, afterReport
, beforeData
, afterData
, etc.
13. Sequence of Trigger Firing in RDF Reports
-
Before Parameter Form
-
After Parameter Form
-
Before Report
-
Between Pages
-
After Report
14. Tables in O2C and P2P Cycle
The Order to Cash (O2C) cycle refers to the end-to-end process of receiving and fulfilling customer orders, from order entry to cash receipt. The Procure to Pay (P2P) cycle involves acquiring goods and services from suppliers and making payments.
-
O2C: OE_ORDER_HEADERS_ALL, OE_ORDER_LINES_ALL, AR_INVOICE_HEADERS_ALL
-
P2P: PO_HEADERS_ALL, PO_LINES_ALL, AP_INVOICES_ALL, AP_SUPPLIERS
-
O2C: OE_ORDER_HEADERS_ALL, OE_ORDER_LINES_ALL, AR_INVOICE_HEADERS_ALL
-
P2P: PO_HEADERS_ALL, PO_LINES_ALL, AP_INVOICES_ALL, AP_SUPPLIERS
15. How to find Requisition related to PO
Join PO_HEADERS_ALL → PO_REQ_DISTRIBUTIONS_ALL → REQUISITION_HEADERS_ALL using REQUISITION_LINE_ID
.
16. Form Personalization vs Customization
-
Personalization: Using Oracle Forms personalization for UI changes without coding.
-
Customization: Changing the form itself using Forms Developer.
17. Conversion vs Interface
-
Conversion: One-time data load.
-
Interface: Repeated data movement via interface tables.
18. UNION vs UNION ALL
-
UNION
: Removes duplicates. -
UNION ALL
: Keeps all rows including duplicates.
19. 2-Way, 3-Way, 4-Way Matching
-
2-Way: PO vs Invoice
-
3-Way: PO vs Invoice vs Receipt
-
4-Way: Adds inspection
20. Types of Purchase Orders (POs)
-
Standard PO
-
Planned PO
-
Blanket PO
-
Contract PO
21. What is Drop Shipment?
A sales order where the item is shipped directly from supplier to customer without going through inventory.
22. What is IR/ISO?
-
IR: Internal Requisition
-
ISO: Internal Sales Order Used for transferring items between inventory organizations.
23. TCA Architecture
Trading Community Architecture standardizes customer, supplier, and partner data. Key tables:
-
HZ_PARTIES
-
HZ_CUST_ACCOUNTS
-
HZ_LOCATIONS
24. Mandatory Parameters for Standard API Calls
-
p_api_version
-
p_init_msg_list
-
p_commit
-
x_return_status
-
x_msg_count
-
x_msg_data
Use FND_MSG_PUB
to retrieve messages.
Example Usage:
BEGIN
hr_employee_api.create_employee (
p_api_version => 1.0,
p_init_msg_list => FND_API.G_TRUE,
p_commit => FND_API.G_FALSE,
p_validation_level => FND_API.G_VALID_LEVEL_FULL,
x_return_status => l_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data
);
IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
FND_MSG_PUB.GET (l_msg_count, l_msg_data);
DBMS_OUTPUT.put_line('Error: ' || l_msg_data);
END IF;
END;
-
p_api_version
-
p_init_msg_list
-
p_commit
-
x_return_status
-
x_msg_count
-
x_msg_data
Use FND_MSG_PUB
to retrieve messages.
Would you like these turned into a PDF download or posted individually for SEO benefit?