Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1840311
  • 博文数量: 334
  • 博客积分: 11301
  • 博客等级: 上将
  • 技术积分: 3452
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-18 10:19
个人简介

路虽弥,不行不至;事虽少,不做不成。

文章分类

全部博文(334)

文章存档

2013年(4)

2012年(19)

2011年(27)

2010年(71)

2009年(45)

2008年(15)

2007年(84)

2006年(69)

分类: Oracle

2010-09-29 11:12:19

 


Troubleshooting AutoAccounting in AutoInvoice [ID 1080995.1]  

  Modified 13-SEP-2010     Type TROUBLESHOOTING     Status PUBLISHED  

In this Document
  
  
  
  
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  


Applies to:

Oracle Receivables - Version: 11.5.10.0 to 12 - Release: 11.5.10 to 12.0
Oracle Receivables - Version: 11.5.10.0 to 12   [Release: 11.5.10 to 12.0]
Information in this document applies to any platform.
Executable:RAXMTR - AutoInvoice Master Program
Executable:RAXTRX - AutoInvoice Import Program
Form:RAXSUAGL.FMB - Define Automatic Accounting

Purpose

Oracle Receivables (AR): AutoInvoice Information Center > Troubleshooting AutoInvoice for Oracle Receivables Release 11.5 Through 12 > Note 1080995.1
This note was created to facilitate troubleshooting issues regarding AutoAccounting in AutoInvoice.

AutoAccounting is a powerful, flexible, and time saving feature that automatically defaults your general ledger Accounting Flexfields during data entry. You can set up AutoAccounting to create Accounting Flexfields that meet your business needs.

In Receivables, AutoAccounting is enabled for the following Accounts:
  • AutoInvoice Clearing
  • Bills Receivable
  • Factored Bills Receivable
  • Freight
  • Receivable
  • Remitted Bills Receivable
  • Revenue
  • Tax
  • Unbilled Receivable
  • Unearned Revenue
  • Unpaid Bills Receivable
These are discussed in detail in , Setting Up AutoAccounting Rules In Receivables.

Last Review Date

September 13, 2010

Instructions for the Reader

A Troubleshooting Guide is provided to assist in debugging a specific issue. When possible, diagnostic tools are included in the document to assist in troubleshooting.

Troubleshooting Details

1. Troubleshooting AutoAccounting related errors encountered during Import

     a. Error: Not all AutoAccounting types are defined

During import, you are getting the errors:

arcsai() Not all AutoAccounting types are defined
Error calling arcdsu_do_setup()

The above error is raised when the setup of AutoAccounting is incomplete, validation code (in arcdsu.lpc) checks that the setup for the following account types have been defined:
  • Freight (FREIGHT)
  • Receivable (REC)
  • Revenue (REV)
  • AutoInvoice Clearing (SUSPENSE)
  • Tax (TAX)
  • Unbilled Receivables (UNBILL)
  • Unearned Revenue (UNEARN)
You can run the following to find out what account is missing the setup, please specify the org_id associated to your operating unit. There should be a row for each of the 7 types listed below.

SELECT GL_DEFAULT_ID, TYPE
FROM   RA_ACCOUNT_DEFAULTS_ALL
WHERE  ORG_ID = &orgid
AND    TYPE IN
       ('FREIGHT', 'REC', 'REV', 'SUSPENSE', 'TAX', 'UNBILL', 'UNEARN');

Once you have determined which account type is missing, set it up via:

Responsibility: Receivables Manager
Navigation: Setup > Transactions > AutoAccounting

For additional information please review , Setting Up AutoAccounting Rules In Receivables. This note includes information on how to setup the various Sources for AutoAccounting segments.

     b. Error: Please correct the {x} account assignment

Where {x} can be:  Freight, Receivable, Revenue, AutoInvoice Clearing, Tax, Unbilled Receivables, Unearned Revenue.

Alternate error messages can include:
1) Please complete the offset account assignments (See )
2) Please complete your tax accounting flexfield   (See )
3) Please correct the receivable account assignment  (See )
4) Please correct the revenue account assignment  (See )

          i. 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:
  • Transaction Source
