Вы находитесь на странице: 1из 44

Oracle E-Business Suite

(O2C)

Document Content

S.N
o
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Index
Order to Cash Cycle (O2C) in Oracle Apps R12
Setup steps for executing the O2C flow with a standard item
O2C Flow with statuses at various stages
Creating Sales Order
Adding items into Inventory for placing Sales Order
Booking Sales Order
Releasing Sales Order
Sales Order - Ship confirm
Creating Invoice
Queries
Query to join OM, WSH, AR Tables
O2C Accounting Entries
Creating Receipt
Receipt Reconciliation

Page
3
4
5
6
10
13
16
19
25
28
30
30
31
38

Order to Cash Cycle (O2C) in Oracle Apps R12


The Order to Cash Process flow starts with entering the order with a standard item into
system. When you enter an order, the item are validated in oracle inventory, the price is calculated for
the items using the pricing engine; the availability of the items are checked and may be reserved.
Once all the required fields are entered on both the header and the lines, you can book the order.
When you click on the Book Order button, the API OEXUBOKB.pls, checks if the order is eligible
for booking. If eligible the order is booked and the order header status would change to booked. The
next step is the pick release with which you move the items from the warehouse to the staging area.
The next step is to ship confirm, to indicate that the items are loaded on to the carrier from the staging
area. When you run Ship Confirm, the system decrement inventory and updates sales order line status.
This information is then transferred through the Auto Invoice to Account Receivables for invoicing.
Then you sent the invoice to your customer for the items shipped and then perform
the cash management and bank reconciliations.
Order Management receives detailed item information from the Inventory application
and price list information from the Pricing application. Orders and returns can be entered manually or
imported through an EDI, CRM, or external source. Once in the system the order is ready to be pick
released and shipped, if needed by the Shipping application. It can then proceed through the Auto
Invoice program into the Oracle Receivables application to be invoiced. All of the accounting
information is transferred to the General Ledger by the Inventory and Receivables applications.
The required fields to enter on the sales order header are the customer name or number and
order type. Other values such as Ship-To Address, Bill-To Address, Shipping Method, and Price
List default. The order number is generated based on the order type. The required fields to enter on
the sales order lines are Ordered Item and Quantity. Again, based on defaulting rules and setups in
Pricing, Inventory and Shipping, the other values would default on the sales order line.

Setup steps for executing the O2C flow with a standard


item
Prior to order entry, the items should be created / defined in inventory module using the
master items screen and assigned to the shipping organization. Check the blog post for the related
setups

Add the item to the price list or create a new price list.

Transaction Type must be defined

Document Sequence must be assigned to the document category.

Customers must be defined

Salespersons must be defined

Shipping Roles should be granted to the user.

Ensure that the items are available in your shipping sub inventory or perform miscellaneous
transactions to augment the same.

O2C Flow with statuses at various stages

All possible flow statuses of the order/line:


OE_ORDER_HEADERS_ALL.flow_status_code:
Order Header (Entered)
Booked Order (Booked)
Closed Order (Closed)
OE_ORDER_LINES_ALL.flow_status_code:

Order Line (Entered)


Booked Order (Awaiting Shipping)
Pick Released(Picked/Staged)
Ship Confirmed (Shipped)
INV/OM interfaced (Fulfilled)
Close Order (Closed)

Creating Sales Order


Navigate to: Order Management Super User, Vision Operations (USA)

Create Sales Order with Customer and Lines details

If there is Less Availability of Quantity on Hand, Do the following Process.

Adding items into Inventory for placing Sales Order

10

11

12

After successful addition, Go back to Order Management Super User and Continue
the Sales order Process

13

Booking Sales Order

14


Check if the order lines are scheduled or not. If any of the order line is in BOOKED status, it
means that the order line is not yet scheduled.

15


Run the Schedule Order concurrent program to schedule the order. After the concurrent
program is scheduled the order line will move to Awaiting Shipping status.

Still if the order lines do not go to Awaiting Shipping, check for any holds on the order line/
header. Release the holds (if any) and re-run the Schedule Order program.

