Sie sind auf Seite 1von 60

Understanding data flow for “Standard Order”

1. Order Entry
This is first stage when Order in enter in system. When the order is entered it basically
creates a record in order headers and Order Lines table.
oe_order_headers_all (Here the flow_status_code as ‘Entered’)
oe_order_lines_all (flow_status_code as entered) (order number is generated)

2. Order Booking
This is next stage, when Order which is entered in step 1 is booked and Flow status changed
from ‘entered’ to ‘Booked’. At this stage, these tables get affected.
oe_order_headers_all (flow_status_code as ‘Booked’ ,booked_flag updated)
oe_order_lines_all (flow_status_code as awaiting shipping, booked_flag updated)
wsh_new_deliveries (status_code ‘OP’- open)
wsh_delivery_details (released_status ‘R’ -ready to release)
Same time, Demand interface program runs in background and insert into inventory tables
mtl_demand
3. Reservation
This step is required for doing reservations ‘schedule order program’ runs in the background
and quantities are reserved. Once this program get successfully completed, the
mtl_reservations table get updated.
4. Pick Release
Ideally pick release is the process which is defined in which the items on the sales order are
taken out from inventory.
Normally pick release SRS program runs in background. Once the program gets completed
these are the tables get affected:
oe_order_lines_all (flow_status_code PICKED)
wsh_delivery_details (released_status ‘S’-submitted for release)
mtl_txn_request_headers
mtl_txn_request_lines
(move order tables.Here request is generated to move item from saleable to staging sub
inventory)
Mtl_material_transactions_temp (link to above tables through move_order_header_id/line_id
5. Pick Confirm
Items are transferred from saleable to staging Sub inventory.
mtl_material_transactions
mtl_transaction_accounts
wsh_delivery_details (released_status ‘Y’- Released )
wsh_delivery_assignments
6. Ship Confirm
Here ship confirm interface program runs in background. Data removed from
wsh_new_deliveries
oe_order_lines_all (flow_status_code shipped)
wsh_delivery_details (released_status ‘C’- Shipped)
mtl_transaction_interface
mtl_material_transactions(linked through Transaction source header id)
mtl_transaction_accounts
Data deleted from mtl_demand,mtl_reservations
Item deducted from mtl_onhand_quantities
7. Enter Invoice
This is also called Receivables interface that mean information moved to accounting area for
invoicing details.
Invoicing workflow activity transfers shipped item information to Oracle Receivables.

Page 1 of 60
ra_interface_lines_all (interface table into which the data is transferred from order
management)
Then Autoinvoice program imports data from this
Table which get affected into this stage are receivables base table.
ra_customer_trx_all (cust_trx_id is primary key to link it to trx_lines table and trx_number is
the invoice number)
ra_customer_trx_lines_all (line_attribute_1 and line_attribute_6 are linked to header_id (or
order number) and line_id of the orders)
8. Complete Line
In this stage order line leval table get updated with Flow status and open flag.
oe_order_lines_all (flow_status_code ‘shipped’, open_flag ‘N’)
9. Close Order
This is last step of Order Processing. In this stage only oe_order_lines_all table get updated.
These are the table get affected in this step.
oe_order_lines_all (flow_status_code ‘closed’,open_flag ‘N’•)
These are the typically data flow of an order to cash model for a standard order.

The Internal Requisition/Internal Orders process is used for requesting and transferring material from
one inventory location to another. An Internal Requisition is initiated in Oracle Purchasing. Order
Management receives information from the Purchasing Application to create an Internal Sales Order.
When the sales order is shipped, the requisition can be received to record receipt of goods.

To generate Internal Sales Order user has to follow the following process steps:
Enter Requisition in Oracle Purchasing & Approve the Internal Requisition
Run ‘Create Internal Sales Order’ Process for transferring requisitions to Order Management.
Run ‘Import Order’ Process in Order Management to create Sales order.
Release Sales Order
After Order Import completes successfully, book, pick and ship the internal order.
Receive against the Internal Requisition.

The Data Flow for Internal orders

Page 2 of 60
Drop shipments occur when your customer orders product from you, you order the product from
your supplier, and your supplier ships the product directly to your customer.
Order Management sends information to the Purchasing Application to create that PO, and then
when that PO is received (to indicate shipment from the supplier to your customer), the order line is
automatically updated to indicate that it was fulfilled.
To generate Internal Sales Order user has to follow the following process steps:
 Create a Drop Ship Sales Order
 Use the Purchase Release program to create a Requisition from the Sales Order.
 Use the Auto Create function to create a PO from this Requisition.
 Approve the PO.
 Enter a Receipt for the drop shipped goods after the Supplier sends a confirmation.
 Invoice the Customer.

Drop Ship Setups


Create Sale Order
Navigation: Order Management Super User >> Order Organizer

Page 3 of 60
Click on ‘New Order’

Enter Order Header Information

Page 4 of 60
Click on ‘Line Items’ tab

Click the ‘Shipping’ tab and enter Item Number, Quantity and Receiving Organization

Page 5 of 60
Click ‘Book Order’ button.

If order is booked successfully then a confirmation message will be displayed as shown in the below
picture.

Click on ‘Actions’ Button under ‘Line Items’ tab

Page 6 of 60
Select ‘Additional Line Information’ from the List of values and click OK

Select ‘Drop Ship’ tab.


At this stage we do not have any purchase orders created related to this drop ship order.

Page 7 of 60
Close the ‘Additional Line Information’ form.
Make a note that the line status is ‘Booked’ at this stage.

Let’s see the workflow status.


Click on Tools >> workflow status

Page 8 of 60
Current activity will be ‘Purchase Release Eligible’ with a status of ‘Notified’.

Close the workflow status page.


Go back to ‘Line Items’ and select the line. Right click on it and select ‘Progress Order’ option as
shown below.

Page 9 of 60
Select ‘Purchase Release – Eligible’ option from List of Eligible Activities.

Click OK.
The ‘Line Status’ changes from ‘Booked’ to ‘Awaiting Receipt’.

Page 10 of 60
Click on Actions button
Select ‘Additional Line Information’.

Make a note that we still do not have ‘Purchase Order’ created for this drop ship order.

Page 11 of 60
Close the order form.
Navigation: Order Management Super User >> Purchase Release

A Concurrent request submits screen will pop up.


Click on Parameters and enter the sales order number that we created above. By doing this
concurrent request will just process this particular order instead of releasing all pending drop ship
order requests.

Page 12 of 60
Click Submit

Close all open forms.


Navigation: Purchasing Super User >> Reports >> Run

Select ‘Requisition Import’ program and click on parameters text box.


Enter parameters as follows
Import Source: ORDER ENTRY
Import Batch ID: Leave it blank
Group By: Item+
Last Requisition Number: Leave it blank

Page 13 of 60
Multiple Distributions: No
Initiate Approval after ReqImport: Yes

Click OK.
Wait until two concurrent requests ‘Requisition Import’ and ‘Create Releases’ are completed.

Now go back Order Management Super user responsibility


Click on Order Organizer and enter the sales order number.
Click finds to open the sales order.
Select Line Items >> Actions >> Additional Information.
At this stage a purchase order is created related to this sales order.
Purchase order is in ‘Approved’ status because we initiated the approval process by setting the
parameter ‘Initiate Approval Process after ReqImport’ to yes in the above concurrent request.

If you have EDI / e-commerce gateway setup to drop the purchase order information to supplier, it
should trigger now.
Now Supplier has the purchase order information.
Supplier ships the parts to customer and will send us back the confirmation.
Once the confirmation is received we need to create a receipt.
Navigation: Inventory >> Transactions >> Receiving >> Receipts.

Page 14 of 60
Select the Receiving Organization that is selected on shipping tab of line items form.
Click the purchase order number which is found on the additional line information form or the sales
order that is created.
Click find.

The Receipt form should open with the item information as shown below.
Check mark the Left checkbox and if the item is Lot or Serial controlled then click on ‘ Lot – Serial’
button.

Page 15 of 60
Enter the lot number. In my case the item being used is lot controlled.
Click done.

Save and close the form.


Go back to Order Management and check the line status on the order form.

Page 16 of 60
Now the line is shipped. To close the line run the ‘workflow background process’ concurrent
program.

Once the workflow background process completed the line status should change from ‘shipped’ to
‘closed’.

Back to back order


Steps involved in back to back order process in oracle apps
Enter Sales Order
Book Sales Order
Progress Sales Order to create Supply Order
Requisition Import
Create Purchase / Inventory Receipt
Pick Release Sales Order
Ship Confirm

Navigation: Order Management Super User >> Orders, Returns >> Order Organizer

Page 17 of 60
Enter Customer name and remaining fields will populate automatically from customer data

Page 18 of 60
Navigate to “Line Items” tab

Enter Item and Quantity information

Page 19 of 60
Save: Ctl + S
Current Status of Sales order will be “Entered” both at Header level and Line Level

Click on “Book” button and a pop up will confirm

Page 20 of 60
Status on Order header will be changed to “Booked” and Line level status will be “Supply Eligible”

Keep Cursor in Line Status field and right click to bring a new menu. From the menu select
“Progress Order” option

Page 21 of 60
Select “Create Supply Order – Eligible” option

Order line status will be changed to “External Req Requested”

Page 22 of 60
Navigation: Purchasing Responsibility
Navigation: View >> Requests >> Submit a New Request >> Single Request >> Requisition Import

Leave default parameters as it is and click OK.

Page 23 of 60
Navigation: Order Management Super User >> Orders, Returns >> Order Organizer >> Query SO
>> Line Items
The Sales Order line status will be changed to “PO Open”

Click on “Actions” and select “Supply To Order Workbench”

Page 24 of 60
You will see a new window as shown below.
Click on “Purchase Order” link

Page 25 of 60
Purchase

Purchase Order Number will be found under “Doc Num”

Page 26 of 60
Navigation: Purchasing responsibility >> Receipts

Select the organization into which we need to receive the item

Enter Purchase Order number and click Find button.

Page 27 of 60
Select the “check box” on the left and enter “Sub Inventory” into which you would like to receive the
quantity
Save: Ctl + S

Navigation: Order Management Responsibility >> Sales Order form >> Query SO >> Line Items
The status of line will be “Awaiting Shipping”

Page 28 of 60
From here on we will need to follow normal “Order to cash” cycle flow.

Order to cash

Order to cash process steps can be listed as below

Enter the Sales Order


Book the Sales Order
Launch Pick Release
Ship Confirm
Create Invoice
Create the Receipts either manually or using Auto Lockbox ( In this article we will concentrate on
Manual creation)
Transfer to General Ledger
Journal Import
Posting

Let’s get into the details of each step mentioned above.

Enter the Sales Order:

Navigation: Order Management Super User Operations (USA)>Orders Returns >Sales Orders
Enter the Customer details (Ship to and Bill to address), Order type.

Page 29 of 60
Click on Lines Tab. Enter the Item to be ordered and the quantity required.

Line is scheduled automatically when the Line Item is saved.


Scheduling/unscheduling can be done manually by selecting Schedule/Un schedule from the Actions
Menu.
You can check if the item to be ordered is available in the Inventory by clicking on Availability
Button.

Save the work.


Underlying Tables affected:
In Oracle, Order information is maintained at the header and line level.

Page 30 of 60
The header information is stored in OE_ORDER_HEADERS_ALL and the line information in
OE_ORDER_LINES_ALL when the order is entered. The column called FLOW_STATUS_CODE
is available in both the headers and lines tables which tell us the status of the order at each stage.
At this stage, the FLOW_STATUS_CODE in OE_ORDER_HEADERS_ALL is ‘Entered’.

Book the Sales Order:

Book the Order by clicking on the Book Order button.

Now that the Order is BOOKED, the status on the header is change accordingly.

Underlying tables affected:


At this stage:
The FLOW_STATUS_CODE in the table OE_ORDER_HEADERS_ALL would be
‘BOOKED’
The FLOW_STATUS_CODE in OE_ORDER_LINES_ALL will be
‘AWAITING_SHIPPING’.
Record(s) will be created in the table WSH_DELIVERY_DETAILS with
RELEASED_STATUS=’R’ (Ready to Release)
Also Record(s) will be inserted into WSH_DELIVERY_ASSIGNMENTS.
At the same time DEMAND INTERFACE PROGRAM runs in the background and inserts
into MTL_DEMAND.

Launch Pick Release:


Navigation: Shipping > Release Sales Order > Release Sales Orders.
Key in Based on Rule and Order Number
Page 31 of 60
In the Shipping Tab key in the below:
Auto Create Delivery: Yes
Auto Pick Confirm: Yes
Auto Pack Delivery: Yes

In the Inventory Tab:


Auto Allocate: Yes
Enter the Warehouse

Click on Execute Now Button.


On successful completion, the below message would pop up as shown below.

Page 32 of 60
Pick Release process in turn will kick off several other requests like Pick Slip Report,
Shipping Exception Report and Auto Pack Report

Underlying Tables affected:


If Auto create Delivery is set to ‘Yes’ then a new record is created in the table
WSH_NEW_DELIVERIES.
DELIVERY_ID is populated in the table WSH_DELIVERY_ASSIGNMENTS.
The RELEASED_STATUS in WSH_DELIVERY_DETAILS would be now set to ‘Y’ (Pick
Confirmed) if Auto Pick Confirm is set to Yes otherwise RELEASED_STATUS is ‘S’ (Release to
Warehouse).

Pick Confirm the Order:

IF Auto Pick Confirm in the above step is set to NO, then the following should be done.
Navigation: Inventory Super User > Move Order> Transact Move Order
In the HEADER tab, enter the BATCH NUMBER (from the above step) of the order. Click FIND.
Click on VIEW/UPDATE Allocation, then Click TRANSACT button. Then Transact button will be
deactivated then just close it and go to next step.

Page 33 of 60
Ship Confirm the Order:

Navigation: Order Management Super User>Shipping >Transactions.


Query with the Order Number.

Click On Delivery Tab

Click on Ship Confirm.

Page 34 of 60
The Status in Shipping Transaction screen will now be closed.

This will kick off concurrent programs like,INTERFACE TRIP Stop, Commercial Invoice, Packing
Slip Report, Bill of Lading
Page 35 of 60
Underlying tables affected:
RELEASED_STATUS in WSH_DELIVERY_DETAILS would be ‘C’ (Ship Confirmed)
FLOW_STATUS_CODE in OE_ORDER_HEADERS_ALL would be “BOOKED”
FLOW_STATUS_CODE in OE_ORDER_LINES_ALL would be “SHIPPED”

Create Invoice:

Run workflow background Process.


Navigation: Order Management >view >Requests

Workflow Background Process inserts the records RA_INTERFACE_LINES_ALL with


INTERFACE_LINE_CONTEXT = ‘ORDER ENTRY’
INTERFACE_LINE_ATTRIBUTE1= Order_number
INTERFACE_LINE_ATTRIBUTE3= Delivery_id
and spawns Auto invoice Master Program and Auto invoice import program which creates Invoice
for that particular Order.

The Invoice created can be seen using the Receivables responsibility


Navigation: Receivables Super User> Transactions> Transactions
Query with the Order Number as Reference.

Page 36 of 60
Underlying tables:
RA_CUSTOMER_TRX_ALL will have the Invoice header information. The column
INTERFACE_HEADER_ATTRIBUTE1 will have the Order Number.
RA_CUSTOMER_TRX_LINES_ALL will have the Invoice lines information. The column
INTERFACE_LINE_ATTRIBUTE1 will have the Order Number.

Create receipt:

Navigation: Receivables> Receipts> Receipts


Enter the information.

Click on Apply Button to apply it to the Invoice.

Page 37 of 60
Underlying tables:
AR_CASH_RECEIPTS_ALL

Transfer to General Ledger:

To transfer the Receivables accounting information to general ledger, run General Ledger Transfer
Program.
Navigation: Receivables> View Requests
Parameters:
Give in the Start date and Post through date to specify the date range of the transactions to be
transferred.
Specify the GL Posted Date, defaults to SYSDATE.
Post in summary: This controls how Receivables creates journal entries for your transactions in the
interface table. If you select ‘No’, then the General Ledger Interface program creates at least one
journal entry in the interface table for each transaction in your posting submission. If you select
‘Yes’, then the program creates one journal entry for each general ledger account.
If the Parameter Run Journal Import is set to ‘Yes’, the journal import program is kicked off
automatically which transfers journal entries from the interface table to General Ledger, otherwise
follow the topic Journal Import to import the journals to General Ledger manually.

Page 38 of 60
Underlying tables:
This transfers data about your adjustments, chargeback, credit memos, commitments, debit memos,
invoices, and receipts to the GL_INTERFACE table.

Journal Import:

To transfer the data from General Ledger Interface table to General Ledger, run the Journal Import
program from Oracle General Ledger.
Navigation: General Ledger > Journal> Import> Run
Parameters:
Select the appropriate Source.
Enter one of the following Selection Criteria:
No Group ID: To import all data for that source that has no group ID. Use this option if you
specified a NULL group ID for this source.
All Group IDs: To import all data for that source that has a group ID. Use this option to import
multiple journal batches for the same source with varying group IDs.
Specific Group ID: To import data for a specific source/group ID combination. Choose a specific
group ID from the List of Values for the Specific Value field.
If you do not specify a Group ID, General Ledger imports all data from the specified journal entry
source, where the Group_ID is null.

Define the Journal Import Run Options (optional)


Choose Post Errors to Suspense if you have suspense posting enabled for your set of books to post
the difference resulting from any unbalanced journals to your suspense account.
Choose Create Summary Journals to have journal import create the following:
• one journal line for all transactions that share the same account, period, and currency and that has a
debit balance
• one journal line for all transactions that share the same account, period, and currency and that has a
credit balance.
Enter a Date Range to have General Ledger import only journals with accounting dates in that
range. If you do not specify a date range, General Ledger imports all journals data.
Choose whether to Import Descriptive Flexfields, and whether to import them with validation.
Click on Import button.

Page 39 of 60
Underlying tables:
GL_JE_BATCHES, GL_JE_HEADERS, GL_JE_LINES

Posting:
We have to Post journal batches that we have imported previously to update the account balances in
General Ledger.
Navigation: General Ledger> Journals > Enter
Query for the unposted journals for a specific period as shown below.

From the list of unposted journals displayed, select one journal at a time and click on Post button to
post the journal.

Page 40 of 60
If you know the batch name to be posted you can directly post using the Post window
Navigation: General Ledger> Journals> Post

Page 41 of 60
Underlying tables:
GL_BALANCES.

SELECT hp.party_name customer


,hca.account_number
,hp.party_number
,ooh.order_number
,ooh.flow_status_code Order_status
,rcta.trx_date Invoice_date
,rcta.trx_number Invoice_number
,rcta.status_trx Invoice_Status
,rcta.invoice_currency_code Invoice_currency
,rctla.line_number
,msi.segment1 Item_number
,rctla.description
,rctla.extended_amount line_amt
,arp.amount_due_original
,arp.amount_due_remaining
,rcta.org_id
,rcta.customer_trx_id
FROM ra_customer_trx_all rcta,
ra_customer_trx_lines_all rctla,
ra_cust_trx_types_all rctt,
ar_payment_schedules_all arp,
hz_cust_accounts_all hca,
hz_parties hp,
mtl_system_items_b msi,
oe_order_lines_all ool,
oe_order_headers_all ooh
WHERE rcta.customer_trx_id = rctla.customer_trx_id
AND msi.inventory_item_id = rctla.inventory_item_id
AND msi.organization_id = 116

Page 42 of 60
AND rcta.cust_trx_type_id = rctt.cust_trx_type_id
AND arp.customer_trx_id = rcta.customer_trx_id
AND rctla.line_type = 'LINE'
AND rcta.org_id = rctla.org_id
AND rcta.bill_to_customer_id = hca.cust_account_id
AND hca.party_id = hp.party_id
AND rctla.interface_line_attribute6 = ool.line_id
AND ool.header_id = ooh.header_id
ORDER BY hp.party_name,rcta.trx_number,rctla.line_number;

Oracle Trading Community Architecture (TCA)

Oracle Trading Community Architecture (TCA) is a data model that allows you to manage complex information
about the parties, or customers, who belong to your commercial community, including organizations, locations, and
the network of hierarchical relationships among them using the TCA registry.

TCA registry is the single source of trading community information for Oracle E-Business Suite applications which
provide user interfaces, batch data entry functionality, and other features to view, create, and update Registry
information.

TCA key entities:

Parties: Parties are the entities of type person/organization that enter into a business relationship

Party Sites: Addresses of the parties

Customers: Parties with whom you have a selling relationship

Customer Accounts: The business relationships between you and your customers

Customer Account Sites: Address of the party used in the case of customer accounts

Locations: Geo-spatial points, usually defined by an address

Contacts: People who have a contact or employment relationship with an organization or person

Contact Points: Means of contact, for example, phone and e-mail address

Process Flow:

This diagram shows the process flow for managing, searching, creating, and updating customer information.

R12 Trading Community Architecture:

Includes following new trading entities:

 Bank and Bank Branches


 Customers
 Suppliers

Page 43 of 60
TCA-Bank and Bank Branches:

The TCA tables used by Cash Management for modeling Banks and Bank Branches are listed below:

Three key CE tables now as:

 CE_BANK_ACCOUNTS for bank accounts


 CE_BANK_ACCT_USES_ALL for account uses by Operating Units & Legal Entities
 CE_GL_ACCOUNTS_CCID for bank account use accounting data

TCA-Customers:

The word “Customer” is the combination of both the “Party layer” and the “Account layer”.

 Party layer exists independent of any selling or buying relationship.


 Customer Account layer exists in the context of a Party and only when a selling relationship exists.
 The Party Layer captures intrinsic truths about a person or organization.
 The Account Layer captures the details describing the Party’s financial relationship with the implementing
organization.
 The Account Layer cannot exist without the Party Layer.

TCA-Suppliers:

Following are the three new AP tables’ technical details for R12 Supplier in TCA. They have the links to TCA
tables which are listed below.

 AP_SUPPLIERS
1. HZ_PARTIES
2. HZ_PERSON_PROFILES
3. HZ_PARTY_USAGE_ASSIGNMENTS
4. HZ_PARTY_RELATIONSHIPS
5.
 AP_SUPPLIER_SITES_ALL
1. HZ_LOCATIONS
2. HZ_LOCATION_PROFILE
3. HZ_PARTY_SITES
4. HZ_PARTY_SITE_USES
5.
 AP_SUPPLIER_CONTACTS
1. HZ_PARTIES
2. HZ_RELATIONSHIPS
3. HZ_PARTY_SITES
4. HZ_ORG_CONTACTS
5. HZ_CONTACT_POINTS

TCA ER-Diagram:

Page 44 of 60
1. Table that holds AR Invoice data

The following tables can give most of the invoice information.

 RA_CUSTOMER_TRX_ALL stores invoice header information.


RA_CUSTOMER_TRX_LINES_ALL stores information about invoice, debit memo, credit
memo, bills receivable, and commitment lines.
 RA_CUSTOMER_TRX_LINES_ALL - Transaction Line information.
 RA_CUST_TRX_LINE_GL_DIST_ALL stores accounting distribution records for all
transaction lines except bills receivable. The RA_CUST_TRX_LINE_GL_DIST_ALL table
stores the accounting records for revenue, unearned revenue, and unbilled receivables for
each invoice or credit memo line.
 HZ_CUSTOMER_ACCOUNTS - Customer information
 RA_CUST_TRX_TYPES_ALL - Customer Transaction Type
 AR_PAYMENT_SCHEDULES_ALL table stores all transactions except adjustments and
miscellaneous cash receipts
 MTL_SYSTEM_ITEMS - Base table for item
 RA_BATCHES_ALL — Information about Transaction

The ER Diagram for a customer Transaction can be easily understood as:

Page 45 of 60
2. Customer Payment

These are the main tables which hold Customer Payment information

 AR_CASH_RECEIPTS_ALL stores one record for each receipt entry.


 AR_CASH_RECEIPT_HISTORY_ALL stores all of the activity that is contained for the life
cycle of a receipt.
 Each row represents one step. Possible statuses are Approved, Cleared, Confirmed, Remitted,
and Reversed.
 AR_MISC_CASH_DISTRIBUTIONS_ALL stores all accounting entries for miscellaneous
cash applications.
 AR_DISTRIBUTIONS_ALL stores the accounting distributions for cash receipts,
miscellaneous receipts, adjustments, credit memo applications, cash receipt applications, and
bills receivable transactions.
 AR_RECEIVABLE_APPLICATIONS_ALL stores all accounting entries for cash and credit
memo applications.
 RA_SALESREPS
 Each row includes the amount applied, status, and accounting flex field information.
 AR_RECEIVABLES_TRX_ALL-This table links accounting information with your
Receivables Activities. Possible types of activities include Adjustment, Miscellaneous Cash,
and Finance Charges. If your type is Miscellaneous Cash, you can associate either a
distribution set or a standard accounting flex field to your Receivables Activity. Oracle
Receivables uses one row for each activity. You use your receivables activities to speed
receipt entry and generate finance charges. The other types of activities that were valid in
release 9 and no longer valid in Release 10 were converted (as part of the upgrade) such that
the actual accounting flex field CODE_COMBINATION_ID is stored in the table instead of
the RECEIVABLES_TRX_ID. In Release 9, all of these references were in
AR_BATCH_SOURCES; they are now in AR_RECEIPT_METHOD_ACCOUNTS_ALL.
The primary key for this table is RECEIVABLES_TRX_ID.

The ER Diagram for a customer Payment can be easily understood as:

Page 46 of 60
AR Interview Questions – Technical and Functional

How many reporting currencies can be attached to Primary Set of Books?

We can have a total of 8 SOB’s (including the Primary SOB). Therefore, we can have 7 Reporting
SOB.

What are Different types of transactions in AR?


There are 7 types of transactions in AR- Invoice, Debit memo, Credit memo, Chargeback, Deposits,
Guaranty, and Bills Receivable.

What is the use of lockboxes?


Auto Lockbox (or Lockbox) is a service that commercial banks offer corporate customers to enable
them to outsource their accounts receivable payment processing. An Auto Lockbox operation can
process millions of transactions a month. Auto Lockbox eliminates manual data entry by
automatically processing receipts that are sent directly to your bank. You specify how you want this
information transmitted and Receivables ensures that the data is valid before creating Quick Cash
receipt batches.
Steps for lock box are :
1. The first step involves reading and formatting data from your bank file into Auto Lockbox tables.
2. The second step involves submitting the validation program which checks data in the Auto
Lockbox tables for compatibility with Receivables.
3. Once data is validated, it is transferred into Quick Cash tables. At this point, you can optionally
query your receipts in the Quick Cash window and change how they will be applied before
submitting the final step,
4. Post Quick Cash. Submitting Post Quick Cash updates your customer’s balances.

What is the interface tables used for AR invoices, customers, and receipts for conversion
process?

Page 47 of 60
Customer interface tables:
RA_CUSTOMER_INTERFACE
RA_CONTANT_PHONES_INTERFACE
RA_CUSTOMER_BANKS_INTERFACE
RA_CUSTOMER_PROFILES_INTERFACE
RA_CUST_PAY_METHOD_INTERFACE

Invoice interface tables:


RA_INTERFACE_ERRORS – Errors in Auto Invoice Interface Data
RA_INTERFACE_LINES_ALL – Use this table to enter Header and Lines information in Auto
Invoice Interface program
RA_INTERFACE_DISTRIBUTIONS_ALL – Distribution Table in Auto Invoice Interface program
RA_INTERFACE_SALESCREDITS_ALL – Sales Credits information in Auto Invoice Interface

Following are the Validation for Auto invoice:

 AR Transaction Type Validation : Check if the Transaction type provided in data file is
defined in AR transaction types(RA_CUST_TRX_TYPES_ALL)-
 Transaction Batch Source Validation: Check if the source provided in data file is defined in
AR transaction Batch source (RA_BATCH_SOURCES_ALL).
 Invoice Currency Validation: Check if the currency provided in data file is defined in AR
Currency (FND_CURRENCIES).
 Customer Validation: Check if the Bill to Customer Number, Ship to Customer Number, Bill
to Custom Location, Ship to Customer Location provided in the data file is defined in AR
Customer (HZ_CUSTOMER_ACCOUNTS).
 Primary Sales Representative Validation: Sales representative number to be hardcode to “-3”
for “No Sales Credit.”
 Term Name : Check if the Term name provided in the data file is defined in Payment terms
(RA_TERMS)
 Validate Sales Credit Type : Sales Credit to hardcode to “Quota Sales Credit”
 Inventory Item Validation: Check if the Item provided in data file is defined in Inventory
Items (MTL_SYSTEM_ITEMS).
 Unit of Measurement validation: Check if the UOM provided is defined in
MTL_UNITS_OF_MEASURE Table
 Invoice Tax Code Validation: Check if the Tax Code provided in data file is defined in
ZX_TAX_RATES Table.
 Invoice GL Date Validation: Check if the GL Data of provided invoices is in open period.
Used ARP_UTIL.IS_GL_DATE_VALID API to validate.

Following are the base tables

HZ_PARTIES
HZ_CUST_ACCOUNTS
HZ_CUST_ACCT_SITES_ALL
HZ_CUST_SIT_USE_ALL
HZ_PARTY_SITES
HZ_LOCATIONS
HZ_PARTY_SITE_USES

Page 48 of 60
HZ_CUSTOMER_PROFILES
HZ_ORGANIZATION_PROFILES
HZ_PERSON_PROFILES

What is Auto Invoicing? Explain?


Auto Invoicing is a process of Importing Invoice related information from External / Internal
Sources. External will be your business Legacy Systems like Main Frame / AS400 or Non Oracle
ERP systems like SAP / JDE or From Custom Oracle Applications. The data is placed into Interface
tables and from there either from Application or from PL/SQL, you can call Auto Invoice Concurrent
request to validate and transfer data into AR Transaction tables. The data from these tables can be
seen when queries from Transaction Screens. Auto Invoicing is a process of creating an invoice
automatically in AR when a sales order has been shipped and closed. This process is triggered by a
concurrent request ‘AUTO INVOICE MASTER PROGRAM’. Auto invoicing is used to import the
AR invoices directly into the AR module.

What are the standard concurrent programs for auto invoice interface and customer
interfaces?
 Auto invoice Import Program — for auto invoice program
 Customer Interface Master Conc Program –> for Customer Interface

How do we segregate debit& credit transactions in Receivables and where we will do it?
Basically the debit and credit transaction are classified by the transaction class.

Whether we are defining customer in AR? If it is in AR then how are we placing the order and
how the shipment will be done?
Customers and the associated information are stored in TCA structure, which is shared across all
oracle application modules. If you add a customer in AR, it gets stored TCA underlying tables. When
you want to create an Order in Order Management, the customer LOV displays data from Record
Group that is created on TCA tables.
The basic Oracle ERP data model is the single Data model shared (integrated) by multiple
application. The owner of the creation of customer is the AR schema and is shared by other
application such as OM. These are usually called as shared entities (Supplier,Partners,Items etc)

How to Close Periods in AR?


After raising transactions and receiving the RECEIPT amount, transfer the all TRANSATIONS and
RECEIPTS to the GENERAL LEDGER. And then only close the PERIOD in AR.

Explain about Party and Customer in AR?


Party could be a person or an organization which has no business relation with your enterprise, if you
establish a sales relation with a department in a party then that particular department is your
customer.

What is the use of Transaction Flex field in Auto invoice?


Transaction flex field actually identifies the uniqueness among the multiple lines of a single Invoice

What do you mean by HZ_ in customer tables?


HZ stands for Human Zone (HZ_). Anything which is related to the human like Customer profiles,
their accounts, locations, and relationships are stored in these tables only. From release 11i TCA

Page 49 of 60
came into picture in Accounts Receivable module, where oracle has grouped all the customer
information at one place. Most important tables in TCA are-
HZ_PARTIES,
HZ_CUST_ACCOUNTS_ALL,
HZ_RELATIONSHIPS
HZ_CUST_ACCT_SITES_ALL,
HZ_CUST_SITE_USES_ALL,
HZ_LOCATIONS,
HZ_PARTY_SITES,
HZ_PARTY_SITE_USES,
HZ_CONTACT_POINTS. few to name.

What is the difference between _all, _tl, _vl, _v tables in Oracle Apps ? Also name various
other table suffix.
_ALL : Table holds all the information about different operating units. Multi-Org environment. You
can also set the client_info to specific operating unit to see the data specific to that operating unit
only.
_TL are tables corresponding to another table with the same name minus the _TL. These tables
provide multiple language support. For each item in the table without _TL there can be many rows in
the _TL table, but all with different values in the LANGUAGE column.
_B these are the BASE tables. They are very important and the data is stored in the table with all
validations. It is supposed that these table will always contain the perfect format data. If anything
happens to the BASE table data, then it is a data corruption issue.

_F these are date tracked tables, which occur in HR and Payroll. For these there are two date
columns EFFECTIVE_START_DATE and EFFECTIVE_END_DATE which together with the PK
identifies a row uniquely. The date intervals cannot overlap. Many think they are Secured data.
Guess someone from Oracle confirms.
_V tables are the views created on base tables _VL are views for multi language tables which
combines the row of the base table with the corresponding row of the _TL table where the
LANGUAGE = USERENV(’LANG’).
_S are sequences, used for finding new values for the primary key of a table.
_A are Audit Shadow Tables
_AVN and _ACN are Audit Shadow Views (when data was changed, and with what values)

How many Flex fields are there in AR and what are they?

Required Key Flex fields:


1. Territory Flex field
2. Sales Tax Location flex field

AUTO LOCKBOX

Auto Lockbox (or Lockbox) is a service that commercial banks offer corporate customers to enable
them to outsource their accounts receivable payment processing.
Page 50 of 60
Auto lockbox is a program available in Oracle Receivables which helps you import payments or
receipts. In real world, Banks would provide data files which would have information about the
payments made by customer’s. Receivable’s auto lock box program would help you in importing
information from these data files into your system

Steps for Lockbox are:

1) Import: The first step involves reading and formatting data from your bank file into AutoLockbox
tables. Basically here, a loader program loads data into AR_PAYMENT_INTERFACE_ALL table