Responsibility: Receivables Manager
Navigation: Setup > Transactions > Sources

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)



  • System Options
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.

Allow Salescredit field
(In Transaction Source)
Require Salesperson
(in System Options)
Requirement of
Salescredit information
Checked
Checked
Mandatory
Checked
Not Checked
Optional
Not Checked
Checked
Mandatory
Not Checked
Not Checked
Any data entered will be ignored

  • GL account associated to Salesrep
Responsibility: CRM Resource manager
Navigation: Maintain Resources > Resources
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.SALESREP_NUMBER
  •  Id, then you should be populating RA_INTERFACE_LINES_ALL.SALESREP_ID
Note: The fields to populate are SALESREP_NUMBER or SALESREP_ID and not PRIMARY_SALESREP_NUMBER or 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.

SELECT NAME,
       SALESREP_NUMBER,
       SALESREP_ID,
       PERSON_ID,
       STATUS,
       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
FROM   JTF_RS_SRP_VL
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)
AND EXISTS
(SELECT 'x'
 FROM   RA_ACCOUNT_DEFAULTS_ALL a,
        RA_ACCOUNT_DEFAULT_SEGMENTS s
 WHERE  s.GL_DEFAULT_ID = a.GL_DEFAULT_ID
 AND    s.CONSTANT is null
 AND    s.TABLE_NAME = 'RA_SALESREPS');

          ii. 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:

  • Transaction Source
Responsibility: Receivables Manager
Navigation: Setup > Transactions > Sources

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).



  • GL account associated to Inventory Item or Memo Line
For an Inventory Item

Responsibility: Receivables Manager
Navigation: Setup > Transactions > Items > Define items

Query the item and in the Invoicing Tab check the value in the Sales Account field.



For a Memo Line

Responsibility: Receivables Manager
Navigation: Setup > Transactions > Memo Lines

Make sure that the Revenue Account is populated.



  • Data in RA_INTERFACE_LINES_ALL
  • If your source is Memo Line, and your Transaction Source setup for Memo Line Rule is:
    • Value, then you should be populating RA_INTERFACE_LINES_ALL.MEMO_LINE_NAME
    • Id, then you should be populating RA_INTERFACE_LINES_ALL.MEMO_LINE_ID
  • if your source is an Inventory Item, and your Transaction Source setup for Inventory Item is:
    • Segment, then you should be populating RA_INTERFACE_LINES_ALL.MTL_SYSTEM_ITEMS_SEG1-20 (as appropriate)
    • Id, then you should be populating RA_INTERFACE_LINES_ALL.INVENTORY_ITEM_ID
  • Script to find incomplete Memo Line or Inventory Item setup for AutoAccounting
The following script will pick up Memo Lines that do not have all the Revenue account setup, this could assist you in proactively setting these up to avoid issues in AutoInvoice.

SELECT T.NAME, B.MEMO_LINE_ID,
       NVL(TO_CHAR(b.GL_ID_REV),'NULL REV') GL_ID_REV
FROM   AR_MEMO_LINES_ALL_TL T,
       AR_MEMO_LINES_ALL_B B
WHERE  b.MEMO_LINE_ID = t.MEMO_LINE_ID
AND    ((nvl(b.END_DATE, sysdate) >=sysdate) AND
        (nvl(b.START_DATE,sysdate) <=sysdate))
AND    b.GL_ID_REV IS NULL
AND EXISTS
(SELECT 'x'
 FROM   RA_ACCOUNT_DEFAULTS_ALL a,
        RA_ACCOUNT_DEFAULT_SEGMENTS s
 WHERE  s.GL_DEFAULT_ID = a.GL_DEFAULT_ID
 AND    s.CONSTANT is null
 AND    s.TABLE_NAME = 'RA_STD_TRX_LINES');

The following script will pick up Inventory Items from organizations involved in Order Management that do not have the Sales Account setup, this could assist you in proactively setting these up to avoid issues in AutoInvoice.

SELECT ORGANIZATION_ID, DESCRIPTION, INVENTORY_ITEM_ID,
       NVL(TO_CHAR(SALES_ACCOUNT),'NULL SALES ACCOUNT')
