[ https://issues.apache.org/jira/browse/OFBIZ-9339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16018704#comment-16018704 ]
Aditya Sharma commented on OFBIZ-9339: -------------------------------------- I traced the flow and it is in the code: The ShoppingCartItem constructor ensures if no itemType provided for purchase order "PRODUCT_ORDER_ITEM" is set to default value. The flow: 1. "addItem" requests invokes event "addToCart" from "ShoppingCartEvents". 2. In addToCart event, it calls addToCart() method of ShoppingCartHelper (line 639). 3. In addToCart() method, it calls addOrIncreaseItem() of ShoppingCart (line 242). 4. In addOrIncreaseItem(), it calls ShoppingCartItem.makePurchaseOrderItem() (line 575). 5. In makePurchaseOrderItem(), a new ShoppingCartItem object is created (line 198) and added to cart. 6. The public ShoppingCartItem contructor that initialises the object calls another protected constructor which contains following check (on line 731) if (UtilValidate.isEmpty(itemType)) { if (UtilValidate.isNotEmpty(_product.getString("productTypeId"))) { if ("ASSET_USAGE".equals(_product.getString("productTypeId"))) { this.itemType = "RENTAL_ORDER_ITEM"; // will create additional workeffort/asset usage records } else if ("ASSET_USAGE_OUT_IN".equals(_product.getString("productTypeId"))) { this.itemType = "RENTAL_ORDER_ITEM"; } else { this.itemType = "PRODUCT_ORDER_ITEM"; } } else { // NOTE DEJ20100111: it seems safe to assume here that because a product is passed in that even if the product has no type this type of item still applies; thanks to whoever wrote the previous code, that's a couple of hours tracking this down that I wouldn't have minded doing something else with... :) this.itemType = "PRODUCT_ORDER_ITEM"; } } else { this.itemType = itemType; } > adding product to purchase order auto assigned PRODUCT_ORDER_ITEM > ----------------------------------------------------------------- > > Key: OFBIZ-9339 > URL: https://issues.apache.org/jira/browse/OFBIZ-9339 > Project: OFBiz > Issue Type: Bug > Components: order > Affects Versions: Trunk > Reporter: Wai > > When creating a purchase order. Adding an product without specifying the > "Item Type" is automatically given value of PRODUCT_ORDER_ITEM. The permitted > values should be: ASSET_ORDER_ITEM, SUPPLIES_ORDER_ITEM, INVENTORY_ORDER_ITEM > (as shown in the dropdown) -- This message was sent by Atlassian JIRA (v6.3.15#6346)