2) Validations: The second step involves submitting the validation program which checks data in the
Auto Lockbox tables for compatibility with Receivables. Once data is validated, it is transferred into
Quick Cash tables. At this point, you can optionally query your receipts in the Quick Cash window
and change how they will be applied before submitting the final step.

This step moves the data into AR_INTERIM_CASH_RECEIPTS_ALL and


AR_INTERIM_CASH_RECEIPT_LINES_ALLtables

3) Post Quick Cash: Use the Quick Cash window to review each receipt and use the Applications
window to ensure that the application information is correct. After you approve the receipts and their
applications, run Post Quick Cash to update your customer's account balances. Match is Found or
Not Found, Status will be UNAPPLIED.
A matching number can be a transaction number, consolidated billing invoice number, sales order
number, purchase order number or another, custom defined number.

This moves the data into the AR base tables like- AR_CASH_RECEIPTS_ALL,
AR_RECEIVABLES_APPLICATIONS_ALL, AR_CASH_RECEIPT_HISTORY_ALL

4) Action: After a receipt is successfully imported into Receivables, you can reverse and reapply
them and apply any unapplied, unidentified, or on-account amounts just like a manually entered
receipt

AR invoice extract-XLA-GL

SELECT
rctd.code_combination_id ccid
,to_char(gjh.posted_date,'mon-rr') gl_period
,to_char(gjh.creation_date ,'dd/mm/rrrr hh24:mi:ss' ) gl_date
,to_char(gjh.posted_date,'dd/mm/rrrr hh24:mi:ss' ) gl_posted_date
,hp.party_name customer_name
,hca.account_number customer_number
,hps.location_id location_id
,hcpc.name profile_class_name_at_inv
,rcrt.name transaction_type