FROM   MTL_SYSTEM_ITEMS
WHERE  ((nvl(END_DATE_ACTIVE, sysdate) >=sysdate) AND
        (nvl(START_DATE_ACTIVE,sysdate) <=sysdate))
AND    ORGANIZATION_ID IN
      (SELECT MASTER_ORGANIZATION_ID
       FROM   OE_SYSTEM_PARAMETERS_ALL)
       AND    SALES_ACCOUNT IS NULL
       AND    EXISTS
             (SELECT 'x'
              FROM   RA_ACCOUNT_DEFAULTS_ALL a,
                     RA_ACCOUNT_DEFAULT_SEGMENTS s
              WHERE  s.GL_DEFAULT_ID = a.GL_DEFAULT_ID
              AND    s.CONSTANT is null
              AND    s.TABLE_NAME = 'RA_STD_TRX_LINES')
ORDER BY 1;

          iii. Segment Source = Taxes

Error Message:  Please complete your tax accounting flexfield

When a segment of the GL account has to be derived from the GL accounts associated to Tax, Check that the following has been setup correctly.

In Release 12, sourcing from Taxes can come from the following levels:
  • Tax
  • Tax Jurisdiction
  • Tax Rate

Please review ,  Setting Up Tax Accounting for R12 E-Business Tax (EBTax) for an in-depth discussion of how to setup Tax as a source for AutoAccounting.

In Release 11.5,
  • Tax Code
Responsibility: Receivables Manager
Navigation: Setup > Tax > Codes

Query for the Tax Code being used and verify that in the More tab, under the column account, you have defined a GL account.


  • Location Based Tax
First you need to determine you Location Flexfield Structure

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

Navigate to the Tax tab and check the value in Location Flexfield Structure



Then check which of the segments of your Sales Tax Location Flexfield is associated with the Tax Account

Responsibility: Receivables Manager
Navigation: Setup > Financials > Flexfields > Key > Segments

Query on Flexfield Title Sales Tax Location Flexfield
Find the structure associated to your System Options, in our example (see previous screenshot): State.County.City
Click on Segments
While positioned on the first record State, click on Flexfield Qualifiers
Scroll till you find the record for name Tax Account, if the Enabled checkbox is checked then this is the segment associated to the Tax Account, otherwise, you may need to do the same steps for the other Flexfield Segments (i.e. County, City) till you identify the segment associated with the Tax Account.




Finally, verify that the Tax Account is setup for this Segment

Responsibility: Receivables Manager
Navigation: Setup > Tax > Locations

In the Find field enter the segment for which Tax Account is enabled, in our example State, click on Find
Records for various States will populate, ensure that the Tax Account field is populated with a GL account



          iv. Segment Source = Transaction Types

When a segment of the GL account has to be derived from the GL accounts associated with the Transaction Type, then it is pertinent that you associate the correct Transaction Type to your transactions, and that the GL accounts for the transaction type are defined. Check whether the following has been set-up correctly:
  • Transaction Sources
Responsibility: Receivables Manager
Navigation: Setup > Transactions > Sources

Query up the transaction source used for your AutoInvoice import batch, and navigate to the Other Information tab, and your setup for Transaction Type. How you have it setup here impacts what AutoInvoice will expect to see in RA_INTERFACE_LINES_ALL (discussed below)



  • Transaction Type
Ensure that you have populated the GL accounts associated to the Transaction Type you are using in your Interface table.


  • Data in RA_INTERFACE_LINES_ALL
If your Transaction Source setup for Transaction Type is:
  • Value, then you should be populating RA_INTERFACE_LINES_ALL.CUST_TRX_TYPE_NAME
  • Id, then you should be populating RA_INTERFACE_LINES_ALL.CUST_TRX_TYPE_ID
  • Script to find incomplete Transaction type setup for AutoAccounting
The following script will pick up transaction types that do not have all the GL accounts setup. If you have some AutoAccounting defined to source from Transaction Types, then the incomplete GL account setup could cause issues - this script could assist you in proactively setting these up to avoid issues in AutoInvoice.

