Oracle Project Billing - Version 18.104.22.168 and later
Oracle Order Management - Version 22.214.171.124 and later
Oracle Receivables - Version 126.96.36.199 and later
Oracle Lease and Finance Management - Version 12.0.1 and later
Information in this document applies to any platform.
Executable:RAXTRX - Autoinvoice Import Program
Form:ARXTWMAI.FMB - Transactions
Executable:PARGDR - PRC: Generate Draft Revenue for a Range of Projects
Executable:PAIGEN - PRC: Generate Draft Invoices for a Range of Projects
When Creating transactions via AutoInvoice, or the Transactions Form or APIs or via a hook-up into Receivables, you get the Error:
Please correct the revenue account assignment
This can occur in:
Oracle Receivables Transaction Workbench
Oracle Receivables: AutoInvoice Import
Oracle Receivables: Invoice API's
Oracle Projects: Project Billing Generate Draft Invoices or Revenue
TIP:Check outNote 1904785.1AutoAccounting Analyzer, a dynamic way to help you identify and resolve AutoAccounting issues.
There are multiple causes for this error to be raised, the following guides you through the various things you can check/use to address this error:
1. Check AutoAccounting Setup
If you are getting the error in AutoInvoice, try creating a manual transaction and use the same GL account segments. As you enter each GL account segment in the transaction form, if validation logic fails, the form will raise an error. This will help you in identifying which segments have issues and will assist you in resolving the problem.
For this particualr error message, the GL account in error will be displayed, and a particular segment will be missing. Let's take the following as an example:
Please correct the revenue account assignment (03-0000000--0000-00000-0000-0000)
A close look at the accounting segments shows the 3rd segment is missing.
Responsibility: Receivables Manager Navigation: Setup > Transactions > AutoAccounting
Then query up for Type = Revenue, and review the source for each of the segments. For this example, the 3rd segment is raising the error, so pay attention to where the 3rd segment is sourced from.
Depending on what the source is for the failing segment, you can use the following steps to investigate/troubleshoot further.
a)If Segments Source =Salesreps
When a segment of the GL account has to be derived from the GL accounts associated with the Salesrep, then it is pertinent that you associate a Salesrep to your transactions.Check whether the following has been set-up correctly:
Query up the transaction source used for your AutoInvoice import batch, and navigate to the AutoInvoice Options tab, and ensure that the checkbox for Allow Salescredit is checked.
Next check the Sales Credit Validation tab, verify what you have setup for Salesperson, how you set it up here impacts what AutoInvoice will expect to see in the RA_INTERFACE_LINES_ALL table (discussed below)
Responsibility:Receivables Manager Navigation:Setup > System > System Options
Navigate to the Miscellaneous tab and check if the Require Salesperson checkbox is checked.
The combination of the above settings determines the behavior re. Salescredits data in AutoInvoice.
Note: Regardless of the combination of settings you define below, if you pass data in RA_INTERFACE_SALESCREDITS_ALL, then AutoInvoice will validate that the data you provided is valid.
Ensure that Freight, Receivables and Revenue Accounts associated to the Salesrep have been setup completely.
Data in RA_INTERFACE_SALESCREDITS_ALL
When you have defined AutoAccounting such that some GL account segments are sourced from Salesreps, make sure that you populate the table RA_INTERFACE_SALESCREDITS for each line in RA_INTERFACE_LINES_ALL so that the proper accounting can be derived, and ensure that the values in INTERFACE_LINE_CONTEXT + INTERFACE_LINE_ATTRIBUTE1-15 match up.
This is required when you source segments from Salesreps and is necessary even if your system option Require Salesreps is set to No.
Data in RA_INTERFACE_LINES_ALL
If your source is Salesreps, and your Transaction Source setup for Salesperson is:
Number, then you should be populating RA_INTERFACE_LINES_ALL.PRIMARY_SALESREP_NUMBER
Id, then you should be populating RA_INTERFACE_LINES_ALL.PRIMARY_SALESREP_ID
Script to find incomplete Salesrep setup for AutoAccounting
The following script will pick up all Salesreps that do not have all the GL accounts setup, this could assist you in proactively setting these up to avoid issues in AutoInvoice.
NVL(TO_CHAR(GL_ID_REV), 'NULL REV') GL_ID_REV,
NVL(TO_CHAR(GL_ID_REC), 'NULL REC') GL_ID_REC,
NVL(TO_CHAR(GL_ID_FREIGHT),'NULL FREIGHT') GL_ID_FREIGHT
WHERE STATUS = 'A'
AND ((NVL(START_DATE_ACTIVE, sysdate) <= sysdate) AND
(NVL(END_DATE_ACTIVE, sysdate) >= sysdate))
AND (GL_ID_REC IS NULL OR
GL_ID_REV IS NULL OR
GL_ID_FREIGHT IS NULL)
FROM RA_ACCOUNT_DEFAULTS_ALL a,
WHERE s.GL_DEFAULT_ID = a.GL_DEFAULT_ID
AND s.CONSTANT is null
AND s.TABLE_NAME = 'RA_SALESREPS');
Projects Users: Set up a Credit Receiver on a project so that the RA_INTERFACE_SALESCREDITS_ALL table is populated by the 'Interface Invoices to Receivables' process. This may require that the 'No Sales Credit' salesperson be setup as an employee. Setting this up will allow you to bypass the mandatory salesrep validation when none exists. To complete this setup, go into the Receivables responsibility: NAV Setup/Transactions/Sources.
Query your batch source. Go to tab AutoInvoice options. Mark allow salescredit.
b)If Segment Source = Standard Lines
When your GL account segments are source from Standard lines, it is pertinent to associate either an Inventory Item or a Memo line to your transaction, so that AutoAccounting can derive the GL account segments. Check whether the following have been setup correctly:
Query up the transaction source used for your AutoInvoice import batch, and navigate to the Other Information tab, how you set up Memo Line Rule and/or Inventory Item here impacts what AutoInvoice will expect to see in RA_INTERFACE_LINES_ALL table (discussed below).