Page 51 of 60
,rbsa.name source_name
,rct.trx_number invoice_number
,rctl.customer_trx_id customer_trx_id
,to_char(rct.trx_date ,'dd/mm/rrrr hh24:mi:ss' ) invoice_date
,to_char(rct.creation_date ,'dd/mm/rrrr hh24:mi:ss' ) creation_date
,rctl.line_number line_number
,rctl.line_type line_type
,rctl.customer_trx_line_id customer_trx_line_id
,rctl.description
,rct.purchase_order purchase_order
,rctl.quantity_invoiced quantity
,rctd.acctd_amount amount
,rctd.cust_trx_line_gl_dist_id cust_trx_line_gl_dist_id
FROM gl_je_headers gjh,
gl_je_lines gjl,
gl_code_combinations gcc,
gl_periods glp,
gl_import_references imp,
xla_distribution_links xdl,
xla_ae_lines xal,
xla_ae_headers xah,
xla_events xe,
xla_transaction_entities xte,
ra_customer_trx_all rct,
ra_cust_trx_types_all rcrt,
hz_parties hp,
hz_cust_accounts hca,
gl_code_combinations_kfv cc,
ra_customer_trx_lines_all rctl,
ra_cust_trx_line_gl_dist_all rctd,
ra_batch_sources_all rbsa,
hz_customer_profiles hcp,
hz_cust_profile_classes hcpc,
hz_cust_acct_sites_all hcs,
hz_cust_site_uses_all hcsua,
hz_party_sites hps
WHERE gjh.je_header_id = gjl.je_header_id
and gjh.status = 'p'
and gcc.code_combination_id = rctd.code_combination_id
and gjh.period_name = glp.period_name
and gjh.ledger_id=(select ledger_id from gl_ledgers where short_name=p_trust_name)
and gjh.posted_date between to_date( p_from_date,'dd/mm/rrrr hh24:mi:ss' )
and to_date( p_to_date, 'dd/mm/rrrr hh24:mi:ss' )
and gjh.je_source = 'Receivables'