SELECT ORG_ID, NAME, CUST_TRX_TYPE_ID, TYPE,
       STATUS, POST_TO_GL, ACCOUNTING_AFFECT_FLAG,
       NVL(TO_CHAR(GL_ID_REC), 'NULL REC') gl_id_rec,
       DECODE(type,'BR','NOT APPLICABLE',
              NVL(TO_CHAR(GL_ID_REV), 'NULL REV')) gl_id_rev,
       DECODE(type,'BR','NOT APPLICABLE',
              NVL(TO_CHAR(GL_ID_FREIGHT), 'NULL FREIGHT'))
              gl_id_freight,
       DECODE(type,'BR','NOT APPLICABLE',
              NVL(TO_CHAR(GL_ID_CLEARING), 'NULL CLEARING'))
              gl_id_clearing,
       DECODE(type,'BR','NOT APPLICABLE',
              NVL(TO_CHAR(GL_ID_TAX), 'NULL TAX')) gl_id_tax,
       DECODE(type,'BR','NOT APPLICABLE',
              NVL(TO_CHAR(GL_ID_UNBILLED), 'NULL UNBILL'))
              gl_id_unbilled,
       DECODE(type,'BR','NOT APPLICABLE',
              NVL(TO_CHAR(GL_ID_UNEARNED), 'NULL UNEARN'))
              gl_id_unearned,
       DECODE(type,'BR',NVL(TO_CHAR(GL_ID_UNPAID_REC),
              'NULL UNPAIDREC'),'NOT APPLICABLE') gl_id_unpaidrec,
       DECODE(type,'BR',NVL(TO_CHAR(GL_ID_REMITTANCE),
              'NULL REMITTANCE'),'NOT APPLICABLE') gl_id_remittance,
       DECODE(type,'BR',NVL(TO_CHAR(GL_ID_FACTOR), 'NULL FACTOR'),
              'NOT APPLICABLE') gl_id_factor,
       START_DATE, END_DATE
FROM   RA_CUST_TRX_TYPES_ALL
WHERE  ((NVL(START_DATE, sysdate) <= sysdate)
         AND (NVL(END_DATE, sysdate) >= sysdate))
AND    NVL(STATUS,'A') = 'A'
AND    ((TYPE = 'BR' AND
        (GL_ID_REC IS NULL OR
         GL_ID_UNPAID_REC IS NULL OR
         GL_ID_REMITTANCE IS NULL OR
         GL_ID_FACTOR IS NULL))
        OR
        (TYPE <> 'BR' AND
        (GL_ID_REC IS NULL OR
         GL_ID_REV IS NULL OR
         GL_ID_FREIGHT IS NULL OR
         GL_ID_CLEARING IS NULL OR
         GL_ID_TAX IS NULL OR
         GL_ID_UNBILLED IS NULL OR
         GL_ID_UNEARNED IS NULL)))
AND EXISTS
(SELECT 'x'
 FROM   RA_ACCOUNT_DEFAULTS_ALL a,
        RA_ACCOUNT_DEFAULT_SEGMENTS s
  WHERE s.GL_DEFAULT_ID = a.GL_DEFAULT_ID
  AND   s.CONSTANT is null
  AND   s.TABLE_NAME = 'RA_CUST_TRX_TYPES')
 ORDER BY 1;

          v. Segment Source = Sites

  • Transaction Sources
Responsibility: Receivables Manager
Navigation: Setup > Transactions > Sources

Query up the transaction source used for your AutoInvoice import batch, and navigate to the Customer Information tab, and check how you have setup Bill To Address and Bill To Customer, how you have it setup here impacts what AutoInvoice will expect to see in RA_INTERFACE_LINES_ALL (discussed below)




  • Customer Site(Customer-->site-->bussiness purpose)

 

Ensure that you have populated the Accounts associated at the Bill To Site level.

  • Data in RA_INTERFACE_LINES_ALL
  • If your Transaction Source setup for Bill To Customer is:
    • Value, then you should be populating RA_INTERFACE_LINES_ALL.ORIG_SYSTEM_BILL_CUSTOMER_REF
    •  Id, then you should be populating RA_INTERFACE_LINES_ALL.ORIG_SYSTEM_BILL_CUSTOMER_ID
  • If your Transaction Source setup for Bill To Address is:
    • Value, then you should be populating RA_INTERFACE_LINES_ALL.ORIG_SYSTEM_BILL_ADDRESS_REF
    • Id, then you should be populating RA_INTERFACE_LINES_ALL.ORIG_SYSTEM_BILL_ADDRESS_ID
  • Script to find incomplete Site setup for AutoAccounting
