Lets take a case Food industry:

FG Foods Ltd. sell variety of Chicken which can have different weight. The superior quality of a chicken weighs to 4 Pound (on an average) but the deviation can be ±10%. This chicken is purchased on number basis and later it is sold on Number (Each) basis as well as on weight (Pound-Lbs) basis. So here Chicken is getting transacted based on two UOM and FG Foods want to track Qty on both UoM basis.
To satisfy this requirement we need to define an item which can be tracked on two UoM, define converser rate between these UoMs.

Item Definition:
UoM Conversion:
Also define Inter-class conversion that too item specific.
1 Unit = 4 Pound

Transactions:
Lets look at the transaction below, 100 Lbs comes to 25 chickens (as per tolerance), but if it goes beyond the tolerance then Oracle will not accept it.


In this case, based on tolerance defined it will accept values for secondary UoM ±2.5 (10% of 25).
So in below transactions one line is on –ve tolerance and other is on +ve tolerance.

On-hand and Availability:

Miscellaneous Issue:
Lets try doing issue transaction based on only Secondary UoM (Each). Oracle will automatically calculate quantity in other UoM based on the conversion rate.


On-hand Qty:
In above transaction, even though we did not give value in Lbs, Oracle deducted one chicken and 4 Pounds (refer the conversion).
51-1   = 50 Each
200-4 = 196 Lbs


Price List View:
Oracle accepts different price values for different UoM as shown below, and you can sell the product on any UoM.


Sales Order Lines 68097 :
Lets sell this product based on different UoM..
Oracle will pull the price based on UoM you mentioned on the Order line, also it asks to feed the secondary qty as well. But remember the final transaction will happen based on UoM added on Order line and then other qty will be calculated.


Now Process the Order: Book > Pick Release > Pick Confirm > Ship Confirm.

Observe the above shipping transactions,
Line 1.1: even though its showing Secondary Req Qty as 12 actual Secondary Shipped Qty is 11.5 (as per the conversion), as 46Lbs of chicken comes to 11.5 (46/4)
Line 1.2: Here we did not give qty in Lbs, so oracle calculated it based on conversion and populated.
At the end of this transaction the final On-Hand shall as below:
50 – (11.5+12) =  26.5
196 – (46+48)  = 102
Item Orderability – This is new feature introduced in Oracle R12.1.1.This is the rule that user can define to restrict the items/group of item (Category) that can be ordered from the Sales Order form.

Because of the complex business scenario in the Modern time organization want to control which customer are allowed to order which product.

Consider below scenarios:
• If a company is developing customer specific items, then specific item shall be sold to specific customer only.
• Few products may be banned in specific region.
• Few items may be sold thru specific channel only. Example: Online, Distributors, franchises, Sales Executive etc.

Now Order management Provide a new utility in R12.1.1 to define the rule to restrict the Item to be sold, based on rules, this utility is name as
Item Orderability Rules. It allows user to Order the Item based on the Rules. Item Orderability rules are defined at Operating Unit (OU) Level.


Now let’s have a deeper look at Item Orderability:

Level at which rule can be built:
As of Now Oracle has provided rules to control only at 11 attributes  


01. Customer

02. Customer Class
03. Customer Category
04. Region
05. Order Type
06. Ship To
07. Bill To
08. Deliver To
09. Sales Channel
10. Sales Representative
11. End Customer
Rule can be defined based on any combination of above attributes:
Example:


 
 Suppose one rule is built based on multiple attributes as done in above example:
The OR condition is applicable when evaluating multiple conditions. In the example above, either the ‘Customer Category’ OR ‘Customer’ OR ‘Sales Channel’ is taken into consideration.

Criteria for the rule:
Criteria can be ‘Item’ or ‘Item Category’


If you select Category as a criterion then you will see “Item Categories
Codes” from the Category Set which is assigned as ‘Default Category Set’
for Order Entry functional area for that OU.

Example:
In our case ‘Order Entry’ has ‘Inv.Item’ category set assigned so we
will be able see category codes from ‘Inv.Item’ Category set only.



Item Validation Organization is referred to validate ‘Item + Category’ combination

Generally Available Flag:
We can set up rules to define when an item or item category is generally not available (the Generally Available box is unselected)
with the conditions available for that rule. For example, Item X is
generally not available, however, since you have set up conditions at
the Rule Level, it is available for a particular customer, or region or
customer class.

Conclusion:
Generally Available box is unselected: Oracle will allow putting order for Criteria + ruling combination
Generally Available box is Selected:      Oracle will not allow putting order for Criteria + Rule combination