Page 52 of 60
and gjl.je_header_id = imp.je_header_id
and gjl.je_line_num = imp.je_line_num
and imp.gl_sl_link_id = xal.gl_sl_link_id
and imp.gl_sl_link_table = xal.gl_sl_link_table
and xal.application_id = xah.application_id
and xal.ae_header_id = xah.ae_header_id
and xah.application_id = xe.application_id
and xal.ae_header_id = xdl.ae_header_id
and xal.ae_line_num = xdl.ae_line_num
and xdl.source_distribution_id_num_1 = rctd.cust_trx_line_gl_dist_id
and xah.event_id = xe.event_id
and xe.application_id = xte.application_id
and xte.application_id = 222
and xe.entity_id = xte.entity_id
and xte.ledger_id=(select ledger_id from gl_ledgers where short_name=p_trust_name)
and xte.entity_code = 'TRANSACTIONS'
and nvl(xte.source_id_int_1,(-99)) = rct.customer_trx_id ----kuldeep(tune)
and rct.customer_trx_id = rctd.customer_trx_id
and rctd.customer_trx_line_id = rctl.customer_trx_line_id
and rct.bill_to_customer_id = hca.cust_account_id
and hp.party_id=hca.party_id
and rct.customer_trx_id = rctl.customer_trx_id
and xal.code_combination_id = cc.code_combination_id
and rct.cust_trx_type_id=rcrt.cust_trx_type_id
and rcrt.type in ('CM','INV')
and rct.batch_source_id=rbsa.batch_source_id
and hcp.cust_account_id=hca.cust_account_id
and hcs.cust_account_id=hca.cust_account_id--------for tune
and hcp.site_use_id is null
and hcp.profile_class_id=hcpc.profile_class_id
and rct.bill_to_site_use_id=hcsua.site_use_id
and hcsua.cust_acct_site_id=hcs.cust_acct_site_id
and rct.bill_to_customer_id=hcs.cust_account_id
and hcs.party_site_id=hps.party_site_id

