AR Interview Questions – Technical and Functional



A part of AR ( Account Receivables ) Interview Questions – Technical & Functional. This is next part. do share your feedback and thoughts


Conversion is a process by which we transfer legacy data from temporary tables to base tables. Interfaces also does the same but is a daily process and most of the interfaces are automated by scheduling. Example:AutoInvoice. Conversition is on time process this is before instlation, and interface every time process we can run any time.Conversion is a process by which we transfer legacy data from temporary tables to base tables. Interfaces also does the same but is a daily process and most of the interfaces are automated by scheduling. Example:AutoInvoice. Conversition is on time process this is before instlation, and interface every time process we can run any time.




How many reporting currencies can be attached to Primary Set of Books?   



We can have a total of 8 SOB’s (including the Primary SOB). Therefore, we can have 7 Reporting SOB.




What are Different types of transactions in AR?

There are 7 type of transactions in AR-






Guarenty, and

Bills Recivable.

What is the use of lockboxes?
AutoLockbox (or Lockbox) is a service that commercial banks offer corporate customers to enable them to outsource their accounts receivable payment processing. An AutoLockbox operation can process millions of transactions a month. AutoLockbox eliminates manual data entry by automatically processing receipts that are sent directly to your bank. You specify how you want this information transmitted and Receivables ensures that the data is valid before creating QuickCash receipt batches.
Steps for lock box are :

1. The first step involves reading and formatting data from your bank file into AutoLockbox tables.

2. The second step involves submitting the validation program which checks data in the AutoLockbox tables for compatibility with Receivables.

3. Once data is validated, it is transferred into QuickCash tables. At this point, you can optionally query your receipts in the QuickCash window and change how they will be applied before submitting the final step,

4. Post QuickCash. Submitting Post QuickCash updates your customer’s balances.

What are the interface tables used for ar invoices, customers, receipts for conversion process?
Customer interface tables:







Invoice interface tables:




Following are the Validation for Autoinvoice:







1- AR Transaction Type Validation : Check if the Transaction type provided in data file is defined in AR transaction types(RA_CUST_TRX_TYPES_ALL)






















2- Transaction Batch Source Validation: Check if the source provided in data file is defined in AR transaction Batch source (RA_BATCH_SOURCES_ALL).

3- Invoice Currency Validation: Check if the currency provided in data file is defined in AR Currency (FND_CURRENCIES).

4- Customer Validation: Check if the Bill to Customer Number, Ship to Customer Number, Bill to Custom Location, Ship to Customer Location provided in the data file is defined in AR Customer(ra_customers).

5- Primary Sales Representative Validation: Sales representative number to be hardcode to “-3” for “No Sales Credit.”

6- Term Name : Check if the Term name provided in the data file is defined in Payment terms (RA_TERMS)

7- Validate Sales Credit Type : Sales Credit to hardcode to “Quota Sales Credit”

8- Inventory Item Validation: Check if the Item provided in data file is defined in Inventory Items (MTL_SYSTEM_ITEMS).

9- Unit of Measurement validation: Check if the UOM provided is defined in MTL_UNITS_OF_MEASURE Table

10- Invoice Tax Code Validation : Check if the Tax Code provided in data file is defined in AR_VAT_TAX_ALL_B Table.

11- Invoice GL Date Validation : Check if the GL Data of provided invoices is in open period.Used ARP_UTIL.IS_GL_DATE_VALID API to validate.

Following are the base tableshz_parties










What is Auto Invoicing? Explain?
Auto Invoicing is a process of Importing Invoice related information from External / Internal Sources.External will be your business Legacy Systems like Main Frame / AS400 or Non Oracle ERP systems like SAP / JDE or From Custom Oracle Applications. The data is placed into Interface tables and from there either from Application or from PL/SQL , you can call Auto Invoice Concurrent request to validate and transfer data into AR Transaction tables. The data from these tables can be seen when queries from Transaction Screens. Auto Invoicing is a process of creating an invoice automatically in AR when a sales order has been shipped and closed. This process is triggered by a concurrent request ‘AUTO INVOICE MASTER PROGRAM’. Auto invoicing is used to import the AR invoices direclty into the AR module.