The following script will pick up Customer Sites that do not have all the GL accounts setup at the Bill To Site.

You can limit the rows returned by filtering adding a condition on party_name, or just checking for a particular GL account, or by processing in batches using a condition like:
and rownum < 300

This could assist you in proactively setting these up to avoid issues in AutoInvoice.

SELECT cust_acct.ACCOUNT_NUMBER customer_number,
       substr(party.PARTY_NAME,1,30) customer_name,
       substr(loc.ADDRESS1,1,30) address,
       site_uses.CUST_ACCT_SITE_ID address_id,
       site_uses.LOCATION, site_uses.SITE_USE_ID,
       site_uses.SITE_USE_CODE,
       nvl(to_char(site_uses.GL_ID_REC), 'NULL REC')
       gl_id_rec,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO',nvl(to_char(site_uses.GL_ID_REV),
              'NULL REV'),
              'DRAWEE' , 'NOT APPLICABLE') gl_id_rev,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO', 
              nvl(to_char(site_uses.GL_ID_FREIGHT),
              'NULL FREIGHT'),
              'DRAWEE' , 'NOT APPLICABLE') gl_id_freight,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO',
              nvl(to_char(site_uses.GL_ID_CLEARING),
              'NULL CLEARING'),
              'DRAWEE' , 'NOT APPLICABLE') gl_id_clearing,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO',
              nvl(to_char(site_uses.GL_ID_TAX),
              'NULL TAX'),
              'DRAWEE' , 'NOT APPLICABLE') gl_id_tax,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO',
              nvl(to_char(site_uses.GL_ID_UNBILLED),
              'NULL UNBILL'),
              'DRAWEE' , 'NOT APPLICABLE') gl_id_unbill,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO',
              nvl(to_char(site_uses.GL_ID_UNEARNED),
              'NULL UNEARN'),
              'DRAWEE' , 'NOT APPLICABLE') gl_id_unearn,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO', 'NOT APPLICABLE',
              'DRAWEE',
              nvl(to_char(site_uses.GL_ID_UNPAID_REC),
              'NULL UNPAID REC')) gl_id_unpaidrec,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO', 'NOT APPLICABLE',
              'DRAWEE' ,
              nvl(to_char(site_uses.GL_ID_REMITTANCE),
              'NULL REMITTANCE')) gl_id_remittance,
       decode(site_uses.SITE_USE_CODE,
              'BILL_TO', 'NOT APPLICABLE',
              'DRAWEE' ,
              nvl(to_char(site_uses.GL_ID_FACTOR),
              'NULL FACTOR')) gl_id_factor
FROM   HZ_PARTIES PARTY,
       HZ_PARTY_SITES PARTY_SITE,
       HZ_CUST_ACCOUNTS_ALL CUST_ACCT,
       HZ_LOCATIONS LOC,
       HZ_CUST_ACCT_SITES_ALL ACCT_SITES,
       HZ_CUST_SITE_USES_ALL SITE_USES
WHERE  party_site.LOCATION_ID = loc.LOCATION_ID
AND    party.PARTY_ID = cust_acct.PARTY_ID
AND    cust_acct.CUST_ACCOUNT_ID =
       acct_sites.CUST_ACCOUNT_ID
AND    acct_sites.CUST_ACCT_SITE_ID = 
       site_uses.CUST_ACCT_SITE_ID