This is illustrated in the example below:

Case 1: Unselect Generally Available

This means, Item ‘AS54999’ is generally not available for all, but you want to sell it to Customer ‘A. C. Networks’ only.

So this rule allows putting order for Customer + Item combination.

Case 2: Select Generally Available


This means, Item ‘AS54999’ is generally available but you do not want Customer ‘A. C. Networks’ to order it.
So this rule does not allow putting order for Customer + Item combination



Effect of “OM: Use Materialized View for Items LOV (Honors Item Orderability Rules)”

If the value of the profile option OM: Use Materialized View for Items LOV
(Honors Item Orderability Rules) is set to Yes, then the Ordered Item
LOV displays only those items which are based on the rules defined. The
Ordered Item LOV is then dynamically populated based on Item
Orderability Rules and the current attribute values on the line.


If the value of the profile option OM: Use Materialized View for Items LOV
(Honors Item Orderability Rules) is set to No, then the Ordered Items
LOV lists all the items of the item validation organization of the
current operating unit. This doesn’t consider the defined item
orderability rules, however if there is a defined rule that prevents the
item from being ordered, then an error message is displayed while
saving the order. You will not be able to save the order. Below is
Simple test case for Item Orderability feature.


Steps to Define the Item Orderability Rule- 

  1. Select the Criteria  (Item or Category. And Generally Available or not)
  2. Select criteria values (Item Number / Category Code)
  3. Select the Rules Level/s (by selecting any combinations of above 11 attributes)
  4. Select Rules Level value.

2.1. Intercompany Invoicing Cycle

When a sales order is entered in an operating unit, and if the shipping warehouse is part of a separate operating unit (may also belong to another SOB), then the goods can be shipped from the said shipping organization and the selling organization generates a customer invoice. Also the system automatically records an intercompany sale between the shipping organization and the selling organization by generating intercompany invoices. This is called Intercompany invoicing.

After entering the order in Selling operating unit, you can pick release and ship confirm the order from Shipping Operating unit. Then the following programs need to be run to ensure necessary Intercompany invoices are created ..

  1. Launch the Cost Manager in Inventory > Setup > Transactions > Interface Managers. If it is not active then go to Tools  and Launch Manager. Intercompany Invoices will not be generated unless this manager is active.
  2. In Shipping OU run ‘Create Intercompany AR Invoices’. Ensure that the items shipped have a price for ‘Internal Price List’.
  3. In Shipping OU run ‘Receivables AutoInvoice Program’
  4. In Selling OU run ‘Create Intercompany AP Invoices’. Ensure that the conversion rates between the functional currencies of above SOBs exist for the current date and GL period is open in both OUs.
  5. In selling OU run ‘Expense Report Import’ (Payables)

2.1.1. Transaction Steps

Create an Order in ‘Vision Operations’ OU and schedule it from D1 warehouse under ‘Singapore Distribution Centre’ OU as ..


After Pick release and shipconfirm the order, the delivery associated with the line is closed as ..

  • The Create Intercompany AR Invoices process creates invoice lines for order shipment transactions in Oracle Inventory where the shipping warehouse does not belong to the order entry operating unit.
  • The Oracle Receivables AutoInvoice program processes the records inserted into the interface tables by the Create Intercompany AR Invoices process.
  • Find the AR Invoice that has been generated in Shipping OU by querying for source ‘Intercompany’ and optionally by the Sales Order.

  • Create Intercompany AP Invoices process creates records in Payable invoices interface tables.
  • The Oracle Payables ‘Expense Report Import’ program processes the records inserted into the interface tables by the Create Intercompany AP Invoices process. All invoices created by the Create Intercompany AP Invoices program have Intercompany as their source.
  • Find the Payables Invoice that has been generated in Selling OU by querying for supplier and today’s date.

  • The customer invoice automatically gets created if the ‘Workflow background process’ is running. Find it in Selling OU by querying for the transaction source as ‘ORDER ENTRY’ and with a date range.

2.2. Set up steps

The below set-up steps are necessary for proper functioning of Intercompany invoicing cycle ..

  1. Define a customer and customer site in the selling operating unit.
  2. Define a supplier and supplier site in the shipping operating unit.
  3. Define Intercompany Relations
  4. Define price for the items in  ‘Internal Price list’

The organization itself is defined as a customer ‘Vision’, having a customer site in the selling operating unit as ..

The organization itself is defined as a supplier ‘Vision’, with a supplier site in the shipping operating unit as ..

Define Intercompany Relations as ..

Define price for the items in  ‘Internal Price list’ ..