You can even schedule the order line in the following way: Right click on the order line
and progress the line to schedule it. Check the OM scheduling related setups
Order tables:
OE_ORDER_LINES_ALL.visible_demand_flag: visible_demand_flag= Yes lines will be made
available as Demanded to Planning
Shipping tables: The shipping tables get populated after order scheduling.
WSH_DELIVERY_DETAILS.released_status: monitors the shipping process of the order line
WSH_DELIVERY_ASSIGNMENTS: Assigns delivery details to a delivery and/or a parent delivery
detail.
Once the order is booked from the application, following changes occur in the backend
OE_ORDER_HEADERS_ALL (flow_status_code as BOOKED, booked_flag updated to Y)
OE_ORDER_LINES_ALL (flow_status_code as AWAITING_SHIPPING, booked_flag updated Y)
Since the order is now booked, delivery details of the order are created in
WSH_DELIVERY_DETAILS table. WSH_DELIVERY_DETAILS has delivery lines and LPNs.
OOL.line_id = WDD.source_line_id
These delivery details information can been viewed form Shipping Transactions Form and
the delivery status in the application will be as Ready to Release
WSH_DELIVERY_DETAILS.released_status =R
WSH_DELIVERY_DETAILS.Release_Status can have any of the below valid values
WSH_DELIVERY_ASSIGNMENTS (WDA) assigns delivery details to a delivery and/or a parent
delivery detail (LPN).
WDA.delivery_detail_id = WDD.delivery_detail_id
WSH_DELIVERY_ASSIGNMENTS.delivery_id will be NULL as still pick release operation is
not performed as final delivery is not yet created.
At the same time when order is booked Demand interface program is triggered in the background
and demand of the item with specified quantity is created and these demand information is stored in
MTL_DEMAND.
MTL_DEMAND.demand_source_line = OOL.line_id

16

Releasing Sales Order

Navigate to the Shipping Transaction Form (Shipping Transactions)


Enter the following in the Query Manager window and click Find
From Order Number = 66463 To Order Number = 66463

You can find the data in Shipping transaction screen (WSH shipping tables) only
when order is scheduled.

On the Shipping Transaction Form selects Launch Pick Release from the Action menu
and click on GO button.

If it is already Backordered then select Backordered, or else select unreleased

17

18


If Auto Pick confirm is not selected while pick release, then we have to manually do the
transact move order process. In fact pick confirm also triggers the transact move order process in
which the inventory is moved from item sub inventory to staging area.
Order line status becomes Picked on Order and Staged/Pick Confirmed on Shipping Form.
MTL_MATERIAL_TRANSACTIONS_TEMP (Record gets deleted from here and gets posted to
MTL_MATERIAL_TRANSACTIONS)
OE_ORDER_LINES_ALL.flow_status_code =PICKED
MTL_MATERIAL_TRANSACTIONS is updated with Sales Order Pick Transaction
MMT.trx_source_line_id = OOL.line_id
MTL_TRANSACTION_ACCOUNTS is updated with accounting information
WSH_DELIVERY_DETAILS. released_status=Y (Released)
WSH_DELIVERY_ASSIGNMENTS, MTL_ONHAND_QUANTITIES are updated accordingly
Note: Pick Confirm step can be eliminated if Auto Pick Confirm is selected as YES while
performed manual pick release. If Pick release is done through shipping transactions form and if you
want to perform auto pick confirm then picking rules setup has to be done.

19

Sales Order - Ship confirm

Navigate to the Shipping Transaction Form (Shipping Transactions)

Enter the following in the Query Manager window and click Find
From Order Number = 66463 To Order Number = 66463

20