Page 53 of 60
AR-MISCLENNEOUS-RECEIPT EXTRACT

SELECT to_char(gjh.posted_date,'mon-rr') gl_period


,acra.cash_receipt_id
,arm.name receipt_payment_method
,arc.name receipt_class
,acra.type receipt_type
,acra.receipt_number
,to_char(acra.receipt_date,'dd/mm/rrrr hh24:mi:ss' ) receipt_date
,amcda.misc_cash_distribution_id
,acra.misc_payment_source misc_payment_source
,amcda.amount misc_receipt_dist_amount
,arta.name activity_purpose
,amcda.comments
,adsa.distribution_set_name
,amcda.percent misc_receipt_percentage
,to_char(amcda.apply_date,'dd/mm/rrrr hh24:mi:ss' ) apply_date
,to_char(acra.deposit_date,'dd/mm/rrrr hh24:mi:ss' ) receipt_deposit_date
,acra.status receipt_status
,to_char(amcda.reversal_gl_date,'dd/mm/rrrr hh24:mi:ss' ) reversal_gl_date
,to_char(acra.reversal_date,'dd/mm/rrrr hh24:mi:ss' ) reversal_date
,amcda.comments misc_receipt_comments
,acra.reversal_category
,acra.reversal_reason_code
,acra.reversal_comments
,amcda.code_combination_id ccid
,arm.receipt_method_id
,arc.receipt_class_id
,adsa.distribution_set_id
FROM gl_code_combinations gcc
,gl_je_lines gjl
,gl_je_headers gjh
,gl_je_batches glb
,gl_import_references gir
,xla_ae_lines xal
,xla_ae_headers xah
,xla_distribution_links xdl
,ar_misc_cash_distributions_all amcda
,ar_distributions_all dist
,ar_cash_receipts_all acra
,ar_receivables_trx_all arta
,ar_distribution_sets_all adsa
,ar_receipt_classes arc
,ar_receipt_methods arm

