Thursday 25 September 2014

Customer Interface Error C5

Customer Interface Errors Out the data with the Error Code : C5

C5 --> Customer reference has two different customer class codes defined

This error occurs when we have multiple records for the same customer but different values of Customer Class code , there can be different scenarios for this error


  • Creating a Site for Existing Customer : When we are creating a new site for an existing customer then the Customer Class code value for the data in the interface needs to be same as the Customer existing in Oracle , if there is any mismatch in the Customer Class code then Customer Interface will error out the record
  • Creating a new customer with multiple sites  : In this case too all the records need to have the same Customer Class code , if the values mismatch then 1 record will be progressed to create the customer and others will error with this code
Update the data in Customer interface with the correct data and re-process the records

Wednesday 24 September 2014

AutoInvoice Grouping Rules

When Data is populated into the AR interface and we run the Auto Invoice import Program , Oracle will process the data in the interface and Create invoices for them .

Eg : If we have 10 records in the Ar interface table and we know that all these records belong to 1 invoice then Oracle then when the AutoInvoice import program runs it should group these 10 lines to a Single invoice header . this grouping is done by Oracle on the basis of the Grouping Rules.

Grouping rules specify which columns of the AR Interface (ra_interface_lines_all) when grouped together will form 1 set of records , this Global set will become the invoice header and the individual lines will become the invoice lines.

Oracle has specified a set of Columns in Oracle R12 as Mandatory Grouping columns i.e. grouping will happen based on these columns and in addition users can specify additional Columns by creating different grouping rules and attaching it to the invoice batch source.

Below is the of columns that Oracle specifies as mandatory grouping columns

AGREEMENT_ID
APPLICATION_ID
BILLING_DATE
COMMENTS
CONS_BILLING_NUMBER
CONTRACT_ID
CONVERSION_DATE
CONVERSION_RATE
CONVERSION_TYPE
CREDIT_METHOD_FOR_ACCT_RULE
CREDIT_METHOD_FOR_INSTALLMENTS
CURRENCY_CODE
CUSTOMER_BANK_ACCOUNT_ID
CUST_TRX_TYPE_ID
DEFAULT_TAXATION_COUNTRY
DOCUMENT_NUMBER
DOCUMENT_NUMBER_SEQUENCE_ID
DOCUMENT_SUB_TYPE
GL_DATE
HEADER_ATTRIBUTE1-15
HEADER_ATTRIBUTE_CATEGORY
HEADER_GDF_ATTRIBUTE1-30
HEADER_GDF_ATTR_CATEGORY
INITIAL_CUSTOMER_TRX_ID
INTERNAL_NOTES
INVOICING_RULE_ID
LEGAL_ENTITY_ID
ORIG_SYSTEM_BILL_ADDRESS_ID
ORIG_SYSTEM_BILL_CONTACT_ID
ORIG_SYSTEM_BILL_CUSTOMER_ID
ORIG_SYSTEM_SOLD_CUSTOMER_ID
PAYMENT_ATTRIBUTES
ORIG_SYSTEM_BATCH_NAME
PAYMENT_SET_ID
PREVIOUS_CUSTOMER_TRX_ID
PRIMARY_SALESREP_ID
PRINTING_OPTION
PURCHASE_ORDER
PURCHASE_ORDER_DATE
PURCHASE_ORDER_REVISION
REASON_CODE
RECEIPT_METHOD_ID
RELATED_CUSTOMER_TRX_ID
SET_OF_BOOKS_ID
TAXED_UPSTREAM_FLAG
TERM_ID
TERRITORY_ID
TRX_DATE
TRX_NUMBER

when running Autoinvoice oracle will perform a grouping based on these columns to determine how many invoices need to be created , In addition if any custom Grouping Rules are specified those columns will also be included.

Many a times you might be facing the issue that you expected the lines to create 1 single invoice but multiple invoices got created , it is because of the Grouping rules and whenever you face such an issue check the Grouping Rules.