On the Shipping Transaction Form navigate to the Delivery Tab and select Ship Confirm from
the Action menu and click on GO button. Ships confirm process triggers the Interface Trip Stops
concurrent program.
o OE_ORDER_LINES_ALL.flow_status_code =SHIPPED
o WSH_DELIVERY_DETAILS. released_status=C (Shipped)
o Data from MTL_TRANSACTIONS_INTERFACE is moved to
MTL_MATERIAL_TRANACTIONS and MTL_MATERIAL_TRANSACTIONS is updated with
Sales Order Issue transaction.
o Data is deleted from MTL_DEMAND, MTL_RESERVATIONS and WSH_NEW_DELIVERIES
o Item reduced from MTL_ONHAND_QUANTITIES
MTL_TRANSACTION_ACCOUNTS is updated with accounting information.
Following are the pick release status:
Table: WSH_DELIVERY_DETAILS
Column: RELEASED_STATUS
Possible Values:
B: Backordered- Line failed to be allocated in Inventory
C: Shipped -Line has been shipped
D: Cancelled -Line is Cancelled
N: Not Ready for Release -Line is not ready to be released
R: Ready to Release: Line is ready to be released
S: Released to Warehouse: Line has been released to Inventory for processing
X: Not Applicable- Line is not applicable for Pick Release
Y: Staged- Line has been picked and staged by Inventory

21

22

Verify the details on the Confirm Delivery window and click OK and close the
window.

23

24


The Interface Trip Stop (ITS) will be trigger at the time of Shipping if check box Defer
Interface is not check. ITS can also be executed from concurrent request.

25

Interface Trip Stop has two main components:


1. Update the Order Management Data (oe_order_lines_all)
2. Trigger the Inventory Interface (to Update the Inventory tables)

ITS updates the following fields on oe_order_lines_all table:


Shipped_quantity
Shipping_quantity
Actual_shipment_date

Inventory Interface will be trigger only if the first part, that means related to OM has
successfully completed and flag OE_INTERFACED_FLAG = Y on WSH_DELIVERY_DETAILS.
If value of this flag is N/P then Inventory Interface will never be triggered. And even if you try to
submit the Inventory Interface from SRS, delivery detail with oe_interfaced_flag =N will never be
picked up.
oe_interfaced_flag = Y -- signifies ITS has interfaced shipping data to OM
inv_interfaced_flag = Y -- signifies ITS has interfaced shipping data to INV
Navigate to Shipping Interfaces window (Shipping Interfaces Run)
Select the Interface Trip Stop - SRS Program from the LOVs
On the parameters window enter
Mode = All
Click on the OK button and then on the Submit button:

Creating Invoice

Navigate to the Run AutoInvoice window, (Interfaces AutoInvoice)


Select the AutoInvoice Master Program from the LOV
On the parameters window enter
Invoice Source = ORDER ENTRY
Default Date = Enter Todays Date
(Low) Sales Order Number = 66463

26

(High) Sales Order Number = 66463


Then click OK and Submit button.

Next, Invoice will be auto created.


To check this, follow these steps

27

28


Navigate to the Additional Line Information window, (Orders, Returns Order Organizer)

On the Find Order window, query your order number = 66413

On the Order Organizer window, navigate to Lines Tab and click on Actions button and select
the Additional Line information and click OK.
On the Additional Line Information window, navigate to Invoices / Credit Memos Tab and click on
the Invoice Details button. This would open Transactions window, where you can see the invoice
details.

Queries
SELECT*FROMOE_ORDER_HEADERS_ALLWHEREHEADER_ID=63399;
SELECT*FROMOE_ORDER_LINES_ALL;
SELECT*FROMMTL_SYSTEM_ITEMS_BWHEREINVENTORY_ITEM_ID=201AND
ORGANIZATION_ID=889;
SELECT*FROMOE_ORDER_HEADERS_ALLWHEREORDER_NUMBER=66463;
SELECT*FROMOE_ORDER_LINES_ALLWHEREHEADER_ID=190657;
/*Formattedon0301201416:06:51(QP5v5.115.810.9015)*/
SELECTHEADER_ID,
ORG_ID,
ORDER_TYPE_ID,
FLOW_STATUS_CODE,
TRANSACTIONAL_CURR_CODE,
SHIPPING_METHOD_CODE,
SHIP_FROM_ORG_ID,
SHIP_TO_ORG_ID
FROMOE_ORDER_HEADERS_ALL