Page 54 of 60
WHERE gcc.code_combination_id = gjl.code_combination_id
and gjh.posted_date between to_date( p_from_date,'dd/mm/rrrr hh24:mi:ss' )and to_date( p_to_date,
'dd/mm/rrrr hh24:mi:ss' )
and gjh.je_header_id = gjl.je_header_id
and glb.je_batch_id = gjh.je_batch_id
and gjl.status = 'p'
and gjh.actual_flag = 'a'
and gjh.ledger_id=(select ledger_id from gl_ledgers where short_name=p_trust_name) -------------
new for tune 1.6 02it389239 ar mis rec extract tuned query(24-6-15)
and gir.je_header_id = gjh.je_header_id
and gir.gl_sl_link_id = xal.gl_sl_link_id
and xah.ae_header_id = xal.ae_header_id
AND xdl.source_distribution_type = 'AR_DISTRIBUTIONS_ALL'
AND gjh.je_source = 'Receivables'
AND gjh.je_category = 'Misc Receipts'
and xdl.event_id = xah.event_id
and xah.ae_header_id = xdl.ae_header_id
and amcda.event_id = xah.event_id
and amcda.misc_cash_distribution_id = dist.source_id
AND dist.source_type = 'MISCCASH'
AND dist.code_combination_id = gjl.code_combination_id
AND acra.cash_receipt_id = amcda.cash_receipt_id
and acra.type = 'MISC'
and arta.receivables_trx_id = acra.receivables_trx_id
and acra.distribution_set_id=adsa.distribution_set_id(+)
and arc.receipt_class_id=arm.receipt_class_id
and acra.receipt_method_id=arm.receipt_method_id---214539