AND    party_site.PARTY_SITE_ID = acct_sites.PARTY_SITE_ID
AND    site_uses.SITE_USE_CODE in ('BILL_TO' ,'DRAWEE')
AND    site_uses.STATUS = 'A'
AND    ((site_uses.SITE_USE_CODE = 'BILL_TO' AND
        (site_uses.GL_ID_REC IS NULL OR
         site_uses.GL_ID_REV IS NULL OR
         site_uses.GL_ID_FREIGHT IS NULL OR
         site_uses.GL_ID_CLEARING IS NULL OR
         site_uses.GL_ID_TAX IS NULL OR
         site_uses.GL_ID_UNBILLED IS NULL OR
         site_uses.GL_ID_UNEARNED IS NULL))
        OR
        (site_uses.SITE_USE_CODE = 'DRAWEE' AND
        (site_uses.GL_ID_REC IS NULL OR
         site_uses.GL_ID_UNPAID_REC IS NULL OR
         site_uses.GL_ID_REMITTANCE IS NULL OR
         site_uses.GL_ID_FACTOR IS NULL)))
AND EXISTS
(SELECT 'x'
 FROM   RA_ACCOUNT_DEFAULTS_ALL a,
        RA_ACCOUNT_DEFAULT_SEGMENTS s
 WHERE  s.GL_DEFAULT_ID = a.GL_DEFAULT_ID
 AND    s.CONSTANT is null
 AND    s.TABLE_NAME = 'RA_SITE_USES');

          vi. Validate the Shipping Inventory Organization

If the Shipping and Selling organizations are different, with each belonging to a different Set of Books each set up with a different Chart of Accounts, you may get an error such as the following, even when your AutoAccounting setup is complete.

Please complete your tax accounting flexfield or
Please correct the revenue account assignment

This issue is manifested because the Chart of Accounts for each set of books has a different number of segments, for example:
  • Selling Organization GL accounts has 13 segments
  • Shipping Organization GL accounts has 7 segments

Current functionality was not designed to handle this scenario. An enhancement request has been logged for this issue, via .

          vii. Distribution passed in RA_INTERFACE_DISTRIBUTIONS_ALL

You are interfacing data into RA_INTERFACE_DISTRIBUTIONS_ALL, and during Import, you are getting the errors such as:
EXCEPTION: arp_auto_accounting.do_autoaccounting_internal()
ORA-20000: APP-15482: Please correct the receivable account assignment

If you want AutoAccounting to determine your general ledger accounts you must not enter values in RA_INTERFACE_DISTRIBUTIONS_ALL.

However, if you want to pass in the distribution data, then you are required to provide data for each  ACCOUNT_CLASS associated to a line. For example, a line may require a REC and REV distribution. If you pass in data for the REC distribution, then you also need to pass in the data for REV distribution, otherwise AutoInvoice will fail.

          viii. Check to see if you Allow Dynamic Inserts

Once all the segments of your accounting flexfield have been derived based on your AutoAccounting setup, it is then validated to ensure it is a valid code combination. Once validated, it will check whether the combination already exists in GL, if it exists, AutoAccounting will just retrieve the internal code_combination_id, if it does not exist, the code will check your setting for Allow Dynamic Inserts

If your business process allows on-the-fly creation of new code combinations, set the checkbox to Yes.

Responsibility: Receivables Manager
Navigation: Setup > Financials > Flexfields > Key > Segments.
Query on Flexfield Title Accounting Flexfield, check the Allow Dynamic Inserts checkbox



If your business does not allow dynamic inserts, then you need to review why AutoAccounting attempted to generate a code combination that you have not yet setup. If you verify, that the new code combination is valid you need to create the code combination manually to avoid the error next time the same code combination is derived.

Responsibility: Receivables Manager
Navigation: Setup > Financials > Accounting > GL Accounts




2. Troubleshooting Unexpected Behavior re. AutoAccounting

     a. AutoAccounting for invoices from OM is failing if source = Standard Line (Inventory Item)

OM populates the RA_INTERFACE_LINES_ALL.WAREHOUSE_ID with the Shipping Organization Id. This information is used by AutoInvoice to get the accounting information for the inventory item depending from which warehouse it has been shipped.

Check to see if the WAREHOUSE_ID value populated from OM is correct. Then verify the accounting is set for the Inventory item, for more details review , Setting Up AutoAccounting Rules In Receivables (2-5 Standard Lines)

     b. Default Value Not Working As Expected

Sometimes, you will not get errors in the GL accounts derived by AutoAccounting, but the segment value derived does not appear to come from the Sources you specificed.