29

WHEREORDER_NUMBER=66463;

/*Formattedon0301201416:07:32(QP5v5.115.810.9015)*/
SELECTORDERED_ITEM,
INVENTORY_ITEM_ID,
PRICING_QUANTITY,
ORDERED_QUANTITY,
FLOW_STATUS_CODE,
UNIT_SELLING_PRICE_PER_PQTY
FROMOE_ORDER_LINES_ALL
WHERELINE_ID=388594;

SELECT*FROMWSH_DELIVERY_DETAILSWHERESOURCE_HEADER_ID=190657;
/*Formattedon0301201416:12:40(QP5v5.115.810.9015)*/
SELECTDELIVERY_DETAIL_ID,
SOURCE_HEADER_ID,
SOURCE_LINE_ID,
SOURCE_CODE,
CUSTOMER_ID,
INVENTORY_ITEM_ID,
ITEM_DESCRIPTION,
SHIP_FROM_LOCATION_ID,
SHIP_TO_LOCATION_ID,
MOVE_ORDER_LINE_ID,
REQUESTED_QUANTITY,
SHIPPED_QUANTITY,
SUBINVENTORY,
RELEASED_STATUS,
SHIP_METHOD_CODE,
CARRIER_ID
FROMWSH_DELIVERY_DETAILS
WHERESOURCE_HEADER_ID=190657;

/*Formattedon0301201416:18:32(QP5v5.115.810.9015)*/
SELECTDELIVERY_ASSIGNMENT_ID,
DELIVERY_ID,
PARENT_DELIVERY_ID,
DELIVERY_DETAIL_ID,
PARENT_DELIVERY_DETAIL_ID,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
ACTIVE_FLAG,
TYPE
FROMWSH_DELIVERY_ASSIGNMENTS
WHEREDELIVERY_DETAIL_ID=3963468;

SELECT*FROMWSH_NEW_DELIVERIES;
select*frommtl_material_transactionswheretransaction_date>sysdate1
select*frommtl_transaction_typeswheretransaction_type_id=52
select*fromoe_order_headers_allwhereorder_number='66463'
10037508InvoiceNumber

30

Query to join OM, WSH, AR Tables


SELECTooh.order_number
,ool.line_id
,ool.ordered_quantity
,ool.shipped_quantity
,ool.invoiced_quantity
,wdd.delivery_detail_id
,wnd.delivery_id
,rctl.interface_line_attribute1
,rctl.interface_line_attribute3
,rctl.interface_line_attribute6
,rct.org_id
,rct.creation_date
,trx_number
,rctl.quantity_ordered
,rct.interface_header_context
FROMoe_order_headers_allooh
,oe_order_lines_allool
,wsh_delivery_detailswdd
,wsh_new_deliverieswnd
,wsh_delivery_assignmentswda
,ra_customer_trx_allrct
,ra_customer_trx_lines_allrctl
WHEREooh.header_Id=ool.header_id
ANDwdd.source_header_id=ooh.header_id
ANDwdd.delivery_detail_Id=wda.delivery_detail_id
ANDwda.delivery_id=wnd.delivery_id
ANDrctl.interface_line_attribute1=to_char(ooh.order_number)
ANDrctl.interface_line_attribute6=to_char(ool.line_id)
ANDrctl.interface_line_attribute3=to_char(wnd.delivery_id)
ANDrctl.customer_trx_id=rct.customer_trx_id
ANDrct.interface_header_context='ORDERENTRY'

31

O2C Accounting Entries

Creating Receipt
Navigation Path: Receivables, Vision Operations
Transactions > Transactions.
Query for the Sales Order number 66463 by inputting the Value of the Sales order number in the
reference field. Sales Invoice 10037508 is created.

32

Click on Line Items to view the Details of the Lines.

We have to receive Money against the Invoice Created above.


