Author: mor
Date: Wed May 26 12:37:11 2010
New Revision: 948414
URL:
http://svn.apache.org/viewvc?rev=948414&view=revLog:
An alternative fix to the status of non-serialized inventory item when a return is received. This also fix an issue when a
defective inventory item is reserved against a non-serialized inventory while placing a sales order.
Bug reported by Ratnesh Upadhyay.
Modified:
ofbiz/trunk/applications/product/script/org/ofbiz/shipment/receipt/ShipmentReceiptServices.xml
Modified: ofbiz/trunk/applications/product/script/org/ofbiz/shipment/receipt/ShipmentReceiptServices.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/script/org/ofbiz/shipment/receipt/ShipmentReceiptServices.xml?rev=948414&r1=948413&r2=948414&view=diff==============================================================================
--- ofbiz/trunk/applications/product/script/org/ofbiz/shipment/receipt/ShipmentReceiptServices.xml (original)
+++ ofbiz/trunk/applications/product/script/org/ofbiz/shipment/receipt/ShipmentReceiptServices.xml Wed May 26 12:37:11 2010
@@ -99,6 +99,29 @@ under the License.
<loop count="${loops}" field="currentLoop">
<log level="info" message="receiveInventoryProduct Looping and creating inventory info - ${currentLoop}"/>
+ <!-- Status for Non serialized and Serialized inventory are different, lets make sure correct status is stored in database -->
+ <if-compare field="parameters.inventoryItemTypeId" operator="equals" value="NON_SERIAL_INV_ITEM">
+ <if-compare field="parameters.statusId" operator="equals" value="INV_DEFECTIVE"><!-- This status may come from the Receive Return Screen -->
+ <set field="parameters.statusId" value="INV_NS_DEFECTIVE"/>
+ <else>
+ <if-compare field="parameters.statusId" operator="equals" value="INV_ON_HOLD">
+ <set field="parameters.statusId" value="INV_NS_ON_HOLD"/>
+ </if-compare>
+ </else>
+ </if-compare>
+ <!-- Any other status should be just set to null, if it is not a valid status for Non Serialized inventory -->
+ <if>
+ <condition>
+ <and>
+ <not><if-compare field="parameters.statusId" operator="equals" value="INV_NS_DEFECTIVE"/></not>
+ <not><if-compare field="parameters.statusId" operator="equals" value="INV_NS_ON_HOLD"/></not>
+ </and>
+ </condition>
+ <then>
+ <set field="parameters.statusId" from-field="nullField"/>
+ </then>
+ </if>
+ </if-compare>
<!-- if there is an inventoryItemId, update it (this will happen when receiving serialized inventory already in the system, like for returns); if not create one -->
<clear-field field="serviceInMap"/>
<clear-field field="currentInventoryItemId"/>