FA

FA_ADDITIONS_B Descriptive information about assets (base MLS table)


FA_ADJUSTMENTS Information used by the posting program to generate journal entry lines in the
general ledger
FA_ASSET_HISTORY Historical information about asset reclassifications and unit adjustments
FA_ASSET_INVOICES Accounts payable and purchasing information for each asset
FA_ASSET_KEYWORDS Asset key flexfield segment combinations
FA_LOCATIONS Location flexfield segment value combinations
FA_BOOKS Financial information of each asset
FA_BOOK_CONTROLS Control information that affects all assets in a depreciation book
FA_BOOKS_SUMMARY This table stores group assets' periodical financial information
FA_CALENDAR_PERIODS Detailed calendar information
FA_CATEGORIES_B Default financial information for asset categories (base MLS table )
FA_DEPRN_DETAIL Depreciation amounts charged to the depreciation expense account in each
distribution line

Page 55 of 60
FA_DEPRN_PERIODS Information about each depreciation period
FA_IMPAIRMENTS table stores the Impairment Transaction information.
FA_INVOICE_TRANSACTIONS Information about transactions made to invoice lines within
Oracle Assets
FA_MASS_ADDITIONS Information about assets that you want to automatically add to Oracle
Assets from another system
FA_RETIREMENTS Information about asset retirements and reinstatements
FA_TRANSACTION_HEADERS Information about all transactions performed within Oracle
Assets
Tables of Fixed Assets and Queries

Tables of Fixed Assets


=================

1- FA_DEPRN_PERIODS
2- FA_DEPRN_SUMMARY
3- FA_ADDITIONS_B
4- FA_BOOKS
5- FA_CATEGORIES_B
6- FA_DEPRN_DETAIL

ASSET CATEGORIES

SELECT DISTINCT a.segment1||'.'||a.segment2 CATEGORY,a.segment1 MAJOR_CATEGORY


, a.segment2 MINOR_CATEGORY ,
gl1.segment1||'.'||gl1.SEGMENT2||'.'||gl1.SEGMENT3||'.'||gl1.SEGMENT4||'.'||gl1.SEGMENT5
ASSET_COST ,
gl2.segment1||'.'||gl2.SEGMENT2||'.'||gl2.SEGMENT3||'.'||gl2.SEGMENT4||'.'||gl2.SEGMENT5
ASSET_COST_CLEARING
, c.DEPRN_EXPENSE_ACCT
,
gl3.segment1||'.'||gl3.SEGMENT2||'.'||gl3.SEGMENT3||'.'||gl3.SEGMENT4||'.'||gl3.SEGMENT5
DEPRN_RESERVE_ACCOUNT
, deprn_method

Page 56 of 60
, life_in_months
, (life_in_months/12) lIFE
, prorate_convention_code
FROM fa_categories a
, fa_category_book_defaults b
, fa_category_books c
, gl_code_combinations gl1
, gl_code_combinations gl2
, gl_code_combinations gl3
WHERE a.category_id = b.category_id
AND c.category_id = b.category_id
AND c.category_id = a.category_id
AND a.ENABLED_FLAG = 'Y'
AND c.asset_cost_account_ccid = gl1.code_combination_id
AND c.asset_clearing_account_ccid = gl2.code_combination_id
AND c.reserve_account_ccid = gl3.code_combination_id
AND b.book_type_code = c.book_type_code
AND c.book_type_code = 'CORP BOOK'

FA YTD Depreciation

FA For getting YTD Depreciation..etc...