What is AUTO Accounting what are the steps for setting up auto accounting?
Auto Accounting is a mechnism for generating defualt accounting flexfields for revenue , receivables, frieght and tax based on the other parameters associated with the invoice you are entering.. since auto accounting looks at the following tables to get the data so please set/define the following depending upon your requirement.



2.Transaction Types.

3.Standard Lines.


5.Customer bill-to-site

Receivables uses the Auto Accounting rules to determine the GL Accounts that you Enter manually or import using Auto invoice. Receivables creates the Default accounts for the Receivable, revenue, Freight, Tax, Unerned revenue, Finance charges, Unbilled receivables, Bills receivables, and Auto invoice Clearing Accoutns.You need to define these accoutns before you start entering the transactions in AR. However, you can overide these accounts during the Transaction Entry in AR.Setup Autoaccounting:AR>Setup>Transactions>AutoAccountingSelect the Type of the accoutn you wish to define the auto accoutning.In the Segments Block:Choose the segment for which you wish to assign the Auto accounting.Choose the Table Name : Sales Rep, Trxn Type, Site, Std Lines.If you wish to use a Default Constant value, then enter the value in the Constant Field.

What are the standard concurent programs for auto invoice interface and customer interfaces?
Autoinvoice Import Program — for auto invoice program


Customer Interface Master Conc Program –> for Customer Interface

AR Complete Cycle (hoping that GL is already implemented)Define Transaction SetupsDefine Receipt and Receipt Application SetupsDefine CustomerCreate an InvoiceCreate a ReceiptApply Receipt to InvoiceReview Customer balances (Collections). The BASIC process of Receivables involves the following:
1. Creation of Customer Invoices.



3. Remittance fo the same to the bank.
How do we segregate debit & credit transactions in Receivables and where we will do it?


Basically the debit and credit transaction are classified by the transaction class.

Whether we are defining customer in AR? If it is in AR then how are we placing the order and how the shipment will be done?

Customers and the associated information is stored in TCA structure, which is shared across All oracle application modules. If you add a customer in AR, it gets stored TCA underlying tables. When you want to create an Order in Order Management, the customer LOV displays data from Record Group that is created on TCA tables.

The basic Oracle ERP data model is the single Data model shared (integrated) by multiple application. The owner of the creation of customer is the AR schema and is shared by other application such as OM. These are usually called as shared entities (Supplier,Partners,Items etc)

How To Close Periods In AR?
After raising transactions and receiving the RECEIPT amount, transfer the all TRANSATIONS and RECEIPTS to the GENERAL LEDGER. And then only close the PERIOD in AR.




Explain about Party and Customer in AR?

Party could be a person or an organization which has no business relation with your entreprise, if you establish a sales relation with a department in a party then that particular department is your customer.









     Thanks – Shivmohan Purohit
























2. Making the receipts of the customer payments.





Explain the process of recievables in oracle financials?

















































AutoInvoice Program Overview in Oracle Applications – Receivables

AutoInvoice Program Overview in Oracle Applications – Receivables





AutoInvoice is a program that can be used to import and validate transaction data from other financial systems from which one can create invoices, debit memos, credit memos, and on-account credits. It rejects transactions with invalid information to insure the integrity of the data. This fits well with in Oracle ERP or to integrate with any third party application.

Top 10 reasons for using Auto Invoice

1. Powerful Interface Tool
2. Supports Oracle & Non-Oracle Systems
3. Import Large Amount of Data
4. Calculate or Import Tax
5. Group Lines & Invoices

6. Online Error Correction

7 .Lines Validation

8. Derive GL Date

9 .Import Flex fields

10.Import or Derive Accounting Info

What is inside AutoInvoice
AutoInvoice is a program set consists of 3 main programs. Each program will have unique nature of work to do and they are called internally except Purge program whose execution is derived on the setup otherwise ready to execute stand alone.
Master (RAXMTR)
Import (RAXTRX)
Purge (RAXDEL)

1. Auto Invoice Master program RAXMTR
Selects and marks records in the interface tables to be processed based on the parameters the user entered and then calls the AutoInvoice Import program. Auto Invoice Master program has no report output.
•Gathers statistics, it means it gathers the stats on interface tables and set the stats on certain indices on interface tables
•Marks interface records for processing by marking request_id
•Submits multiple workers for Parallel Processing by creating instances for request.