Navigation Path
Receivables, Vision Operations
Receipts > Receipts

33

Click on the form and enter a Receipt for the Sales Invoice created.
Navigation Path: Receivables, Vision Operations
Receipts > Receipts
Enter a Receipt number. The Currency field is defaulted is defaulted from Functional currency and the
Receipt Date and GL Date are defaulted from System Date and choose the Payment method of
Manual Remittance.
Enter in Transaction Number field 10037508, which is the Sales Invoice number against which cash is
received and Click on the Applications Button.

34

We can go to Collections Form and view the amount due from the customer.
Navigation Path: Receivables, Vision Operations
Select Account Details

35

Click on the Account Details form and enter the Customer number 2239 in the number field. Click on
the Find Button

36

Next, we have to remit the check we have received from Business World
Navigation Path: Receivables, Vision Operations
Receipts > Remittance

Click on the Remittances Form and enter the following details

37

Remittances Form opens and Currency, Batch Date, GL Date and Remittance method defaults. Enter
the Payment method Manual Remittance and choose the Bank Account Number from the List of
Values. Click on Auto Create Button

Create Remittance Batch Window Opens and enter the Receipt Number 797979 and the Customer
Number 1608 and enable the Create, Approve and Format check box.
Click on OK Button and a message pops up Submit 1 Batches for Format.
Click on Yes Button.

38

This Generates a Concurrent request and generates the Automatic Remittances Execution Report.
Automatic Receipts/Remittances Execution Report

Print Remittances

Now, You go to Receipts screen and Query for the Receipt Number 797979, the status of the Receipt
might have changed from Confirmed to remitted.
Navigation Path: Receivables, Vision Operations
Receipts > Receipts
Query for Receipt number 797979

39

Receipt Reconciliation
Next, we need to clear the Receipt in Cash Management.
Navigation Path: Cash Management, Vision Operations
Bank Statements > Bank Statements and Reconciliation

40

Click on New Button.

41

Bank Statement Line Window Opens up. Enter the Line Number 1 and choose the Type as Receipt
and enter the amount as 701.96 and save the record. Close the Window.

Next Step is to choose the Receipt advice and reconcile with the Bank Statement we created.
Navigation Path: Cash Management, Vision Operations
Bank Statements > Manual Clearing > Clear Transactions

Click on the Clear Transactions form and enter the following.

42

Find Transactions Window opens up and the radio button detail is enabled and uncheck the Payment
and Miscellaneous check box. Click on the Find Button.

Clear transactions Form opens up and enable the check box on left-hand side for the receipt number
797979 and click on clear Transaction. This will clear the Transaction and reconcile the Transactions
with the bank Statement.

Now, Log on to receivables Responsibility and check the status of the Receipt 797979.

43

This will have the Status of cleared.


Navigation Path: Receivables, Vision Operations
Receipts > Receipts
Query for Receipt Number 797979

SELECT*FROMOE_ORDER_HEADERS_ALLWHEREORDER_NUMBER=66463;
SELECT*FROMOE_ORDER_LINES_ALLWHEREHEADER_ID=190657;
SELECT*FROMWSH_DELIVERY_DETAILSWHERESOURCE_HEADER_ID=190657;

SELECT*FROMWSH_NEW_DELIVERIESWHEREDELIVERY_ID=3774384;
SELECT*FROMWSH_DELIVERY_ASSIGNMENTSWHEREDELIVERY_DETAIL_ID=3963468;
SELECT*FROMMTL_MATERIAL_TRANSACTIONSWHERETRANSACTION_ID=23607094;
SELECT*FROMMTL_TRANSACTION_TYPESWHERETRANSACTION_TYPE_ID=52;
SELECT*FROMRA_CUSTOMER_TRX_ALLWHERETRX_NUMBER='797979';
SELECT*FROMAR_PAYMENT_SCHEDULES_ALLWHERECREATED_BY=1013427;
SELECT*FROMAR_CASH_RECEIPTS_ALLWHERECREATED_BY=1013427;

44

Вам также может понравиться