SELECT fbv.book_type_code
,fab.asset_number,fab.asset_id
,fab.tag_number
,fbv.date_placed_in_service
,fab.description
,fcb.segment1||'.'||fcb.segment2 asset_category
,fcb.segment1||'.'||fcb.segment2 asset_category1
,fbv.cost asset_cost
,fbv.original_cost original_asset_cost
,fbv.life_in_months asset_life
,mvl_discoverer_fin_support.get_depreciation_dtls(fab.asset_id
,fbv.book_type_code
,fdh.distribution_id
,fdp.period_counter
,'ACCUM') accum_depreciation
,mvl_discoverer_fin_support.get_depreciation_dtls(fab.asset_id
,fbv.book_type_code
,fdh.distribution_id
,fdp.period_counter
,'YTD') ytd_depreciation
,mvl_discoverer_fin_support.get_depreciation_dtls(fab.asset_id

Page 57 of 60
,fbv.book_type_code
,fdh.distribution_id
,fdp.period_counter
,'RUN') dep_this_run
,gcc.segment2 department_no
,(SELECT ppx.full_name FROM per_people_x ppx WHERE ppx.person_id =
fdh.assigned_to AND ROWNUM = 1) custodian
,(SELECT ppx.employee_number FROM per_people_x ppx WHERE ppx.person_id
= fdh.assigned_to AND ROWNUM = 1) employee_number
,(SELECT po_number FROM fa_invoice_details_v WHERE asset_id = fbv.asset_id
AND ROWNUM = 1) po_number
,(SELECT invoice_number FROM fa_invoice_details_v WHERE asset_id =
fbv.asset_id AND ROWNUM = 1) invoice_number
,(SELECT vendor_number FROM fa_invoice_details_v WHERE asset_id =
fbv.asset_id AND ROWNUM = 1) vendor_number
,(SELECT vendor_name FROM fa_invoice_details_v WHERE asset_id =
fbv.asset_id AND ROWNUM = 1) vendor_name
,fab.serial_number
,fl.segment3||'.'||fl.segment4 location_flexfield
,fab.attribute1 tax_major_category
,fab.attribute2 tax_minor_category
,(SELECT retirement_type_code FROM fa_retirements WHERE retirement_id =
fdh.retirement_id AND ROWNUM = 1) retirement_type
,(SELECT segment1||'.'||segment2 FROM fa_asset_keywords WHERE
code_combination_id = fab.asset_key_ccid AND ROWNUM = 1) asset_key
,fdp.period_name
,fab.attribute3 acquisition_date
,fab.manufacturer_name
,fbv.retirement_pending_flag
FROM apps.fa_additions_v fab
,apps.fa_books_v fbv
,apps.fa_categories_b fcb
,apps.fa_deprn_periods fdp
,apps.fa_distribution_history fdh
,apps.gl_code_combinations gcc
,apps.fa_locations fl
WHERE 1=1
AND fab.asset_id = fbv.asset_id
AND fcb.category_id = fab.asset_category_id
AND fbv.transaction_header_id_out IS NULL
AND fdp.book_type_code = fbv.book_type_code
AND fdh.asset_id = fbv.asset_id
AND fdh.code_combination_id = gcc.code_combination_id
AND fdh.location_id=fl.location_id

Page 58 of 60
AND fbv.transaction_header_id_out IS NULL
AND fdh.transaction_header_id_out IS NULL

/
SELECT fa_additions.asset_id, disc_gl_set_of_books.set_of_books_id,
disc_gl_set_of_books.description AS set_of_books,
disc_gl_set_of_books.set_of_book_currency,
fa_additions.asset_number, fa_additions.tag_number,
fa_additions.description, fa_additions.manufacturer_name,
fa_additions.serial_number, fa_additions.model_number,
fa_categories_b.segment1, fa_categories_b.segment2,
fa_categories_b.segment3, fa_books.book_type_code,
ROUND ( fa_books.COST
* fa_distribution_history.units_assigned
/ fa_additions.current_units,
0
) COST,
fa_books.date_effective, fa_books.date_ineffective,
fa_books.date_placed_in_service, fa_books.deprn_start_date,
fa_books.original_cost, fa_additions.current_units,
fa_distribution_history.units_assigned, fa_books.life_in_months,
fa_employees.employee_number, fa_employees.NAME employee_name,
fa_locations.segment1 "STATE", fa_locations.segment2 "CITY",
fa_locations.segment3 "SITE", fa_locations.segment4 "LOCATOR",
fa_category_books.asset_cost_acct "ASSET_ACCOUNT_ID",
segment2.description AS "ASSET_ACCOUNT",
fa_book_controls.book_class, disc_ccid_dsc_mv.account_type,
disc_ccid_dsc_mv.code_combination_id, disc_ccid_dsc_mv.gl_seg1,
disc_ccid_dsc_mv.gl_seg2, disc_ccid_dsc_mv.gl_seg3,
disc_ccid_dsc_mv.gl_seg4, disc_ccid_dsc_mv.gl_seg5,
disc_ccid_dsc_mv.gl_seg6, disc_ccid_dsc_mv.gl_seg7,
disc_ccid_dsc_mv.gl_seg8, disc_ccid_dsc_mv.gl_seg9,
disc_ccid_dsc_mv.gl_seg10, disc_ccid_dsc_mv.gl_seg11,
disc_ccid_dsc_mv.gl_name_seg1, disc_ccid_dsc_mv.gl_name_seg2,
disc_ccid_dsc_mv.gl_name_seg3, disc_ccid_dsc_mv.gl_name_seg4,
disc_ccid_dsc_mv.gl_name_seg5, disc_ccid_dsc_mv.gl_name_seg6,
disc_ccid_dsc_mv.gl_name_seg7, disc_ccid_dsc_mv.gl_name_seg8,
disc_ccid_dsc_mv.gl_name_seg9, disc_ccid_dsc_mv.gl_name_seg10,
disc_ccid_dsc_mv.gl_name_seg11,
fa_books.date_placed_in_service "DATE_IN",
NULL "DATE_IN_MONTH", fa_deprn_summary.deprn_amount,
fa_deprn_summary.ytd_deprn, fa_deprn_summary.deprn_reserve,
fa_deprn_summary.deprn_source_code,
fa_deprn_summary.addition_cost_to_clear adjusted_cost,

Page 59 of 60
fa_deprn_periods.period_name
FROM apps.fa_additions fa_additions,
fa.fa_book_controls fa_book_controls,
fa.fa_books fa_books,
fa.fa_categories_b fa_categories_b,
fa.fa_category_books fa_category_books,
fa.fa_distribution_history fa_distribution_history,
gl.gl_code_combinations gl_code_combinations,
apps.fa_employees fa_employees,
fa.fa_locations fa_locations,
apps.disc_ccid_dsc_mv disc_ccid_dsc_mv,
apps.disc_segment2 segment2,
apps.disc_gl_set_of_books disc_gl_set_of_books,
fa.fa_deprn_detail fa_deprn_summary,
fa.fa_deprn_periods fa_deprn_periods
WHERE fa_books.book_type_code = fa_book_controls.book_type_code
AND fa_books.asset_id = fa_additions.asset_id
AND fa_books.date_ineffective IS NULL
AND fa_distribution_history.book_type_code = fa_books.book_type_code
AND fa_distribution_history.asset_id = fa_additions.asset_id
AND fa_distribution_history.date_ineffective IS NULL
AND fa_categories_b.category_id = fa_additions.asset_category_id
AND fa_category_books.book_type_code = fa_distribution_history.book_type_code
AND fa_category_books.category_id = fa_additions.asset_category_id
AND gl_code_combinations.code_combination_id = fa_distribution_history.code_combination_id
AND fa_employees.employee_id(+) = fa_distribution_history.assigned_to
AND fa_locations.location_id = fa_distribution_history.location_id
AND gl_code_combinations.code_combination_id = disc_ccid_dsc_mv.code_combination_id
AND segment2.SEGMENT = fa_category_books.asset_cost_acct
AND disc_gl_set_of_books.set_of_books_id = fa_book_controls.set_of_books_id
AND fa_deprn_summary.asset_id = fa_distribution_history.asset_id
AND ( fa_deprn_periods.period_counter = fa_deprn_summary.period_counter
AND fa_deprn_periods.book_type_code = fa_deprn_summary.book_type_code )
AND fa_deprn_summary.distribution_id =fa_distribution_history.distribution_id

Page 60 of 60

Das könnte Ihnen auch gefallen