Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 13

Lets start with Customer ..why it is important in your business.

As per encyclopedia the customer is defined as:

"A customer is someone who makes use of or receives the products or services of an
individual or organization." Its means it is one who become a entity in your business
world, irrespective of your line of business. If you are manufacturer the customer is one
to whom you provide the product and get the money or services for which your get paid.

Time to time the customer definition has been changed and now in today economy it can
be redefined as:

A customer..may include users, consumers, demanders, commanders, and requestors.


Any person or entity who interacts directly or indirectly with any business system, thus it
can be a client within internal departments, a supplier from the procurement process, an
employee, or someone who is ringing up the cash register.

What information is important to keep in Business?

Typical information required for any customer is address, contact, bank , profile,class.
Oracle standard form does have more than 8 tabs which hold most of the information. A
typical flow of customer setup in Oracle is as;

Fig: Standard Setup process for customer


Fig : Entity Model for Customer Setup

What is Customer Interface ?

Customer Interface is a oracle seeded tool that is used to import and validate current or
historical customer information from other systems into Receivables. Once customer
information is imported into the system, you can use Customer Interface to import
additional data for that customer (such as additional contacts or addresses) and to update
existing information. This is yet another options to enter Customer information other than
manually update and enter new information using the Customer windows.

Customer Interface and Customer in pre 11i and 11i

If you are coming from some old version, if have been noticed few things has been
changed:
• Customer tables have changed, to move customer in TCA model, it means
o The HZ tables
o The role of Parties
 Note:Added in order to track prospective customers Due to CRM
integration and adds “benefit” of having all customer
“groups” stored in one location.

11i tables used by Customer Interface

• Pre 11i versions used only 12 tables


• 11i version uses 23+ tables
• Only 4 of those tables remain the same
• Main Customer tables have changed
• Revised look and feel to Customer screen, too

The Change

Here is significant changes has been noticed from pre 11i and r11i version.

FIND screen

in 11i Find window automatically appears while calling customer screen.


most important , the Match Results window now is included in 11i, and it represnt
multiple lines due to Parties and Accounts:

Customer screen
Customer Tables

• Previous Tables that have changed


o RA_CUSTOMERS
o RA_ADDRESSES
o RA_SITE_USES
o RA_PHONES
o RA_CONTACTS
o AR_CUSTOMER_PROFILES
o RA_CUSTOMER_RELATIONSHIPS
o AR_CUSTOMER_PROFILE_AMOUNTS
• Tables that remain the same
o RA_CUST_RECEIPT_METHODS
o AP_BANK_BRANCHES
o AP_BANK_ACCOUNTS
o AP_BANK_ACCOUNT_USES

TCA model - how its drived

• RA_CUSTOMERS, previously the main customer table is now a view.This


become view which consists of data in HZ_CUST_ACCOUNTS and
HZ_PARTIES tables.
• New Customer Tables - also known as HZ Tables
• The new HZ Customer Tables have tables for Customer Accounts and Parties

Customer Table Vs HZ Tables

Here is summarize information for both for them:


Considering Customer as Parties

• HZ_PARTIES stores information about organizations, groups, and people.


• If a party becomes a customer then the information for the customer is stored in
the HZ_CUST_ACCOUNTS table.
• A Party record in the Parties table can have multiple customer account records in
the Customer Accounts table.
• One row is created in HZ_PARTIES for every customer record that is imported
through the Customer Interface.
• CRM uses the customer module making it a requirement for all customers to have
a party id and customer id.
Customer Interface : The Flow:

The following diagram shows how customer information is imported into the customer
tables.

11i Customer Interface Vs Oracle Base table

Here is summarize information for interface Vs base table. Once Customer Import get
completed successfully , the data moved to these tables:
Please take a note, the bank model has been changed in r12, this will have till 11.5.10.2.
If you are looking for R12 , refer to trm guide.

Where to start for Customer Interface

1.The first steps would be your is preparing Receivables setup activity

• Be sure to set up new data in Receivables that the Customer Interface should
import. For example:
o AutoCash Rule Sets
o AutoInvoice Grouping Rules
o Collectors
o Customer Addresses
o Customer Bank Information
o Customer Exemptions
o Customer Profile Classes
o Demand Classes
o Dunning Letter Sets
o Freight Carriers
o Payment Methods
o Payment Terms
o Statement Cycles
o Tax Codes
• Be sure to also set up Lookups in Receivables that the Customer Interface should
import. These are the lookups:
o Countries
o Site Use Codes
o Credit Ratings
o Risk Codes
o Account Statuses
o Communication Types
o Customer Classes

2. Next is to map the Interface Tables