Check whether that particular segment was setup to use a default value.

Responsibility: Receivables Manager
Navigation: Setup > Financials > Flexfields > Key > Segments

Query up Title Accounting Flexfield, locate the Code Structure associated to your Accounting Flexfield, click on Segments, then pick any segment and click on Open. This will show you the details of that particular segment, and whether or not this segment has a default value.



In cases where AutoAccounting fails to derive a segment from the source you specified, it will go back to the Accounting Flexfield setup, and if that segment has a default value, that is what AutoAccounting will use. In the above screenshot, if AutoAccounting fails to find a value for the Company Segment from the sources you specified in the AutoAccounting setup, then it will use the value 01 for the first segment.

     c. AutoAccounting overrides distributions from RA_INTERFACE_DISTRIBUTIONS_ALL

You have populated the RA_INTERFACE_DISTRIBUTIONS_ALL and expect this to be the data used by AutoInvoice, but instead, AutoAccounting is kicking in and the data you interfaced is being ignored.

Make sure that the Line Transaction Flexfield values in RA_INTERFACE_DISTRIBUTIONS_ALL:
INTERFACE_LINE_CONTEXT + INTERFACE_LINE_ATTRIBUTE1-15 match up to the values in these same fields within RA_INTERFACE_LINES_ALL, because this is how AutoInvoice matches up the Line data with the Distributions data. If the flexfield data does not match, AutoAccounting will assume that you did not provide distributions and will derive the account based on your AutoAccounting setup.

     d. Impact of Profile Option: OE: Item Validation Organization

Consider the following setup:
  • AutoAccounting setup picks up some segments from Standard Line
  • Your environment is setup with Master and Child inventory organizations
  • The same Inventory Item exists in both Master and Child organizations, but the Sales Account associated to the item is different for each organization
Which GL account will AutoAccounting source segments from, will it use the Sales Account setup in the Master or the Child organization?

The Organization you provide in the profile OE: Item Validation Organization determines from what organization the Inventory Item will be retrieved from.

     e. Impact of RA_INTERFACE_LINES.OVERRIDE_AUTO_ACCOUNTING_FLAG

Setting this flag to Y will not cause AutoInvoice to override AutoAccounting. To better understand this flag, we need to explain a bit of history on why it was created.

Oracle Receivables provides a feature Revenue Adjustment, through the Revenue Accounting form (Navigation: Control > Accounting > Revenue Accounting) or Revenue Adjustment API. One of the uses of running Revenue Accounting is to modify the GL accounts derived by AutoAccounting. When this is done, it is typical that subsequent GL distributions created should use the new GL accounts.

To better illustrate, let's take an example of an Invoice with Rules, recognizing revenue immediately. The original model distributions using GL accounts generated by AutoAccounting are:



Let's change the GL account for UNEARN



After running Revenue Recognition and querying this transaction in Revenue Accounting, it shows distributions were created using the new GL account:


   
If I run Revenue Accounting to Unschedule all of the Revenue, the distributions created use the new GL account as expected, and this is the behavior when OVERRIDE_AUTO_ACCOUNTING_FLAG = Y:



Notes:
  1. RA_INTERFACE_LINES_ALL.OVERRIDE_AUTO_ACCOUNTING_FLAG = 'Y',  does not cause AutoInvoice to override AutoAccounting at the time the transaction is created in Receivables. The value of this flag is migrated to RA_CUSTOMER_TRX_LINES_ALL.OVERRIDE_AUTO_ACCOUNTING_FLAG and is referenced later on, when Revenue Accounting is done on this transaction. During Revenue Accounting, the code will check to see what the value is in RA_CUSTOMER_TRX_LINES_ALL.OVERRIDE_AUTO_ACCOUNTING_FLAG, when it is 'Y', AutoAccounting will not be invoked to determine the GL accounts to use, instead it will use the GL accounts from the existing GL distributions.

  2. In Release 12, for an invoice with rules, behavior is always as if  RA_CUSTOMER_TRX_LINES_ALL.OVERRIDE_AUTO_ACCOUNTING_FLAG = Y.

     f. Impact of Cross Validation Rules