A common issue faced is the Error : Duplicate Invoice number , If you are supplying Invoice number in the AR interface and have not enabled Duplicate transactions Numbers in the setup then in case the grouping rules of an invoice face Auto Invoice will give the error Duplicate Invoice Number.

Make sure to check the grouping rules thoroughly

SQL to Fetch Profile Options

SELECT po.user_profile_option_name,
po.profile_option_name "NAME" ,
DECODE (TO_CHAR (pov.level_id), '10001', 'SITE' , '10002', 'APP', '10003', 'RESP', '10004', 'USER', '???') "LEV",
DECODE (TO_CHAR (pov.level_id) , '10001', '', '10002', app.application_short_name , '10003', rsp.responsibility_key, '10004', usr.user_name, '???') "CONTEXT",
pov.profile_option_value "VALUE"
FROM apps.fnd_profile_options_vl po,
apps.fnd_profile_option_values pov,
apps.fnd_user usr,
apps.fnd_application app,
apps.fnd_responsibility rsp
WHERE 1=1
--AND (po.profile_option_name = 'ICX_NUMERIC_CHARACTERS')
AND pov.application_id = po.application_id
AND pov.profile_option_id = po.profile_option_id
AND usr.user_id(+) = pov.level_value
AND rsp.application_id(+) = pov.level_value_application_id
AND rsp.responsibility_id(+) = pov.level_value
AND app.application_id(+) = pov.level_value
ORDER BY "NAME", pov.level_id, "VALUE"

The above SQL can be used to get the profile option values at Different levels in the system

SQL for Material Transaction/Inventory to General Ledger cia SLA Journal check


select gjh.name,xah.EVENT_TYPE_CODE,xdl.SOURCE_DISTRIBUTION_TYPE,xdl.SOURCE_DISTRIBUTION_ID_NUM_1,xdl.ACCOUNTING_LINE_CODE,mmt.transaction_date,msib.segment1
  ,gcc.concatenated_segments gl_line_acct
  ,gcc_mta.concatenated_segments mtl_txn_acct
from gl_je_headers gjh,
     gl_je_lines gjl,
     xla_ae_lines xal,
     xla_ae_headers xah,
     apps.xla_distribution_links xdl,
     gl_code_combinations_kfv gcc,
     mtl_transaction_accounts mta,
     gl_code_combinations_kfv gcc_mta,
     apps.mtl_material_transactions mmt,
     apps.mtl_system_items_b msib
where gjh.je_header_id = gjl.je_header_id
AND gjh.ledger_id = gjl.ledger_id
and gjl.gl_sl_link_id = xal.gl_sl_link_id
and xal.ae_header_id = xah.ae_header_id
and xdl.ae_header_id = xal.ae_header_id
and xdl.ae_line_num = xal.ae_line_num
and gcc.code_combination_id = gjl.code_combination_id
 and xdl.source_distribution_id_num_1 = mta.inv_sub_ledger_id
and mta.REFERENCE_ACCOUNT = gcc_mta.code_combination_id
and mta.transaction_id = mmt.transaction_id
and msib.inventory_item_id = mmt.inventory_item_id
and msib.organization_id = mmt.organization_id
and gjh.name = ‘’

The above SQL gives details of material transactions and corresponding Journals created for them

customer interface Error code C1

Customer Interface Errors Out the data with the Error Code : C1

C1 --> This customer reference has two different customer names defined

This error occurs when we have multiple records for the same customer but different values of Customer Name , there can be different scenarios for this error


  • Creating a Site for Existing Customer : When we are creating a new site for an existing customer then the CUSTOMER NAME value for the data in the interface needs to be same as the Customer existing in Oracle , if there is any mismatch in the name or case then Customer Interface will error out the record
  • Creating a new customer with multiple sites  : In this case too all the records need to have the same CUSTOMER NAME , if the values mismatch then 1 record will be progressed to create the customer and others will error with this code
Update the data in Customer interface with the correct data and re-process the records