• RA_CUSTOMER_INTERFACE_ALL
o ORIG_SYSTEM_CUSTOMER_REF
o CUSTOMER_NAME
o CUSTOMER_STATUS
o INSERT_UPDATE_FLAG
o CUSTOMER_NUMBER
o ORIG_SYSTEM_ADDRESS_REF
o PRIMARY_SITE_USE_FLAG
o SITE_USE_CODE
o ADDRESS1
o COUNTRY
o LOCATION
• RA_CUSTOMER_PROFILES_INT_ALL
o CUSTOMER_PROFILE_CLASS_NAME
o ORIG_SYSTEM_CUSTOMER_REF
o INSERT_UPDATE_FLAG
o CREDIT_HOLD
o ORIG_SYSTEM_ADDRESS_REF
• RA_CONTACT_PHONES_INT_ALL
o ORIG_SYSTEM_CUSTOMER_REF
o ORIG_SYSTEM_TELEPHONE_REF
o TELEPHONE
o TELEPHONE_TYPE
o INSERT_UPDATE_FLAG
o ORIG_SYSTEM_ADDRESS_REF
o ORIG_SYSTEM_CONTACT_REF
o CONTACT_LAST_NAME
• RA_BANKS_INTERFACE
o ORIG_SYSTEM_CUSTOMER_REF
o PRIMARY_FLAG
o START_DATE
o BANK_ACCOUNT_NAME
oBANK_ACCOUNT_CURRENCY_CODE
oBANK_ACCOUNT_NUM
oBANK_BRANCH_NAME
oORIG_SYSTEM_ADDRESS_REF
• RA_CUST_PAY_METHOD_INTERFACE
o ORIG_SYSTEM_CUSTOMER_REF
o START_DATE
o PAYMENT_METHOD_NAME
o PRIMARY_FLAG
o ORIG_SYSTEM_ADDRESS_REF

3. RUN the Import Program

• Run Import after AR Customer Interface tables have been populated


• Program will validate the data in the interface table before creating records in
Receivables
• Run the Customer Interface process through the Submit Request window
• But, a separate navigational path is also provided
Interfaces -> Customer
• Check output file for errors

• Make corrections and repeat import process

Not Surprise , if you get these....Common Errors..very common


• a3: Bill_To_Orig_Address_Ref is not a valid bill-to address
o Verify the Bill-To address reference is valid. Keep in mind that when
using the bill-to reference with a ship-to address record... the bill-to must
already exist in Receivables.
o Note: Ran into this issue. Try running bill-to records through the interface
first and ship-to records as second batch - this will resolve the error. Do
not Interface with both in the same batch.
• a1:Customer record for insert must have validated profile record defined
o New customers and each Bill-To record must have a customer level
profile in the RA_CUSTOMER_PROFILES_INT_ALL table.
• a8: Conflicting profile classes specified for this customer/site
o Profile classes for customer and bill-to must be the same. Sites cannot
have a profile class different from the customer.
• J1: Site_USE_CODE is not updateable.
• J3: LOCATION is not updateable.
• J2: PRIMARY_SITE_USE_FLAG is not updateable.
o Keep in mind that site_use_code, primary_use_flag, and location may not
be updateable through the Customer Interface
• A3: Customer reference for insert is already defined.
• A5: Customer Number already assigned to a different customer.
o Customer reference and Customer number are values that must be unique.
Verify the customer reference or customer number does not already exist
for another customer.

Tips and Technique

1. Check out some of the Profile Options hitting Customer Import

• HZ: Generate Party Number


o This the profile option can be updated at Site, Application, Responsibility
and User levels.This profile option determines whether party number
should be auto-generated. If value is 'No',means party number must be
passed in by the user else if 'Yes' or if the value is not set, party number
will be auto-generated.
• HZ: Generate Party Site Number
o same as above for party site number set at all leval.
• HZ: Internal Party
o This profile option is used as a part of CRM setup. This must be set if
CRM is installed. It is used for data migration purpose.
• HZ: Generate Contact Number
o This profile option determines whether contact number should be auto-
generated.If the value is 'No', contact number must be passed in by the
user. If the value is 'Yes' or if the value is not set, contact number will be
auto-generated.

2. Automatic sequence number for customer number


Many times AR department is not like oracle seeded number which start by default
1000.Options are there:

From R11 and 11i, you cannot change the sequence via the forms and therefore any
change that you make to the sequence would have to be
through SQLPlus and that would not be supported.

To set the sequence number

Step 1. In the Application Developer responsibility,


Menu: Application=>Database=>Sequence
Step 2. Query on sequence RA_CUSTOMERS_NUM_S
This will bring up the sequence for the customer numbers and you can enter the number
that you want it to start from.

To set automatic numbering for customer after setting the sequence:

Step 1. Menu:=>System=>System Options


Step 2. Region - Invoicing and Customers
Step 3. Check the box for Automatic Customer Numbering.

3. When doing Migration from other system, adviced to use TRIM Function

• When loading interface tables remove all trailing spaces from import data.
Example: LTRIM(RTRIM(customer_name))

4.If importing large number of customers, run in smaller batches instead of all at
once.

Oracle benchmark is about 10,000 records per batch is ideal, it is suggested to keep the
batch size small.

5.When rolling out in Multi-Org , then you must populate the org_IDs in the
interface tables and run the customer interface for each organization set-up
responsiblity.

You might also like