Since AutoAccounting handles the determination of which segments of a GL account to retrieve from various sources such as Salesreps, Transaction Types, Sites, Standard Lines and so on, you may encounter issues wherein the complete GL account cannot be properly assembled because it has violated Cross Validation Rules.

Cross-validation (also known as cross-segment validation) controls the combinations of values you can create when you enter values for key flexfields. A cross-validation rule defines whether a value of a particular segment can be combined with specific values of other segments. Cross-validation is different from segment validation, which controls the values you can enter for a particular segment. Cross-validation rules prevent the creation of combinations that should never exist.

When you have checked your AutoAccounting setup and validated that sources have been defined correctly, and yet you continue to encounter errors wherein some segments still cannot be derived and the complete GL accounting segments cannot be assembled completely, please check your Cross Validation Rules. Fo rmore information on how Cross Validation works and how to set it up, please review Chapter 5, Using Additional Flexeld Features in the Oracle Applications Flexfields Guide


3. Troubleshooting issues in Imported Transactions in the Transaction Workbench

     a. Warning: Rerun AutoAccounting when maintaining AutoInvoice sourced transactions

When a transaction created via AutoInvoice is queried in the transaction workbench, navigating to Line Items invokes a popup window asking:  ReRun AutoAccounting? even when no changes have been made to the data.

This issue is due to leading or trailing spaces in the data uploaded from the RA_INTERFACE_LINES table.

To help identify which tables have leading or trailing spaces, and strip these spaces out of the data, Oracle has created a script that you can locate in your environment under the FND_TOP directory:  $FND_TOP/sql/afchrchk.sql

First, run this script in a Test environment. If you reply N to the question:  Automatically fix all errors found (Y/N)? then it will just list the tables that have this issue. If you want to strip the data of leading/trailing spaces, re-run the script an reply with Y to the same question.

After verifying that the issue is fixed when querying the transaction in the Transaction workbench, you can promote the fix to your Production instance.

To avoid hitting this issue, ensure that the data populated into the interface tables do not contain leading or trailing spaces.

Still have Questions?

To discuss this information further with Oracle experts and industry peers, we encourage you to review, join or start a discussion in the .

If you feel that a Service Request is needed, please be sure to provide the information listed below.
  • Test to see if the problem can be replicated in the AR transaction workbench
  • Include the AutoInvoice Exception Report if any
  • Include the AutoInvoice Concurrent Process log file (see )
  • Enable and include the FND debug log file generated by AutoInvoice (see )
  • Include Diagnostics:
    • Oracle Receivables AutoInvoice Interface Data Collection Test, this would show support what the interface data looks like
    • Oracle Receivables AutoInvoice Setup Test, this would include file versions and AutoAccounting setup
For information on the diagnostic, please review the Diagnostic catalogs:
Release 11.5: see , E-Business Suite Diagnostics 11i Test Catalog
Release 12.x: see , E-Business Suite Diagnostics References for R12
Once you have identified your release, locate the right note for example, in 12.0.6, , R12.0.6+ : Oracle Receivables AutoInvoice Interface Data Collection Test

References

- AutoInvoice Setup for Release 12: A Case Study Using a Simple Script
- Setting Up AutoAccounting Rules In Receivables [Video]
- Troubleshooting AutoInvoice for Oracle Receivables Release 11.5 Through 12
- Setting Up and Troubleshooting Tax Accounting for R12 E-Business Tax (EBTax) and Oracle Receivables

Show Related Information Related


Products
  • Oracle E-Business Suite > Financial Management > Credit to Cash > Oracle Receivables
  • Oracle E-Business Suite > Financial Management > Credit to Cash > Oracle Receivables
Keywords
RA_INTERFACE_LINES_ALL; RAXMTR; RAXTRX; AUTOACCOUNTING; AUTOINVOICE; AUTOACCOUNTING~RULES; TRANSACTION~SOURCES; TRANSACTION~WORKBENCH
Errors
ORA-20000

Back to topBack to top

Article Rating
Rate this document
Excellent
Good
Poor
Did this document help you?
Yes
No
Just browsing
How easy was it to find this document?
Very easy
Somewhat easy
Not easy
Comments
阅读(13672) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~