Recommendation : Get one FREE E-book from Packt Publishing in Next 2 – 3 Days : Download Oracle E-book

Packt Publishing has come a long way since it published its first book in 2004, and is now one of the leading technical publishers, renowned among developers for its focused and practical books on a wide range of tools and technologies.Packt has just published its 1000th book. You are invited to join us in celebrating this milestone with a gift. Access our library, PacktLib, for free for a week, and choose any of our eBooks to download and keep.

To make use of this offer, you simply need to go to and log into your account, or register for an account, between the 28th and 30th September.

R12 : Purchasing : How account generator defaults Accounts

Some portion of this article is from user guide : and any way User Guide give comprehensive details any topics and account generator also :

The default Account Generator processes in Oracle Purchasing build a charge, budget, accrual, and variance account for each purchase order, release, and requisition distribution based on the distribution’s Expense, Inventory, or Shop Floor destination type. Oracle Purchasing always builds these accounts using the Account Generator; you cannot disable this feature.

For Inventory charge account construction, the Account Generator further distinguishes between asset and expense purchases based on the item and subinventory that you provide for the distribution. If you select an expense item, the Account Generator disregards the subinventory and builds an expense charge account. If you select an asset item, the Account Generator evaluates the subinventory to decide whether to build an expense or asset charge account.

When the Account Generator locates a source account based on the distribution destination type, it copies complete code combinations (full Accounting Flexfields) from designated fields to destination Accounting Flexfields. The default Oracle Purchasing processes do not build individual flexfield segments.

For example, to populate the Accrual account for distributions with an Expense destination type, the Account Generator locates the Expense AP Accrual Account that you specify in the Purchasing Options window as part of your application setup, and copies it into the Accrual Account Flexfield in your document.

An exception is when the account generator is unable to derive a charge account in the first two steps. Then an account is retrieved from the HR employee record and individual segments are replaced based on the item category. This is a typical scenario when using one-time items in Oracle Purchasing.

Default Charge Account Sources

Expense 1- preference 2-Expense Account from Item 3- employee assignment – expense account 4- Item Category Segment Substitution
Inventory 1-Sub-inventy Expense A/c 2- Expense Account from Item 3- Expense Account from Inventory Org Parameters

While you cannot edit the accrual, budget, or variance accounts that the Account Generator constructs, you can override or specify the charge account for uncommitted Expense distributions. In this case, you can either edit the charge account that the Account Generator constructs for you, or you can specify a default charge account in the Defaults region of your document. When you specify a default charge account, it always overrides any expense charge account that the Account Generator tries to provide.

the picture is described in the document text

R12 AR : Receivables AutoInvoice Purge Interface Tables

AutoInvoice feature was developed to provide a means of creating large volumes of transactions without manual input. Since AutoInvoice processes this bulk data through an open interface table, it is not necessary to retain the data in the interface table once the transactions have been generated in Receivables. AutoInvoice Purge provides a mechanism to clean up the data once it has been processed.
Overview of AutoInvoice Purge
Data to be transferred into Receivables via AutoInvoice can be provided by integrated systems (e.g. Oracle Order Management) , via insertion of data into tables via feeder or legacy systems or via customized scripts that populate the interface tables.

The main interface tables are:

During processing of AutoInvoice, the data provided in the interface tables are transferred into core Receivables tables such as:

Once the data is validated, and the transactions are created, data in the interface tables can be removed. For optimized performance, it is recommended that interface data be purged regularly to eliminate unnecessary overhead.

When invoked the AutoInvoice Purge process will remove from the interface tables, rows that have been successfully processed.

2. Running AutoInvoice Purge

There are 2 ways to invoke the AutoInvoice Purge process.

First : By checking Purge Interface Tables checkbox in the System Options form, you are allowing AutoInvoice to clean up after itself once it has completed processing.

Responsibility: Receivables Manager
Navigation: Setup > System > System Options

Second : Manually

Submitting via the Submission Request form, gives you the flexibility of choosing when to purge processed data from the Interface tables.
Responsibility: Receivables Manager
Navigation: Interfaces > AutoInvoice
or View > Requests > Submit a New Request

  • In Submit a New Request form, pick Single Request
  • From the list of values pick AutoInvoice Purge Program

The logic deletes rows from the interface tables, by cross-referencing that that parent row in RA_INTERFACE_LINES_ALL has INTERFACE_STATUS = ‘P’.

Data is deleted from interface tables in the following order:

R12 Receivables : Adding Internal Location with Internal Customers

Within an Operating Unit, a location can only be designated as a Ship To Internal Location for a customer once.  Another customer within the same operating unit can no longer use the same location as a Ship to Internal Location.  However, a customer in another operating unit can.

For example:

Valid Scenario:

Operating Unit: ‘OU1’

  • Customer ‘CU1’
  • Ship to -> Internal location : ‘IL1’

Operating Unit: ‘OU2’

  • Customer ‘CU2’
  • Ship to -> Internal location : ‘IL1’

The above is allowed because customers ‘CU1’ and ‘CU2’ belong to different operating Units ‘OU1’ and ‘OU2’.

Navigation where we put Internal Location :

  1. Responsibility: Receivables Manager
    Navigation: Customers > Standard
  2. Query or create internal customer
  3. Open Addresses, Bill to purposes tab. Pick a Ship to site and click on Open
  4. In the Details tab, enter a value in the field ‘Internal Location’

Run following Query if you get error message “Internal Location is already assigned to another Ship To address. Please choose a different location.” ,  Sometime if delete a site which had this internal location then Oracle doesn’t clean it from PO table.

FROM po_Location_Associations_All p
WHERE p.location_id in
(select hrl.location_id
from hr_locations_all hrl
where hrl.location_code like ‘&your_location_name’);

R12 : How To Configure Access To Request Output Of The Same Responsibility

In R12, We need to follow separate stesp to view output , in 11i  it was using a profile option :

1. As SYSADMIN user with “Functional Developer” responsibility, update object  “Concurrent Requests”.

Search for object Concurrent Requests.
Click on Concurrent Requests.
Click on Object Instance Sets tab.
Click on Create Instance Set button.
Enter Name, Code and Description for new instance set.
– Enter the following for predicate:

&TABLE_ALIAS.request_id in (select cr.request_id from and_concurrent_requests cr where cr.responsibility_id = fnd_global.resp_id  and cr.responsibility_application_id = fnd_global.resp_appl_id)

2. As the SYSADMIN user with “User Management”, go to Roles and Role Inheritance tab.

Create a Role and then create a Grant for the Role.
Enter Name and Description for the new Grant.
For the Data Security Object enter “Concurrent Requests”.
Click Next and provide the Data Content Type of “Instance Set”.
Click Next and for Instance Set choose instance set created in step #1.
The permission Set is “Request Operations”.

(Note: There are no parameters for the grant).

3. Assign this role to users as needed. The users with this role will be able to see the log and output files for the same as responsibility.

Query the User Name you want to add the new role to.
Click on the Update icon.
Click Assign Roles button and find the new role.
Save and Apply to activate the new role.