I found below video very interesting so thought of sharing it. Original link to this video is
Wednesday, November 23, 2011
Friday, November 18, 2011
Quote to Sales Order cycle
Oracle Quotes offers limited functionality to create Quotes and Progress it through the Negotiation phase and finally creates Sales Order. Within Order Management we can avail simple functionality like. (Create Quote > Submit for Internal Approval > Take Customer Acceptance).
In company has complex / advance quoting needs then Oracle Sales Quoting needs to be implemented.
One more important point to be noted is data for Quote header/lines got inserted into OE_ORDER_HEADERS_ALL / OE_ORDER_LINES_ALL and same data will be used for order header /lines
Create Quote:
If you want then you can add Expiration date for the quote.
Initially quote remain in Draft status.
Submit for Internal Approval:
Once the draft is done then creator shall submit it for internal approval. This can be done from ‘Action’ button then select ‘Progress Quote’ and submit for approval.
Then the status becomes ‘Pending Internal Approval’
WorkFlow:
Remember the work flow associated to quote header only, there will be no Line level workflow associated in case of with Quote.
WF_ITEMS and WF_ITEM_ACTIVITY_STATUSES with ITEM_TYPE ='OENH' , but once Quote got approved and converted to Orders , system will end date the workflow with ITEM_TYPE ='OENH' and creates new workflow with ITEM_TYPE ='OEOH'( for order header) and OEOL (for order lines).
Internal Approval:
Now the WF is waiting for internal Approval. We can modify the WF to have some customization like send email notification to concerned person.
After the internal approval from the authorities, WF get moved further and wait for Customer Acceptance.
At this stage status of the quote becomes “Pending Customer Acceptance”.
Customer Acceptance:
After receiving confirmation from your customer you may take the appropriate action.
In our case, let’s say customer sent Acceptance. So go to ‘Actions’ button and select ‘Customer Acceptance’ option.
Here you can add details about who and when accepted the quote.
At this stage quote WF is completed and Sales Order WF starts for header as well as for order lines.
Sales Order get created automatically
Order Header Workflow will be as below
Order Line Workflow will be as below.
From this point sales order cycle starts…
Thursday, October 13, 2011
How does promotions work in Oracle EBS
Many companies need to give promotional offers to the customers. This article is related to such kind of scenarios and tries to get initial path to define promotions in system.
Discount Rule Example | |
Buy N of X, get Y at Z% off | Buy 2 (=N) pair of jeans (=X), get a sweater (=Y) at 50% (=Z) off. |
Buy N of X, get Y at Z$ off | Buy 1 (=N) suit coat (=X), get a dress shirt (=Y) for $10 (=Z) off. |
Buy N of X, get Y for Z$ | Buy 2 (=N) shirts (=X), get a pair of pants (=Y) for $10 (=Z). |
Buy N of X, get highest priced X at Z% off | Buy 3 (=N) items (=X), get 10% (=Z) off the highest priced item. X can be N of the same or different items. Item A is $19.99, item B is 15.99, item C is 10.00. Since item A is the highest priced item, $1.99 (10% of $19.99) is taken off the total. |
Buy N of X, get lowest priced X at Z% off | Buy 3 (=N) items (=X), get 10% (=Z) off the lowest priced item. X can be N of the same or different items. Item A is $19.99, item B is $15.99, item C is $10.00. Since item C is the lowest priced item, $1.00 (10% off $10.00) is taken off the total. |
Buy $N or more of X, get item Y at Z$ off | Buy $20 (=N) of Sporting Goods (=X), get $10 (=Z) off a basketball item (=Y). |
Buy $N or more of X, get Y at Z% off | Buy $20 (=N) or more of Sporting goods (=X), get 10% (=Z) off a baseball cap (=Y). |
Buy $N or more of X, get Y for Z$ | Buy $500 (=N) or more of jewelry (=X), get a pair of earrings (=Y) for $25 (=Z). |
Group Discount Example | |
Buy N of X for Z$ | Buy 2 (=N) pair of jeans (=X), get them for $50 (=Z). |
Buy N of X for Z% off | Buy 3 (=N) pair of jeans (=X), get 35% (=Z) off the total. |
Buy N of X for Z$ off | Buy 3 (=N) pair of jeans (=X), get $25 (=Z) off the total. |
Buy N or more of X for Z% off | Buy 3 (=N) or more pairs of jeans (=X), get 35% (=Z) off the total. |
Buy N or more of X for Z$ each | Buy 3 (=N) or more pairs of jeans (=X), get them for $25 (=Z). |
We will try to cover few of the above scenarios.
Note: Above scenarios are just to understand different requirements of promotions. All scenarios are not supported by Oracle applications.
Let’s start with the setup now:
Define Items.
Computer Item:
Printer Item:
Step 2: Assign the prices to those item on price list
Scenario 1:
If a customer buys computer AS54888 (Sentinel Standard Desktop) with qty more than 2 then CM76840 (Lightning Inkjet Printer) shall be give at Discount of 40%.
- Create a modifier with type Promotion
- Choose modifier as Promotional Goods
- Automatic check box shall be "yes"
- Pricing Phase "Modifiers for BOOK Event"
Click on "Define Details"
Go to Block "Additional Buy Product"
'Get Product Attribute'=Item Number and "Get product Values"= 'Item to be offered'
Get Qty= Qty to be offered, Get Price from particular Price List
Application Method = Percent and Values= Percentage of Discount (if you put 100% then it will be free)
Enter a Sales Order:
Enter the computer Item AS54888
Book Sales order:
Enter the computer Item AS54888
Book Sales order:
On Booking you will get the discounted item on sales order. This item (printer) gets populated automatically with discount of 40% (List price =300, after discount of 20% it comes to 180)
Scenario 2:
If a customer buys computer AS54888 (Sentinel Standard Desktop) with qty more than 2 then two CM76840 (Lightning Inkjet Printer) shall be give at Discount of amount 111.00. So here CM76840 has a price of 300 per unit, two units are of 600, after discount two CM76840 shall be offered at 489.00 (600.00-111.00)
Or same thing can be expressed as, two qty of CM76840 has be sold at per unit price of 244.50 (489/2).
Click on Define Details...
Check the setup by putting sale order in place…
Scenario 3:
If a customer buys computer AS54888 (Sentinel Standard Desktop) with qty more than 2 then CM76840 (Lightning Inkjet Printer) shall be give at fixed price of 199.00 per unit. So here CM76840 has a price of 300 per unit, two units are of 600 and these should be offer at 398 (199 X 2).
Click on Define Details...
Check the setup by putting sale order in place…
Scenario 2:
If a customer buys computer AS54888 (Sentinel Standard Desktop) with qty more than 2 then two CM76840 (Lightning Inkjet Printer) shall be give at Discount of amount 111.00. So here CM76840 has a price of 300 per unit, two units are of 600, after discount two CM76840 shall be offered at 489.00 (600.00-111.00)
Or same thing can be expressed as, two qty of CM76840 has be sold at per unit price of 244.50 (489/2).
Click on Define Details...
Check the setup by putting sale order in place…
Scenario 3:
If a customer buys computer AS54888 (Sentinel Standard Desktop) with qty more than 2 then CM76840 (Lightning Inkjet Printer) shall be give at fixed price of 199.00 per unit. So here CM76840 has a price of 300 per unit, two units are of 600 and these should be offer at 398 (199 X 2).
Click on Define Details...
Check the setup by putting sale order in place…
Wednesday, August 24, 2011
Dual UoM in Oracle R12
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.
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
Note:
Dual unit of measure control is available in Oracle Inventory,
Purchasing & Receiving and Order Management and Shipping .https://docs.google.com/document/d/17VOIKY48ptS3WBSBC9mV6GTf4OI-A14ZLifuR4nEufQ/pub
Wednesday, July 13, 2011
Item Orderability Rule in R12
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:
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-
- Select the Criteria (Item or Category. And Generally Available or not)
- Select criteria values (Item Number / Category Code)
- Select the Rules Level/s (by selecting any combinations of above 11 attributes)
- Select Rules Level value.