2. Auto Invoice Import Program Validates the selected record and creates transaction if it passes validation. Any record that fails validation is left in the interface table with an error code. Depending on the setup, related records may be rejected as well. This program has an output file called Auto Invoice Execution report, which you can view by clicking the View Report button in the Requests window.Working of Auto invoice , Validates data, Inserts records, Deletes interface data Only when system option purge set to ‘Y’

3. Auto Invoice Purge Program Deletes records from the interface tables. If you set the Purge Interface Table system option to No in Define System Option window, Auto Invoice does not delete processed records from the interface tables after each run,and we must submit Auto Invoice Purge Program periodically to clean up the interface tables. This program only deletes transaction lines that have been successfully imported.
Deletes all rows where interface_status =‘P’
• Ra_interface_lines
• Ra_interface_distributions
• Ra_interface_salescredits

Oracle Receivable’s Auto Invoice program will be used to import and validate Invoices. A custom feeder program is required to transfer data from the Advantage extract files and populate the Auto Invoice interface tables (RA_INTERFACE_LINES_ALL and RA_INTERFACE_DISTRIBUTIONS_ALL).If there is need to run populate sales credit into RA_INTERFACE_SALESCREDITS_ALL table. When run, AutoInvoice produces the AutoInvoice Execution Report and the AutoInvoice Validation Report. Any entries which failed validation can be reviewed in Oracle Receivables’ AutoInvoice Interface Exceptions window. Depending on the error, changes may need to be made in Receivables, the feeder program or the imported records in the interface tables.

How Autoinvoice Execution works
Normally, Auto Invoice can be divided into three major phases, Pre-grouping: here the validates all of the line level data takes place, Grouping: groups lines based on the grouping rules and validates header level data, Transfer :validates information that exists in Receivables tables

What happen when AutoInvoice run?
Once the Auto invoice Program gets called, the following activity takes place is part of execution process. This can be analyzed by debug options.
Line, accounting, and sales credit information for each line populates 3 interface tables
Lines are ordered and grouped
Tax is calculated
GL date is determined
GL accounts are assigned using Auto Accounting
Tax, freight, commitments, and credit memos are linked to transaction lines
All transactions are batched
Validated lines are used to create the transaction

How Data is flowing?
Select, insert and update and delete take place on certain tables once it is logged out.



AutoInvoice Exception Handling
Records that fail validation are called ‘Exceptions’. Exceptions stay in Interface Tables which is RA_INTERFACE_ERRORS_ALL. Errors can be corrected in the Exception Handling window. Once corrections are made, Auto invoice must be resubmitted. Records that pass validation get transferred to Receivables tables

AutoInvoice Exception Handling Windows
-Interface Exception window displays exception messages associated with all invalid records
-Interface Lines window displays records that fail validation, provides an error message and can be used to correct the errors
-The Line Errors windows displays errors associated with a specific line, and can only be opened from Interface Lines window
-Interface Exceptions window displays Interface Id, Exception Type, Error Message and Invalid Value associated to the error
-Data cannot be edited in this window, but error can be viewed and corrected by clicking the Details button
-Error Message and Column name with invalid data are displayed in the Message column, and the invalid value that needs to be corrected is displayed in the Invalid Value column

Thanks – Shivmohan Purohit





Oracle 11i Application Developer – Technical FAQ – Part 1

Hello Friends, Some of my friends are requesting to put some good easy and relevant Questions along with Answers for Oracle Application which are used in all modules. So here i am putting some question in parts, each part having 10 Questions. plz share your feedback on difficulty level and your interest.

this is now updated and corrected after feedback from gerath.


Q1       In which FND table independent value set will be stored?



Q2       How to schedule the concurrent programs from Back end(PLSQL) -not from SRS form.

A2            fnd.request.submit_request( Concurrent_program_name,  application_short_name,  description,  parameters)


Example: req_id := FND_REQUEST.SUBMIT_REQUEST(‘FND’, ‘FNDSCARU’);    Fnd_request.submit_request can be called from any valid EBS session (initialized by fnd_global.apps_initialize)


Q3       Where do concurrent request log files and output files go?

A3       The concurrent manager first looks for the environment variable $APPLCSF, If this is set, it creates a path using two other environment variables:


It places log files in $APPLCSF/$APPLLOG

Output files go in $APPLCSF/$APPLOUT

So for example, if you have this environment set:

$APPLCSF = /u01/appl/common

$APPLLOG = log

$APPLOUT = out

The concurrent manager will place log files in /u01/appl/common/log, and output files in /u01/appl/common/out

Note that $APPLCSF must be a full, absolute path, and the other two are directory names. If $APPLCSF is not set, it places the files under the product top of the application associated with the request. So for example, a PO report would go under $PO_TOP/$APPLLOG and $PO_TOP/$APPLOUT

Logfiles go to: /u01/appl/po/9.0/log

Output files to: /u01/appl/po/9.0/out

Of course, all these directories must exist and have the correct permissions.  Note that all concurrent requests produce a log file, but not necessarily an output file


 Q4       How do I cancel a running concurrent request?           

A4            Navigate to the Concurrent Request Summary form

Select a request

In GUI, use the Cancel buttons

The Sysadmin responsibility can cancel any running request  , If you cancel a running request be aware that the backend process continues. See this good forum discussion for details:            


Q5       Why does Help->Tools->Examine ask for a password?       

A5       The profile option Utilities:Diagnostics is set to NO

This profile option controls whether users can use the Examine utility. The password should be the APPS password.       


Q6       How do I check if Multi-org is installed?          

A6            SELECT multi_org_flag FROM fnd_product_groups;          


Q7       How do I find the name of a form?    

A7       GUI: Use Help->About Oracle Applications

Scroll down to find the form name


Q8       How do I open a form in query-only mode?      

A8            Navigate to the Form Functions form (Application->Function)    Query the particular form and add the parameter QUERY_ONLY=YES

 go to applcation developer responsibility


query the function name

then goto form tab

then goto parameters field

then write the following code QUERY_YES=”YES”

save the changes and then see the forms get affected in query only mode.


Q9       How can I change in custom.pll? After changes how can I send on the server and what’s effect in this condition?

A9       1. FTP  the Custom.pll from $AU_TOP/resource

2. Open the Custom.pll in 11i or earlier

3. Include the following code for your Form logic :


     Form_Name varchar2(50) := name_in(‘system.current_form’);

     If Form_Name = ‘YOUR CUSTOM FORM” then


    include your logic   



 4. Once changes over , using the following command to generate the CUSTOM.plx 

f60gen module=CUSTOM.pll userid=apps/apps@mfgdev module_type=LIBRARY

to generate the latest CUSTOM.plx and move this CUSTOM.plx to $AU_TOP/resource


Q10     What is ‘$flex$ and ‘$profile$, What is the use of ‘$flex$’

A10         $Flex$ is used when we need to return the Flex value contained by any AOL Vlauset or AOL object . they used within Forms, value sets.

 For Ex .  $Flex$.<Valueset name>  would return the value held by that valueset .

  $profiles$. are used to get the values of environment variables like org_id or mfg_Organization_id etc which are related to the current apps environment.

  Ex.  $profiles$.org_id would return the operating unit which is active at that time for the user

 Will be updating with more question in upcoming posts.

Shivmohan Purohit

Attitute – You can Choose

Elephants born in captivity are restrained by a chain that attaches one leg to a metal spike driven into the ground. This prevents them from roaming. They become accustomed to the fact that, as long as the chain and spike are next to them, they are unable to move.

As they grow older, their minds become programmed. When they see the spike and chain, they “believe” and accept that they will not be able to move. They become so conditioned that when their owners place a small rope and wooden peg next to them, they make no effort to step away from it, because they “believe” they are unable to.

In truth, their actual power as adults is so great that they could easily pull up a chain and spike of any size. Their programming or “belief,” however, allows this tiny rope and wooden peg to limit their movement.

We are all very much like these elephants. We allow the weaknesses, fears and rejection we experienced as children to program us into a life in which we lack power, peace, love and happiness. We become controlled by false childhood assumptions we have made about our ability, strength and self worth.

We can move away from these “pegs” of self-limitation, but we must chose to do so